EMF:如何将具有唯一名称的一组XML元素映射到Map

时间:2012-11-24 10:45:30

标签: eclipse-emf eclipse-emf-ecore emf

我有一个现有的XML格式,我想创建一个基于Ecore的模型,我可以使用它来加载和保存XML格式的文件(无需编写我自己的序列化器/反序列化器)。 XML包含具有以下结构的元素:

<parent>
  <some-other-element>...</some-other-element>
  ...
  <child name="name1">...</child>
  <child name="name2">...</child>
  ...
</parent>

预期child元素的名称在其兄弟姐妹中是唯一的。显然,对此进行建模的最自然方式是使用MapEMap或其他类似地图的结构。是否可以使用这样的数据结构并以这样的方式注释模型:该模型的实例以上面显示的格式保存?

1 个答案:

答案 0 :(得分:0)

我认为你最好选择你需要的独特限制来创建一个xsd,因为使用注释我不确定它是否可行。也许如果您将列表映射到@ unique = true而不是类型为必须是唯一的属性,如type =“child.name”,那么在子接口/ name属性上使用注释为unique = true。这可能有效