<!--
  Copyright (c) 2011, 2012, 2013 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>
    <artifactId>org.eclipse.bpmn2.modeler.parent</artifactId>
    <groupId>org.eclipse.bpmn2.modeler</groupId>
    <version>1.0.5.Final</version>
  </parent>

  <groupId>org.eclipse.bpmn2.modeler</groupId>
  <artifactId>org.eclipse.bpmn2.modeler.runtime.example</artifactId>
  <version>1.0.5.Final</version>
  <packaging>eclipse-plugin</packaging>
  <name>Example Plug-ins</name>
  <description>BPMN2 Modeler Runtime Example Plug-ins</description>
</project>
