<?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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>net.sf.taverna</groupId>
        <artifactId>parent</artifactId>
        <version>0.2.2011-02-17</version>
    </parent>
    <prerequisites>
        <maven>2.2.1</maven>
    </prerequisites>
    <groupId>uk.org.taverna.databundle</groupId>
    <artifactId>databundle</artifactId>
    <version>0.3.2</version>
    <name>Databundle API</name>
    <description>API for dealing with Data Bundles</description>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <scufl2.version>0.13.1</scufl2.version>
        <scufl2.wfdesc.version>0.3.5</scufl2.wfdesc.version>
	<robundle.version>0.3.1</robundle.version>
	<jena.version>2.11.0</jena.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.apache.jena</groupId>
            <artifactId>jena-arq</artifactId>
	    <version>${jena.version}</version>
        </dependency>
        <dependency>
            <groupId>uk.org.taverna.scufl2</groupId>
            <artifactId>scufl2-rdfxml</artifactId>
            <version>${scufl2.version}</version>
        </dependency>
        <dependency>
            <groupId>uk.org.taverna.scufl2</groupId>
            <artifactId>scufl2-t2flow</artifactId>
            <version>${scufl2.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.purl.wf4ever</groupId>
            <artifactId>scufl2-wfdesc</artifactId>
            <version>${scufl2.wfdesc.version}</version>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.purl.wf4ever.robundle</groupId>
            <artifactId>robundle</artifactId>
	    <version>${robundle.version}</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.4</version>
            <scope>test</scope>
        </dependency>


        <dependency>
            <groupId>commons-configuration</groupId>
            <artifactId>commons-configuration</artifactId>
            <version>1.9</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.felix</groupId>
                <artifactId>maven-bundle-plugin</artifactId>
                <extensions>true</extensions>
            </plugin>
        </plugins>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.felix</groupId>
                    <artifactId>maven-bundle-plugin</artifactId>
                    <version>2.3.7</version>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>

    <scm>
		<connection>scm:git:git://github.com/myGrid/databundle.git</connection>
		<developerConnection>scm:git:ssh://git@github.com/myGrid/databundle.git</developerConnection>
		<url>https://github.com/myGrid/databundle/</url>
      <tag>HEAD</tag>
  </scm>
    <licenses>
        <license>
            <name>GNU Lesser General Public License 2.1</name>
            <url>http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt</url>
            <distribution>repo</distribution>
        </license>
    </licenses>
    <repositories>
        <repository>
            <id>mygrid-repository</id>
            <name>myGrid Repository</name>
            <url>http://www.mygrid.org.uk/maven/repository</url>
            <releases />
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
        <repository>
            <releases>
                <enabled>false</enabled>
            </releases>
            <snapshots />
            <id>mygrid-snapshot-repository</id>
            <name>myGrid Snapshot Repository</name>
            <url>http://www.mygrid.org.uk/maven/snapshot-repository</url>
        </repository>

    </repositories>

    <packaging>bundle</packaging>
</project>
