Hello,

I'm trying to parse EPF models persisted to XMI. I took the epf_prac_151 library (found at http://git.eclipse.org/c/epf/org.eclipse.epf.libraries.git/tree/epf_prac_151). The most up to date version of the EPF XML Schema is "EPF_Schema_201003161045.xsd" (found at http://www.eclipse.org/epf/tool_component/xml_schema.php and in the git repository at http://git.eclipse.org/c/epf/org.eclipse.epf.composer.git/tree/1.5/plugins/org.eclipse.epf.xml.uma/src/model).

When I took a look at the XML schema I observed naming conflicts between the XML schema and the library's XMI files. While the XMI files seem to map fine to the Java implementation of the UMA/EPF classes (found at http://git.eclipse.org/c/epf/org.eclipse.epf.composer.git/tree/1.5/plugins/org.eclipse.epf.uma/src/org/eclipse/epf/uma/) the XML schema seems to vary.

To give an example: *WorkBreakdownElement*

 * XML schema: (starting around line 948):

   ...
   <xsd:extension base="uma:BreakdownElement">
        <xsd:choice minOccurs="0" maxOccurs="unbounded">
             <xsd:element name="*Predecessor*" type="uma:WorkOrder"/>
        </xsd:choice>
   ...

 * Java implementation:
   
(http://git.eclipse.org/c/epf/org.eclipse.epf.composer.git/tree/1.5/plugins/org.eclipse.epf.uma/src/org/eclipse/epf/uma/impl/WorkBreakdownElementImpl.java)

   |public abstract class WorkBreakdownElementImpl extends BreakdownElementImpl
                implements WorkBreakdownElement {
   ...
   ||/**
         * The cached value of the '{@link #getLinkToPredecessor() <em>Link To 
Predecessor</em>}' reference list.
         * <!-- begin-user-doc -->
         * <!-- end-user-doc -->
         * @see #*getLinkToPredecessor*()
         * @generated
         * @ordered
         */
        protected EList<WorkOrder>*linkToPredecessor*;
   ...
   |

 * XMI file:
   
epf_prac_151/process.openup.base/capabilitypatterns/transition_phase_iteration/model.xmi
   (line 36), Activity extends WorkBreakdownElement:

   <processElements xsi:type="org.eclipse.epf.uma:Activity"
   xmi:id="_sL8xMZlXEeGlkdGl1HQlDA" name="deploy_release_to_production"
   guid="_sL8xMZlXEeGlkdGl1HQlDA"
   superActivities="_pzQU0dONEdyqlogshP8l4g"
   *linkToPredecessor*="_IzB0cZlaEeGlkdGl1HQlDA _IzLlcJlaEeGlkdGl1HQlDA
   _IzLlcZlaEeGlkdGl1HQlDA _IzLlcplaEeGlkdGl1HQlDA
   _IzUvYJlaEeGlkdGl1HQlDA _IzUvYZlaEeGlkdGl1HQlDA"
   variabilityType="extends"> ...

As far as I understood the XMI reflects UMA/EPF's model classes and their attributes. I would expect the XML schema to prescribe the available elements and attributes found in the XMI files, but it does not in every case (see example above "Predecessor" in XML schema vs. "linkToPredecessor" in XMI file and Java implementation).

Is the XML schema outdated or am I missing something important?

Thanks!

Best Regards,
Jöran Pieper




<<attachment: Joeran_Pieper.vcf>>

_______________________________________________
epf-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/epf-dev

Reply via email to