<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

    <!--

        Licensed to the Apache Software Foundation (ASF) under one or more
        contributor license agreements.  See the NOTICE file distributed with
        this work for additional information regarding copyright ownership.
        The ASF licenses this file to You under the Apache License, Version 2.0
        (the "License"); you may not use this file except in compliance with
        the License.  You may obtain a copy of the License at

           http://www.apache.org/licenses/LICENSE-2.0

        Unless required by applicable law or agreed to in writing, software
        distributed under the License is distributed on an "AS IS" BASIS,
        WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
        See the License for the specific language governing permissions and
        limitations under the License.
    -->

    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>org.apache.servicemix</groupId>
        <artifactId>servicemix-pom</artifactId>
        <version>5</version>
    </parent>

    <groupId>org.apache.servicemix.specs</groupId>
    <artifactId>specs</artifactId>
    <packaging>pom</packaging>
    <version>2.10-SNAPSHOT</version>
    <name>Apache ServiceMix :: Specs</name>

    <!-- This pom is not supposed to be released, it's just the list of next specs modules we plan to include in next release cycle -->

    <modules>
        <module>specs-pom</module>
        <module>locator</module>
        <module>activator</module>
        <module>saaj-api-1.3</module>
        <module>stax-api-1.0</module>
        <module>stax-api-1.2</module>
        <module>jain-sip-api-1.2</module>
        <module>jain-sip-api-1.2.1</module>
        <module>jaxb-api-2.0</module>
        <module>jaxb-api-2.1</module>
        <module>jaxb-api-2.2</module>
        <module>jaxp-api-1.3</module>
        <module>jaxp-api-1.4</module>
        <module>jaxws-api-2.0</module>
        <module>jaxws-api-2.1</module>
        <module>jaxws-api-2.2</module>
        <module>jbi-api-1.0</module>
        <module>scripting-api-1.0</module>
        <module>jsr250-1.0</module>
        <module>jsr311-api-0.8</module>
        <module>jsr311-api-1.0</module>
        <module>jsr311-api-1.1</module>
        <module>jsr311-api-1.1.1</module>
        <module>jsr339-api-m10</module>
        <module>jsr339-api-m13</module>
        <module>jsr339-api-rc3</module>
        <module>jsr339-api-2.0</module>
        <module>jsr339-api-2.0.1</module>
        <module>javamail-api-1.4</module>
        <module>activation-api-1.1</module>
        <module>annotation-api-1.2</module>
        <module>java-persistence-api-1.1.1</module>
        <module>java-persistence-api-2.0</module>
        <module>jsr303-api-1.0.0</module>
        <module>jsr303-api-1.1.0</module>
        <module>jcr-api-2.0</module>
        <module>jsr370-api-m1</module>
        <module>jsr370-api-m4</module>
        <module>jsr370-api-m5</module>
        <module>jaxrs-api-2.1</module>
    	<module>json-api-1.1</module>
    </modules>

</project>
