私のアプリケーションは、Javaクラスの生成前にecoreに変換されたxsdのモデルベースを使用しています。私のチームメンバーの1人が、以前のバージョンの.ecoreメタモデルを変更しました。これは、以前は生成されていた属性の1つです。彼は属性名を変更しましたが、xmlの永続性に使用される要素名を指定する拡張メタデータは変更しませんでした。
<eStructuralFeatures xsi:type="ecore:EReference" name="javaDocsAndUserApi" upperBound="-1"
eType="#//JavaDocsAndUserApi" containment="true" resolveProxies="false">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="docsAndUserApi"/>
</eAnnotations>
</eStructuralFeatures>
したがって、javaDocsAndUserApiという属性名とdocsAndUserApiという名前の永続化された要素があります。もちろん、xsdの属性をjavaDocsAndUserApiという名前に変更すると、ecore変換によってメタデータ名javaDocsAndUserApiも生成され、互換性が失われます。以前に永続化されたモデル。
xsdオーサリングガイドを見て、xsdからecoreへの変換中にメタデータにdocsAndUserApiという名前を付けるために、xsdで使用するキーを指定できるecore:som_attributeを見つけましたが、何も見つかりませんでした。誰かが私を助けるためのアイデアを持っていますか?
ありがとうございました。