Hi Christian,
Thank
you for your response. Actually, I have to match string constants and I tested
with integers but this problem persists.
Yes , this occurs specifically when the rule has to evaluate attribute
values. And I performed the deleting of a contained node without errors.
Please find below the resources I used to test this scenario:
//Test.ecore
<?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="test" nsURI="http://test/1.0" nsPrefix="test">
<eClassifiers xsi:type="ecore:EClass" name="Rule">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="params" upperBound="-1"
eType="#//Param" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Param"/>
</ecore:EPackage>
//unit1.henshin
<?xml version="1.0" encoding="UTF-8"?>
<henshin:Module xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:henshin="http://www.eclipse.org/emf/2011/Henshin" xmi:id="_bIT78IlJEeS-Lpe2rDONkQ">
<imports href="" href="http://test/1.0#/">http://test/1.0#/"/>
<units xsi:type="henshin:Rule" xmi:id="_cmLoIIlJEeS-Lpe2rDONkQ" name="r1">
<lhs xmi:id="_cnX68IlJEeS-Lpe2rDONkQ" name="Lhs">
<nodes xmi:id="_eMsS8IlJEeS-Lpe2rDONkQ">
<type href="" href="http://test/1.0#//Rule">http://test/1.0#//Rule"/>
<attributes xmi:id="_gN0dMIlJEeS-Lpe2rDONkQ" value=""a"">
<type href="" href="http://test/1.0#//Rule/name">http://test/1.0#//Rule/name"/>
</attributes>
</nodes>
</lhs>
<rhs xmi:id="_cnX68YlJEeS-Lpe2rDONkQ" name="Rhs">
<nodes xmi:id="_eMsS8YlJEeS-Lpe2rDONkQ">
<type href="" href="http://test/1.0#//Rule">http://test/1.0#//Rule"/>
<attributes xmi:id="_gN0dMYlJEeS-Lpe2rDONkQ" value=""b"">
<type href="" href="http://test/1.0#//Rule/name">http://test/1.0#//Rule/name"/>
</attributes>
</nodes>
</rhs>
<mappings xmi:id="_eMsS8olJEeS-Lpe2rDONkQ" origin="_eMsS8IlJEeS-Lpe2rDONkQ" image="_eMsS8YlJEeS-Lpe2rDONkQ"/>
</units>
</henshin:Module>
//base.xmi
<?xml version="1.0" encoding="ASCII"?>
<test:Rule xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI"
xmlns:test="http://test/1.0"
name="a">
<params/>
<params/>
</test:Rule>
//unit1.henshin (the running version that deletes a Param node)
<?xml version="1.0" encoding="UTF-8"?>
<henshin:Module xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:henshin="http://www.eclipse.org/emf/2011/Henshin" xmi:id="_lxujgIm-EeSNK6Vke8rPuQ">
<imports href="" href="http://test/1.0#/">http://test/1.0#/"/>
<units xsi:type="henshin:Rule" xmi:id="_rhBBkIm-EeSNK6Vke8rPuQ" name="r1">
<lhs xmi:id="_rhBBlYm-EeSNK6Vke8rPuQ" name="Lhs">
<nodes xmi:id="_I5rksIm_EeSNK6Vke8rPuQ" outgoing="_JPZ9E4m_EeSNK6Vke8rPuQ">
<type href="" href="http://test/1.0#//Rule">http://test/1.0#//Rule"/>
</nodes>
<nodes xmi:id="_JPZ9EIm_EeSNK6Vke8rPuQ" incoming="_JPZ9E4m_EeSNK6Vke8rPuQ">
<type href="" href="http://test/1.0#//Param">http://test/1.0#//Param"/>
</nodes>
<edges xmi:id="_JPZ9E4m_EeSNK6Vke8rPuQ" source="_I5rksIm_EeSNK6Vke8rPuQ" target="_JPZ9EIm_EeSNK6Vke8rPuQ">
<type href="" href="http://test/1.0#//Rule/params">http://test/1.0#//Rule/params"/>
</edges>
</lhs>
<rhs xmi:id="_rhBBlom-EeSNK6Vke8rPuQ" name="Rhs">
<nodes xmi:id="_I5rksYm_EeSNK6Vke8rPuQ">
<type href="" href="http://test/1.0#//Rule">http://test/1.0#//Rule"/>
</nodes>
</rhs>
<mappings xmi:id="_I5rksom_EeSNK6Vke8rPuQ" origin="_I5rksIm_EeSNK6Vke8rPuQ" image="_I5rksYm_EeSNK6Vke8rPuQ"/>
</units>
</henshin:Module>
Greetings,
Youness LAGHOUAOUTA
Phd Student
Mohammed V-Rabat University