<!--
  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.4.Final</version>
  </parent>

  <groupId>org.eclipse.bpmn2.modeler</groupId>
  <artifactId>org.eclipse.bpmn2.modeler.runtime.jboss.jbpm5</artifactId>
  <version>1.0.4.Final</version>
  <packaging>eclipse-plugin</packaging>
  <name>BPMN2 Modeler jBPM Runtime</name>
  <description>BPMN2 Modeler Runtime Specialization for JBoss jBPM</description>
</project>
