blob: 7a5e011adc7a2b99559397f66aafeb828976e2ae [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="query"
nsURI="http://www.eclipse.org/MoDisco/infra/query/0.8.incubation" nsPrefix="query">
<eClassifiers xsi:type="ecore:EClass" name="ModelQuerySet">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="ModelQuerySet is the root of query model. One root per query model is expected."/>
</eAnnotations>
<eOperations name="getQuery" eType="#//ModelQuery">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="ModelQuerySet::getQuery(EString) returns the contained ModelQuery having the requested name."/>
</eAnnotations>
<eParameters name="name" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="associatedMetamodels" upperBound="-1"
eType="ecore:EClass platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EPackage">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="ModelQuerySet::associatedMetamodels points to the meta-models used by the contained queries."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="ModelQuerySet::name must be unique (in the Eclipse platform) and equal to the containing file name. We recommend to use a name prefix with a name space, for example: org.eclipse.modisco.example1.querySet1."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isEditable" lowerBound="1"
eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="ModelQuerySet::isEditable is true if the query can be edited. If the query is stored into a compiled file ModelQuerySet::isEditable is false."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="queries" upperBound="-1"
eType="#//ModelQuery" containment="true" eOpposite="#//ModelQuery/modelQuerySet">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="ModelQuerySet::queries refers to the contained queries."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ModelQuery" abstract="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="ModelQuery is an abstract class representing a query."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"
iD="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="ModelQuery::name is the query name. In each query set the query names must be unique."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="returnType" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EClassifier">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="ModelQuery::returnType is an ecore::DataType representing the query return type."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="scope" upperBound="-1"
eType="ecore:EClass platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EClass">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="ModelQuery::scope is the set of type on which the query is applicable. Those types are represented by ecore::DataType instances"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="modelQuerySet" eType="#//ModelQuerySet"
eOpposite="#//ModelQuerySet/queries"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
eType="#//ModelQueryParameter" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="ModelQuery::parameters a set of ModelQueryParameter instance describing the query parameters."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isExternalContextDependent"
eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean"
defaultValueLiteral="false">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="ModelQuery::isExternalContextDependent must be true if two evaluations of the same query with the same context and parameters can return different results."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="upperBound" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EInt"
defaultValueLiteral="1"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="lowerBound" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EInt"
defaultValueLiteral="0"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="JavaModelQuery" eSuperTypes="#//ModelQuery">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="JavaModelQuery is a sub class of ModelQuery which points to a Java implemented query."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="implementationClassName"
eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="JavaModelQuery::implemenationClassName contains the qualified name of the class implementing the query. This class must be a sub class of org.eclipse.modisco.infra.query.core.java.IJavaModelQuery. The Java implementation class must be stored in the same plug-in (or plug-in project) than the query model."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ModelQueryParameter">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="ModelQueryParameter is a class representing the query parameters."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"
iD="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="ModelQueryParameter::name is the parameter name. In each query the parameter names must be unique."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EClassifier">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="ModelQueryParameter::type is an ecore::DataType representing the query parameter type."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="upperBound" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EInt"
defaultValueLiteral="1"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="lowerBound" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EInt"
defaultValueLiteral="0"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="OCLModelQuery" eSuperTypes="#//ModelQuery">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="query" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="OCLModelQuery::query is the OCL query string."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eSubpackages name="runtime" nsURI="http://www.eclipse.org/MoDisco/infra/properties/query/runtime/0.8.unstable"
nsPrefix="runtime">
<eClassifiers xsi:type="ecore:EClass" name="ModelQueryContext">
<eStructuralFeatures xsi:type="ecore:EReference" name="selectedModelElements"
upperBound="-1" eType="ecore:EClass platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EObject"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="selectedModels" upperBound="-1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EResource"
transient="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ModelQueryParameterValue">
<eStructuralFeatures xsi:type="ecore:EReference" name="parameter" lowerBound="1"
eType="#//ModelQueryParameter"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ModelQueryResult">
<eStructuralFeatures xsi:type="ecore:EReference" name="source" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EObject"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EJavaObject"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="exception" eType="#//runtime/JavaException"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="JavaException" instanceClassName="java.lang.Exception"/>
</eSubpackages>
</ecore:EPackage>