<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.eclipse.qvto-tests</groupId>
  <artifactId>org.eclipse.qvto.tests-folder</artifactId>
  <version>3.10.0-SNAPSHOT</version>
  <packaging>pom</packaging>
  <parent>
    <groupId>org.eclipse.qvto</groupId>
    <artifactId>org.eclipse.qvto.releng.tycho</artifactId>
    <version>3.10.0-SNAPSHOT</version>
    <relativePath>../releng/org.eclipse.qvto.releng.tycho</relativePath>
  </parent>

  <modules>
    <module>org.eclipse.m2m.tests.qvto.deployedTransfProject</module>
    <module>org.eclipse.m2m.tests.qvto.pluginProject</module>
    <module>org.eclipse.m2m.tests.qvto.transformationProject</module>
    <module>org.eclipse.m2m.tests.qvt.oml</module>
    <module>org.eclipse.m2m.tests.qvt.oml.ui</module>
  </modules>
</project>