<!--
  Copyright (c) 2011, 2012, 2013, 2014 Red Hat, Inc.
  All rights reserved.
  This program is made available under the terms of the
  Eclipse Public License v1.0 which accompanies this distribution,
  and is available at http://www.eclipse.org/legal/epl-v10.html
  
  Contributors:
  	Red Hat, Inc. - initial API and implementation
-->
<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>org.eclipse.bpmn2.modeler.examples.plugins</groupId>
	<artifactId>org.eclipse.bpmn2.modeler.examples.plugins.parent</artifactId>
    <version>1.2.0-SNAPSHOT</version>
    <relativePath>../pom.xml</relativePath>
  </parent>

  <groupId>org.eclipse.bpmn2.modeler.examples.plugins</groupId>
  <artifactId>org.eclipse.bpmn2.modeler.examples.customtask</artifactId>
  <version>1.2.0-SNAPSHOT</version>
  <packaging>eclipse-plugin</packaging>
  <name>BPMN2 Modeler Example Plug-in: EMF Model</name>
  <description>BPMN2 Modeler Runtime Example Plug-in using EMF extension model</description>
</project>
