[397429] - Making PathElementCS have an attribute name
diff --git a/plugins/org.eclipse.ocl.xtext.base/model/BaseCS.ecore b/plugins/org.eclipse.ocl.xtext.base/model/BaseCS.ecore
index 3fa69ed..e1004f8 100644
--- a/plugins/org.eclipse.ocl.xtext.base/model/BaseCS.ecore
+++ b/plugins/org.eclipse.ocl.xtext.base/model/BaseCS.ecore
@@ -144,8 +144,9 @@
         transient="true"/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="owningPathName" lowerBound="1"
         eType="#//PathNameCS" eOpposite="#//PathNameCS/ownedPathElements"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="referredElement" lowerBound="1"
+    <eStructuralFeatures xsi:type="ecore:EReference" name="referredElement"
         eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Element"/>
+        <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-String"/>
   </eClassifiers>
   <eClassifiers xsi:type="ecore:EClass" name="PathElementWithURICS" eSuperTypes="#//PathElementCS">
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="uri" eType="ecore:EDataType ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-String"
@@ -156,7 +157,7 @@
         transient="true" unsettable="true" resolveProxies="false"/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="ownedPathElements" lowerBound="1"
         upperBound="-1" eType="#//PathElementCS" containment="true" eOpposite="#//PathElementCS/owningPathName"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="referredElement" lowerBound="1"
+    <eStructuralFeatures xsi:type="ecore:EReference" name="referredElement"
         eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Element"
         changeable="false" volatile="true" transient="true" derived="true"/>
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="scopeFilter" eType="#//ScopeFilter"
diff --git a/plugins/org.eclipse.ocl.xtext.base/src/org/eclipse/ocl/xtext/base/Base.xtext b/plugins/org.eclipse.ocl.xtext.base/src/org/eclipse/ocl/xtext/base/Base.xtext
index d2847c7..ea0f84a 100644
--- a/plugins/org.eclipse.ocl.xtext.base/src/org/eclipse/ocl/xtext/base/Base.xtext
+++ b/plugins/org.eclipse.ocl.xtext.base/src/org/eclipse/ocl/xtext/base/Base.xtext
@@ -26,10 +26,10 @@
 	ownedPathElements+=FirstPathElementCS ('::' ownedPathElements+=NextPathElementCS)*;
 
 FirstPathElementCS returns PathElementCS:
-	referredElement=[pivot::NamedElement|UnrestrictedName];
+	name = UnrestrictedName;
 
 NextPathElementCS returns PathElementCS:
-	referredElement=[pivot::NamedElement|UnreservedName];
+	name = UnreservedName;
 
 TemplateBindingCS returns TemplateBindingCS:
 	ownedSubstitutions+=TemplateParameterSubstitutionCS (',' ownedSubstitutions+=TemplateParameterSubstitutionCS)* (ownedMultiplicity=MultiplicityCS)?
diff --git a/plugins/org.eclipse.ocl.xtext.essentialocl/src/org/eclipse/ocl/xtext/essentialocl/EssentialOCL.xtext b/plugins/org.eclipse.ocl.xtext.essentialocl/src/org/eclipse/ocl/xtext/essentialocl/EssentialOCL.xtext
index 4fb09b4..1e8ce7a 100644
--- a/plugins/org.eclipse.ocl.xtext.essentialocl/src/org/eclipse/ocl/xtext/essentialocl/EssentialOCL.xtext
+++ b/plugins/org.eclipse.ocl.xtext.essentialocl/src/org/eclipse/ocl/xtext/essentialocl/EssentialOCL.xtext
@@ -81,7 +81,7 @@
 	ownedPathElements+=URIFirstPathElementCS ('::' ownedPathElements+=NextPathElementCS)*;
 
 URIFirstPathElementCS returns base::PathElementCS:
-	referredElement=[pivot::NamedElement|UnrestrictedName] | {base::PathElementWithURICS} referredElement=[pivot::Namespace|URI];
+	name=UnrestrictedName | {base::PathElementWithURICS} uri=URI;
 
 //---------------------------------------------------------------------
 //  Types
diff --git a/plugins/org.eclipse.ocl.xtext.oclstdlib/src/org/eclipse/ocl/xtext/oclstdlib/OCLstdlib.xtext b/plugins/org.eclipse.ocl.xtext.oclstdlib/src/org/eclipse/ocl/xtext/oclstdlib/OCLstdlib.xtext
index 6f54a2d..97ac587 100644
--- a/plugins/org.eclipse.ocl.xtext.oclstdlib/src/org/eclipse/ocl/xtext/oclstdlib/OCLstdlib.xtext
+++ b/plugins/org.eclipse.ocl.xtext.oclstdlib/src/org/eclipse/ocl/xtext/oclstdlib/OCLstdlib.xtext
@@ -74,7 +74,7 @@
 	ownedPathElements+=LibPathElementCS ('::' ownedPathElements+=LibPathElementCS)*;
 
 LibPathElementCS returns base::PathElementCS:
-	referredElement=[pivot::NamedElement|Name];
+	name=Name;
 
 AccumulatorCS returns base::ParameterCS:
 	name=Identifier ':' ownedType=TypedMultiplicityRefCS