blob: a4f95318daf34365ad5937d89469c5a26baf158d [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="functionblock" nsURI="http://www.eclipse.org/vorto/metamodel/Functionblock"
nsPrefix="functionblock">
<eClassifiers xsi:type="ecore:EClass" name="FunctionblockModel">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="functionblock" eType="#//FunctionBlock"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="elements" upperBound="-1"
eType="#//Entity" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="enums" upperBound="-1"
eType="#//Enum" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="FunctionBlock">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="displayname" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="vendor" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="category" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="version" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="configuration" eType="#//FBFeature"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="status" eType="#//FBFeature"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="fault" eType="#//FBFeature"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="features" upperBound="-1"
eType="#//Operation" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="events" upperBound="-1"
eType="#//Event" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="FBFeature">
<eStructuralFeatures xsi:type="ecore:EReference" name="properties" upperBound="-1"
eType="#//Property" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="PrimitiveType">
<eLiterals name="string" literal="string"/>
<eLiterals name="int" value="1" literal="int"/>
<eLiterals name="float" value="2" literal="float"/>
<eLiterals name="boolean" value="3" literal="boolean"/>
<eLiterals name="datetime" value="4" literal="dateTime"/>
<eLiterals name="double" value="5" literal="double"/>
<eLiterals name="long" value="6" literal="long"/>
<eLiterals name="short" value="7" literal="short"/>
<eLiterals name="base64Binary" value="8" literal="base64Binary"/>
<eLiterals name="byte" value="9" literal="byte"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ObjectType">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Property">
<eStructuralFeatures xsi:type="ecore:EReference" name="presence" eType="#//Presence"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="propName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Entity" eSuperTypes="#//ObjectType">
<eStructuralFeatures xsi:type="ecore:EReference" name="superType" eType="#//Entity"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="properties" eType="#//FBFeature"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Presence">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="mandatory" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="optional" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PrimitiveProperty" eSuperTypes="#//Property">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="#//PrimitiveType"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="Constraints" upperBound="-1"
eType="#//Constraint" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ObjectProperty" eSuperTypes="#//Property">
<eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//ObjectType"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="ConstraintIntervalType">
<eLiterals name="min" literal="MIN"/>
<eLiterals name="max" value="1" literal="MAX"/>
<eLiterals name="strlen" value="2" literal="STRLEN"/>
<eLiterals name="regex" value="3" literal="REGEX"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Constraint">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="#//ConstraintIntervalType"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="constraintValues" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Operation">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="methodName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="params" upperBound="-1"
eType="#//Parameter" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="returnType" eType="#//ReturnType"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ReturnType">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ReturnObjectType" eSuperTypes="#//ReturnType">
<eStructuralFeatures xsi:type="ecore:EReference" name="returnType" eType="#//ObjectType"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ReturnPrimitiveType" eSuperTypes="#//ReturnType">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="returnType" eType="#//PrimitiveType"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Parameter">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="paramName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ObjectParam" eSuperTypes="#//Parameter">
<eStructuralFeatures xsi:type="ecore:EReference" name="paramType" eType="#//ObjectType"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PrimitiveParam" eSuperTypes="#//Parameter">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="paramType" eType="#//PrimitiveType"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Enum" eSuperTypes="#//ObjectType">
<eStructuralFeatures xsi:type="ecore:EReference" name="enums" upperBound="-1"
eType="#//EnumLiteral" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="EnumLiteral">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="literal" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Event">
<eStructuralFeatures xsi:type="ecore:EReference" name="feature" eType="#//FBFeature"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
</ecore:EPackage>