Xpath and XMI format [message #26551] |
Sun, 15 July 2007 16:15  |
Eclipse User |
|
|
|
Hi everyone:
I'm very new to the JET2. I am trying to generate Java code from an xmi
format file generated by EMF editor, which I implemented with GMF editor.
some of the file contants look like the following:
<xmachine>
<model-name>left</model-name>
<states>
<name>state1</name>
<inTransitions>#//@xmachine/@transition.1</inTransitions>
<outTransitions>#//@xmachine/@transition.0</outTransitions >
</states>
<states>
<name>state2</name>
<inTransitions>#//@xmachine/@transition.0</inTransitions>
<outTransitions>#//@xmachine/@transition.1</outTransitions >
</states>
<initial-state>#//@xmachine/@states.0</initial-state>
<transition>
<fromState>#//@xmachine/@states.0</fromState>
<functionName>fun1</functionName>
<toState>#//@xmachine/@states.1</toState>
</transition>
<transition>
<fromState>#//@xmachine/@states.1</fromState>
<functionName>fun2</functionName>
<toState>#//@xmachine/@states.0</toState>
</transition>
</xmachine>
the file extenstion is (xml). I have tried the examples in
http://www-128.ibm.com/developerworks/opensource/library/os- ecl-jet/
I got them running. but the problem is I could not genearte simple java
code from the above file.
in the examples there were no elements contents, attributes only were used.
My questions are:
how the content of the element (such as states/name) can be retrived using
Xpath?
Is it possible to get the referenced value (such as #//@xmachine/@states.0
in
<initial-state>#//@xmachine/@states.0</initial-state>) using Xpath?
Finally, could anyone please give a simple (but complete) example on using
JET2 with xmi format.
Regards
Tarek
|
|
|
|
|
Re: Xpath and XMI format [message #26866 is a reply to message #26551] |
Tue, 17 July 2007 09:23   |
Eclipse User |
|
|
|
Tarek:
The secret is to understand what JET is dealing with in-memory. It is not
necessarily the XML representation you see on disk. In fact, in the case of
an XMI file created by EMF/GMF, JET is using EMF to load the file, and is
evaluating the XPath expressings against the in memory EObjects.
So, my recommendation in your cases is:
1) forgot about looking an the XMI, instead, think of the EMF Model you
created.
2) think about who your would navigate an EMF Resource to find the object
you'd want. I'd guess you'd write something like:
Resource resource = ...;
XMachine xmachine = (XMachine)resource.getContents().get(0);
String modelName = xmachine.getModelName(); // hard to tell whether
getModelName() is an EList or a String from your example. I've assumed its
an EAttribute.
3) Write your XPath expression using the 'feature' names from you EMF model.
The initial '/' in an expression maps to the Resource, and 'contents' is the
only valid child of '/'. If your accessing an EAttribute, prefix the name
with '@'. I'm guessing at the feature name, but this is what the
corresponding XPath expression might be for the above Java code.
/contents/@model-name
4) XPath on EMF-based models, you can use EClass names instead of feature
names, so the following is equivalent to the above:
/XMachine/@model-name
5) The XPath Engine sees non-containment EReference features, so you can
access these too. The following returns the 'inTransitions' of the state
named 'state1'.
/XMachine/states[@name = 'state1']/inTransitions
Paul
"Tarek" <howaj2002@yahoo.co.uk> wrote in message
news:17d48821d23fbc257f703a22ce4e8cfa$1@www.eclipse.org...
> Hi everyone:
>
> I'm very new to the JET2. I am trying to generate Java code from an xmi
> format file generated by EMF editor, which I implemented with GMF editor.
> some of the file contants look like the following:
> <xmachine>
> <model-name>left</model-name>
> <states>
> <name>state1</name>
> <inTransitions>#//@xmachine/@transition.1</inTransitions>
> <outTransitions>#//@xmachine/@transition.0</outTransitions >
> </states>
> <states>
> <name>state2</name>
> <inTransitions>#//@xmachine/@transition.0</inTransitions>
> <outTransitions>#//@xmachine/@transition.1</outTransitions >
> </states>
> <initial-state>#//@xmachine/@states.0</initial-state>
> <transition>
> <fromState>#//@xmachine/@states.0</fromState>
> <functionName>fun1</functionName>
> <toState>#//@xmachine/@states.1</toState>
> </transition>
> <transition>
> <fromState>#//@xmachine/@states.1</fromState>
> <functionName>fun2</functionName>
> <toState>#//@xmachine/@states.0</toState>
> </transition>
> </xmachine>
>
> the file extenstion is (xml). I have tried the examples in
> http://www-128.ibm.com/developerworks/opensource/library/os- ecl-jet/
>
> I got them running. but the problem is I could not genearte simple java
> code from the above file.
>
> in the examples there were no elements contents, attributes only were
> used.
>
> My questions are:
>
> how the content of the element (such as states/name) can be retrived using
> Xpath?
> Is it possible to get the referenced value (such as #//@xmachine/@states.0
> in
> <initial-state>#//@xmachine/@states.0</initial-state>) using Xpath?
>
> Finally, could anyone please give a simple (but complete) example on using
> JET2 with xmi format.
>
> Regards
>
> Tarek
>
>
>
|
|
|
Re: Xpath and XMI format [message #27106 is a reply to message #26866] |
Tue, 17 July 2007 15:40   |
Eclipse User |
|
|
|
Dear Paul:
Thank you very much for your help.
First of all, I am not a profissional programmer. I am working on my
university dissertation.so I hope you will be patient with me.
From one of your answers, in the plugin.xml file, I set
modelLaoder:org.eclipse.jet.emf
and modelExtension: xm
my main.jet looks like:
<%@taglib prefix="ws" id="org.eclipse.jet.workspaceTags" %>
<c:iterate select="/xmachine/states" var="currState">
<ws:file template="templates/StateClass.java.jet"
path=" {$org.eclipse.jet.resource.project.name}/gen-src/{$currState /@name}.java "/>
</c:iterate>
and StateClass.java.jet looks like:
public class <c:get select="$currState/@name" />{
private String stateName = "<c:get select="$currState/@name" />";
public String getStateName() {
return "<c:get select="$currState/@name" />";
}
public void shout() {
System.out.println("Hello!!!");
}
}
when I run the project (from the workspace) it prints just:
Successful Execution
and nothings generated.
however, when I changed the input file to:
<?xml version="1.0" encoding="UTF-8"?>
<xmachine:DocumentRoot xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:xmachine="http://www.shef.ac.uk/xmachine">
<xmachine modelName="Bank_Cashier" initialState="//@xmachine/@states.0">
<xmachineInput/>
<states name="serving" inTransitions="//@xmachine/@transition.1
//@xmachine/@transition.2 //@xmachine/@transition.3
//@xmachine/@transition.4 //@xmachine/@transition.6"
outTransitions="//@xmachine/@transition.0 //@xmachine/@transition.2
//@xmachine/@transition.3 //@xmachine/@transition.4
//@xmachine/@transition.5"/>
<states name="Idle" inTransitions="//@xmachine/@transition.0
//@xmachine/@transition.7" outTransitions="//@xmachine/@transition.1
//@xmachine/@transition.8"/>
<states name="answering" inTransitions="//@xmachine/@transition.5
//@xmachine/@transition.8 //@xmachine/@transition.9"
outTransitions="//@xmachine/@transition.6 //@xmachine/@transition.7
//@xmachine/@transition.9"/>
<transition fromState="//@xmachine/@states.0"
functionName="customer_leaves_0" toState="//@xmachine/@states.1"/>
<transition fromState="//@xmachine/@states.1"
functionName="customer_arrives" toState="//@xmachine/@states.0"/>
<transition fromState="//@xmachine/@states.0"
functionName="customer_leaves_n" toState="//@xmachine/@states.0"/>
<transition fromState="//@xmachine/@states.0"
functionName="phone_rings" toState="//@xmachine/@states.0"/>
<transition fromState="//@xmachine/@states.0"
functionName="customer_arrives" toState="//@xmachine/@states.0"/>
<transition fromState="//@xmachine/@states.0"
functionName="answer_phone_n" toState="//@xmachine/@states.2"/>
<transition fromState="//@xmachine/@states.2"
functionName="serve_another" toState="//@xmachine/@states.0"/>
<transition fromState="//@xmachine/@states.2"
functionName="become_idle" toState="//@xmachine/@states.1"/>
<transition fromState="//@xmachine/@states.1"
functionName="answer_phone_0" toState="//@xmachine/@states.2"/>
<transition fromState="//@xmachine/@states.2"
functionName="customer_arrives" toState="//@xmachine/@states.2"/>
</xmachine>
</xmachine:DocumentRoot>
note: I added /DocumentRoot/ to the jet files
the Java code was generated.However, when I use the transormation in
run-time,nothing was generated
Moreover, it seems that it deals with the input file as xml file, because
for instance
private String initialstateName = "<c:get
select="/DocumentRoot/xmachine/@initialState/@name" />";
does not work.
So, could you please point me to the correct way.
Thank you very much in advance.
Tarek
|
|
|
Re: Xpath and XMI format [message #27145 is a reply to message #27106] |
Wed, 18 July 2007 08:52   |
Eclipse User |
|
|
|
Tarek:
Your iterate loop is not matching any nodes:
<c:iterate select="/xmachine/states" var="currState">
Since you have an EMF model, the XPath engine having trouble with
'xmachines'. Here is a step-by-step of what is happening.
1) Xpath engine maps the initial '/' to the EMF Resource
2) XPath engine looks for a 'feature' called 'xmachine' on the EMF Resource.
The only feature an EMF Resource has is 'contents', so that doesn't match.
3) XPath engine then tries to look for objects contained by the EMF Resource
whose type is 'xmachine'. Again, I'm guessing that there is no match, since
most EMF types start with a capital. Any of the following will work:
/*/states
/contents/states
/the-correct-type-of-the root object in the resource/states
Paul
"Tarek" <howaj2002@yahoo.co.uk> wrote in message
news:e41ca405ab919d57e019f242b950704e$1@www.eclipse.org...
> Dear Paul:
>
> Thank you very much for your help.
>
> First of all, I am not a profissional programmer. I am working on my
> university dissertation.so I hope you will be patient with me.
>
> From one of your answers, in the plugin.xml file, I set
> modelLaoder:org.eclipse.jet.emf
> and modelExtension: xm
>
> my main.jet looks like:
>
> <%@taglib prefix="ws" id="org.eclipse.jet.workspaceTags" %>
> <c:iterate select="/xmachine/states" var="currState">
> <ws:file template="templates/StateClass.java.jet"
> path=" {$org.eclipse.jet.resource.project.name}/gen-src/{$currState /@name}.java "/>
> </c:iterate>
>
>
> and StateClass.java.jet looks like:
> public class <c:get select="$currState/@name" />{ private String stateName
> = "<c:get select="$currState/@name" />"; public String getStateName() {
> return "<c:get select="$currState/@name" />"; }
> public void shout() {
> System.out.println("Hello!!!"); } }
>
> when I run the project (from the workspace) it prints just:
> Successful Execution
>
> and nothings generated.
>
>
> however, when I changed the input file to:
> <?xml version="1.0" encoding="UTF-8"?>
> <xmachine:DocumentRoot xmi:version="2.0"
> xmlns:xmi="http://www.omg.org/XMI"
> xmlns:xmachine="http://www.shef.ac.uk/xmachine">
> <xmachine modelName="Bank_Cashier" initialState="//@xmachine/@states.0">
> <xmachineInput/>
> <states name="serving" inTransitions="//@xmachine/@transition.1
> //@xmachine/@transition.2 //@xmachine/@transition.3
> //@xmachine/@transition.4 //@xmachine/@transition.6"
> outTransitions="//@xmachine/@transition.0 //@xmachine/@transition.2
> //@xmachine/@transition.3 //@xmachine/@transition.4
> //@xmachine/@transition.5"/>
> <states name="Idle" inTransitions="//@xmachine/@transition.0
> //@xmachine/@transition.7" outTransitions="//@xmachine/@transition.1
> //@xmachine/@transition.8"/>
> <states name="answering" inTransitions="//@xmachine/@transition.5
> //@xmachine/@transition.8 //@xmachine/@transition.9"
> outTransitions="//@xmachine/@transition.6 //@xmachine/@transition.7
> //@xmachine/@transition.9"/>
> <transition fromState="//@xmachine/@states.0"
> functionName="customer_leaves_0" toState="//@xmachine/@states.1"/>
> <transition fromState="//@xmachine/@states.1"
> functionName="customer_arrives" toState="//@xmachine/@states.0"/>
> <transition fromState="//@xmachine/@states.0"
> functionName="customer_leaves_n" toState="//@xmachine/@states.0"/>
> <transition fromState="//@xmachine/@states.0"
> functionName="phone_rings" toState="//@xmachine/@states.0"/>
> <transition fromState="//@xmachine/@states.0"
> functionName="customer_arrives" toState="//@xmachine/@states.0"/>
> <transition fromState="//@xmachine/@states.0"
> functionName="answer_phone_n" toState="//@xmachine/@states.2"/>
> <transition fromState="//@xmachine/@states.2"
> functionName="serve_another" toState="//@xmachine/@states.0"/>
> <transition fromState="//@xmachine/@states.2"
> functionName="become_idle" toState="//@xmachine/@states.1"/>
> <transition fromState="//@xmachine/@states.1"
> functionName="answer_phone_0" toState="//@xmachine/@states.2"/>
> <transition fromState="//@xmachine/@states.2"
> functionName="customer_arrives" toState="//@xmachine/@states.2"/>
> </xmachine>
> </xmachine:DocumentRoot>
>
> note: I added /DocumentRoot/ to the jet files
>
> the Java code was generated.However, when I use the transormation in
> run-time,nothing was generated
>
> Moreover, it seems that it deals with the input file as xml file, because
> for instance
>
> private String initialstateName = "<c:get
> select="/DocumentRoot/xmachine/@initialState/@name" />";
>
> does not work.
>
>
>
> So, could you please point me to the correct way.
>
> Thank you very much in advance.
>
> Tarek
>
>
|
|
|
Re: Xpath and XMI format [message #27299 is a reply to message #27145] |
Wed, 18 July 2007 12:57   |
Eclipse User |
|
|
|
Dear Paul:
I have tried all ways. however, I could not manage to get it right.
here is my xmachine.ecore (or can I send you my EMF/GMF editor plugins, so
you can see where is my mistake):
<?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="xmachine"
nsURI="http://www.shef.ac.uk/xmachine" nsPrefix="xmachine">
<eClassifiers xsi:type="ecore:EDataType" name="AllowedChar"
instanceClassName="java.lang.String">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="allowed-char"/>
<details key="baseType"
value="http://www.eclipse.org/emf/2003/XMLType#string"/>
<details key="pattern" value="([a-zA-Z0-9_])"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="AllowedString"
instanceClassName="java.lang.String">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="allowed-string"/>
<details key="baseType"
value="http://www.eclipse.org/emf/2003/XMLType#string"/>
<details key="pattern" value="([a-zA-Z0-9_])*"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ArithmeticBinaryType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="arithmetic-binary_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="arg"
lowerBound="1" eType="#//ListElement"
containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="arg"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute"
name="arithmeticOperator" unique="false"
lowerBound="1" eType="#//ArithmeticOperator"
defaultValueLiteral="plus" unsettable="true">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="arithmetic-operator"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference"
name="arithmeticExpression" lowerBound="1"
eType="#//ArithmeticExpressionType" containment="true"
resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="arithmetic-expression"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ArithmeticExpressionType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="arithmetic-expression_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="arg"
eType="#//ListElement"
containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="arg"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference"
name="arithmeticBinary" eType="#//ArithmeticBinaryType"
containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="arithmetic-binary"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="ArithmeticOperator">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="arithmetic-operator"/>
</eAnnotations>
<eLiterals name="plus"/>
<eLiterals name="minus" value="1"/>
<eLiterals name="multiply" value="2"/>
<eLiterals name="divide" value="3"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="ArithmeticOperatorObject"
instanceClassName="org.eclipse.emf.common.util.Enumerator">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="arithmetic-operator:Object"/>
<details key="baseType" value="arithmetic-operator"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BagExpressionType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="bag-expression_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="bag"
eType="#//BagType"
containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="bag"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference"
name="bagExpressionUnary" eType="#//BagExpressionUnaryType"
containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="bag-expression-unary"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference"
name="expressionBinary" eType="#//ExpressionBinaryType"
containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="expression-binary"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BagExpressionUnaryType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="bag-expression-unary_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute"
name="bagOperatorUnary" unique="false"
lowerBound="1" eType="#//BagOperatorUnary"
defaultValueLiteral="cardinality"
unsettable="true">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="bag-operator-unary"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="bagExpression"
lowerBound="1"
eType="#//BagExpressionType" containment="true"
resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="bag-expression"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BagOfType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="bag-of_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="builtinType"
unique="false"
eType="#//BuiltinType" defaultValueLiteral="integer"
unsettable="true">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="builtin-type"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="typeName"
unique="false"
eType="#//AllowedString">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="type-name"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="bag"
eType="#//BagType"
containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="bag"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="BagOperator"
instanceClassName="org.eclipse.emf.common.util.Enumerator">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="bag-operator"/>
<details key="memberTypes" value="bag-operator-binary
bag-operator-unary"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="BagOperatorBinary">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="bag-operator-binary"/>
</eAnnotations>
<eLiterals name="intersection"/>
<eLiterals name="multiplicity" value="1"/>
<eLiterals name="addElement" value="2" literal="add_element"/>
<eLiterals name="deleteElement" value="3" literal="delete_element"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="BagOperatorBinaryObject"
instanceClassName="org.eclipse.emf.common.util.Enumerator">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="bag-operator-binary:Object"/>
<details key="baseType" value="bag-operator-binary"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="BagOperatorUnary">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="bag-operator-unary"/>
</eAnnotations>
<eLiterals name="cardinality"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="BagOperatorUnaryObject"
instanceClassName="org.eclipse.emf.common.util.Enumerator">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="bag-operator-unary:Object"/>
<details key="baseType" value="bag-operator-unary"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BagType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="bag_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="bagElement"
lowerBound="1"
upperBound="-1" eType="#//ListElement" containment="true"
resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="bag-element"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BasicTypesType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="basic-types_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name"
unique="false" lowerBound="1"
upperBound="-1" eType="#//AllowedString">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="name"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BinaryType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="binary_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="arg"
lowerBound="1" eType="#//ListElement"
containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="arg"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="operator"
unique="false"
lowerBound="1" eType="#//OperatorBinary"
defaultValueLiteral="concat" unsettable="true">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="operator"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference"
name="expressionBinary" lowerBound="1"
eType="#//ExpressionBinaryType" containment="true"
resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="expression-binary"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BodyType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="body_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="expression"
lowerBound="1"
eType="#//ExpressionType" containment="true"
resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="expression"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute"
name="booleanOperator" unique="false"
lowerBound="1" eType="#//BooleanOperator"
defaultValueLiteral="&&"
unsettable="true">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="boolean-operator"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="where"
lowerBound="1" eType="#//WhereType"
containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="where"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="Boolean"
instanceClassName="boolean">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="boolean"/>
<details key="baseType"
value="http://www.eclipse.org/emf/2003/XMLType#boolean"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass"
name="BooleanCollectionExpressionBinaryType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name"
value="boolean-collection-expression-binary_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference"
name="collectionElement" lowerBound="1"
eType="#//ListElement" containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="collection-element"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute"
name="booleanCollectionOperatorBinary"
unique="false" lowerBound="1"
eType="#//BooleanCollectionOperatorBinary" defaultValueLiteral="union"
unsettable="true">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="boolean-collection-operator-binary"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="collection"
lowerBound="1"
eType="#//CollectionType" containment="true"
resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="collection"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass"
name="BooleanCollectionExpressionUnaryType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name"
value="boolean-collection-expression-unary_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute"
name="booleanCollectionOperatorUnary"
unique="false" lowerBound="1"
eType="#//BooleanCollectionOperatorUnary" defaultValueLiteral="is_empty"
unsettable="true">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="boolean-collection-operator-unary"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="collection"
lowerBound="1"
eType="#//CollectionType" containment="true"
resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="collection"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum"
name="BooleanCollectionOperatorBinary">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="boolean-collection-operator-binary"/>
</eAnnotations>
<eLiterals name="union"/>
<eLiterals name="belongs" value="1"/>
<eLiterals name="notBelongs" value="2" literal="not_belongs"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType"
name="BooleanCollectionOperatorBinaryObject"
instanceClassName="org.eclipse.emf.common.util.Enumerator">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name"
value="boolean-collection-operator-binary:Object"/>
<details key="baseType" value="boolean-collection-operator-binary"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum"
name="BooleanCollectionOperatorUnary">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="boolean-collection-operator-unary"/>
</eAnnotations>
<eLiterals name="isEmpty" literal="is_empty"/>
<eLiterals name="notEmpty" value="1" literal="not_empty"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType"
name="BooleanCollectionOperatorUnaryObject"
instanceClassName="org.eclipse.emf.common.util.Enumerator">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name"
value="boolean-collection-operator-unary:Object"/>
<details key="baseType" value="boolean-collection-operator-unary"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="BooleanComparator">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="boolean-comparator"/>
</eAnnotations>
<eLiterals name="gt"/>
<eLiterals name="lt" value="1"/>
<eLiterals name="gtequal" value="2"/>
<eLiterals name="ltequal" value="3"/>
<eLiterals name="equals" value="4"/>
<eLiterals name="notEqual" value="5" literal="not_equal"/>
<eLiterals name="belongs" value="6"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="BooleanComparatorObject"
instanceClassName="org.eclipse.emf.common.util.Enumerator">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="boolean-comparator:Object"/>
<details key="baseType" value="boolean-comparator"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass"
name="BooleanExpressionComparisonType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="boolean-expression-comparison_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="identifier"
lowerBound="1"
eType="#//IdentifierType" containment="true"
resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="identifier"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute"
name="booleanComparator" unique="false"
lowerBound="1" eType="#//BooleanComparator"
defaultValueLiteral="gt" unsettable="true">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="boolean-comparator"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="identifier1"
lowerBound="1"
eType="#//IdentifierType" containment="true"
resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="identifier"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BooleanExpressionType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="boolean-expression_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="term"
eType="#//TermType"
containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="term"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference"
name="booleanCollectionExpressionBinary"
eType="#//BooleanCollectionExpressionBinaryType"
containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="boolean-collection-expression-binary"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference"
name="booleanCollectionExpressionUnary"
eType="#//BooleanCollectionExpressionUnaryType" containment="true"
resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="boolean-collection-expression-unary"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference"
name="booleanExpressionComparison"
eType="#//BooleanExpressionComparisonType" containment="true"
resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="boolean-expression-comparison"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BooleanExpressionUnaryType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="boolean-expression-unary_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="identifier"
lowerBound="1"
eType="#//IdentifierType" containment="true"
resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="identifier"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="BooleanObject"
instanceClassName="java.lang.Boolean">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="boolean:Object"/>
<details key="baseType" value="boolean"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="BooleanOperator">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="boolean-operator"/>
</eAnnotations>
<eLiterals name="_" literal="&&"/>
<eLiterals name="_1" value="1" literal="||"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="BooleanOperatorObject"
instanceClassName="org.eclipse.emf.common.util.Enumerator">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="boolean-operator:Object"/>
<details key="baseType" value="boolean-operator"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="BuiltinType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="builtin-type"/>
</eAnnotations>
<eLiterals name="integer"/>
<eLiterals name="natural0" value="1"/>
<eLiterals name="natural" value="2"/>
<eLiterals name="real" value="3"/>
<eLiterals name="char" value="4"/>
<eLiterals name="boolean" value="5"/>
<eLiterals name="true" value="6"/>
<eLiterals name="false" value="7"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BuiltinType1">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="builtin_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="integer"
unique="false"
eType="#//Integer">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="integer"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="natural0"
unique="false"
eType="#//Natural0">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="natural0"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="natural"
unique="false"
eType="#//Natural">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="natural"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="real"
unique="false" eType="#//Real">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="real"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="boolean"
unique="false"
eType="#//Boolean" unsettable="true">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="boolean"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="true"
unique="false" eType="#//True">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="true"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="false"
unique="false" eType="#//False">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="false"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="char"
unique="false" eType="#//Char">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="char"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="BuiltinTypeObject"
instanceClassName="org.eclipse.emf.common.util.Enumerator">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="builtin-type:Object"/>
<details key="baseType" value="builtin-type"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="Char"
instanceClassName="java.lang.String">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="char"/>
<details key="baseType"
value="http://www.eclipse.org/emf/2003/XMLType#string"/>
<details key="length" value="1"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CollectionType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="collection_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="sequence"
eType="#//SequenceType"
containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="sequence"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="set"
eType="#//Set" containment="true"
resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="set"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="bag"
eType="#//BagType"
containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="bag"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="variable"
unique="false"
eType="#//AllowedString">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="variable"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="type"
eType="#//TypeType"
containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="type"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="basicTypes"
eType="#//BasicTypesType"
containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="basic-types"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CompoundExpressionType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="compound-expression_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference"
name="booleanExpression" lowerBound="1"
eType="#//BooleanExpressionType" containment="true"
resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="boolean-expression"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute"
name="booleanOperator" unique="false"
lowerBound="1" eType="#//BooleanOperator"
defaultValueLiteral="&&"
unsettable="true">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="boolean-operator"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="condition"
lowerBound="1"
eType="#//ConditionType" containment="true" resolveProxies="false">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="condition"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ConditionType">
<eAnnotations
source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="condition_._type"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference"
name="booleanExpression" eType="#//BooleanExpressionType"
containment="true" resolveProxies="false">
<eAnnotations
source="
|
|
|
|
Re: Xpath and XMI format [message #27363 is a reply to message #27333] |
Thu, 19 July 2007 11:55  |
Eclipse User |
|
|
|
Dear Paul:
Thank you very much for giving me some of your time.
Could you please give me your full email, so I can send my plugins with
complete input file.
I've used Eclipse 3.2.2 with EMF, GMF(which requires GEF) (I've used
download manger to download all the required pulgins )and I used XML
schema to produce my EMF model (I will send it too with the plugins).
Regarding the XmahineType, I have used it too, but no results.
I am looking forward to your reply.
Best regards
Tarek
|
|
|
Powered by
FUDForum. Page generated in 0.05249 seconds