1
我有一个很大的EMF模型,更具体地来自MDT项目的BPMN2.0模型。我们的软件有一个要求,那就是我们必须支持Oracle JDeveloper BPMN2导出格式,它几乎与BPMN2.0 schemat相对应,但它有自己的扩展。这里是一个例子:EMF扩展现有模型
<startEvent isInterrupting="false" name="Start" id="startEvent0">
<ns2:OracleExtensions>
<ns2:GraphicsAttributes>
<ns2:Position y="225" x="100"/>
<ns2:Size height="21" width="21"/>
</ns2:GraphicsAttributes>
<ns2:FeatureSet>
<ns2:BooleanFeature value="false" name="sync"/>
<ns2:BooleanFeature value="false" name="catchAllErrors"/>
<ns2:BooleanFeature value="false" name="catchAllSystemExceptions"/>
<ns2:StringFeature value="" name="associatedProcess"/>
<ns2:StringFeature value="" name="associatedNode"/>
<ns2:StringFeature value="" name="initiator"/>
<ns2:StringFeature value="operation" name="definedOperationName"/>
<ns2:StringFeature value="PROCESS_DEFAULT" name="generatesEvents"/>
<ns2:StringFeature value="USE_PROCESS_PERMISSION" name="sealType"/>
</ns2:FeatureSet>
<ns2:Participant/>
</ns2:OracleExtensions>
<outputSet/>
<messageEventDefinition/>
</startEvent>
有一个ns2的XSD架构,所以我很容易生成相应的eCore模型。我试图解决为期两天的问题 - 就是如何以正确的方式将OracleExtensions模型“插入”到现有的BPMN2.0 eCore模型中。我试图实现的目标是使用BPMN2.0建模器插件编辑模型,并提供一个exended属性来编辑oracle特有的功能。
任何建议都非常欢迎!