<?xml version="1.0"?>
<!--
/*
 * Copyright 2001-2004 The Apache Software Foundation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
-->

<project>
  <extend>../../../project.xml</extend>
  <id>axis2-xml-soap</id>
  <name>SOAP module</name>
  <package>axis2.xml.soap.*</package>
  <description>SOAP project.</description>
  <shortDescription>SOAP project</shortDescription>

  <dependencies>
     <!--dependency>
        <groupId>j2ee</groupId>
        <artifactId>j2ee</artifactId>
        <version>1.3.1</version>
     </dependency-->
    <!--dependency>
        <groupId>axis2</groupId>
        <artifactId>libaxis2-xml-guththila-nar</artifactId>
        <version>0.0</version>
        <type>so</type>
        </dependency-->

  </dependencies>
  
</project>
