問題タブ [eclipse-emf-ecore]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xsd - XSDをEcore(EMF)に変換する方法
.xsd
-filesを-filesに変換する最良の方法は何.ecore
ですか?
そのためのEclipseプラグインはありますか?
eclipse - EMF APIを使用してecoreからGenmodelとモデルコードをプログラムで作成する方法は?
そのためのチュートリアルはありますか?
eclipse - EMF でより多くのモデルに対して 1 つのエディターのみを生成する方法は?
私はより多くの EMF genmodels を持っています。モデルごとに新しいエディタを作成するのはかなり不自由です。生成後 (右クリック - generateAll)、古いエディターは常に上書きされます。
eclipse - EMF ecoreとxsdが同期していません、どのように解決しますか?
私のアプリケーションは、Javaクラスの生成前にecoreに変換されたxsdのモデルベースを使用しています。私のチームメンバーの1人が、以前のバージョンの.ecoreメタモデルを変更しました。これは、以前は生成されていた属性の1つです。彼は属性名を変更しましたが、xmlの永続性に使用される要素名を指定する拡張メタデータは変更しませんでした。
したがって、javaDocsAndUserApiという属性名とdocsAndUserApiという名前の永続化された要素があります。もちろん、xsdの属性をjavaDocsAndUserApiという名前に変更すると、ecore変換によってメタデータ名javaDocsAndUserApiも生成され、互換性が失われます。以前に永続化されたモデル。
xsdオーサリングガイドを見て、xsdからecoreへの変換中にメタデータにdocsAndUserApiという名前を付けるために、xsdで使用するキーを指定できるecore:som_attributeを見つけましたが、何も見つかりませんでした。誰かが私を助けるためのアイデアを持っていますか?
ありがとうございました。
xpath - Ecoreから派生したXMIインスタンスの参照に使用されるクエリ/パス言語は何ですか?
パッケージと、相互に参照するいくつかのクラスを含むEcoreモデルがあるとします。「動的インスタンス」を作成すると、EclipseはXMIファイルを生成し、いくつかのクラスをインスタンス化できます。children
包含関係は、XMIのXMLツリー(例の要素)に直接シリアル化されます。しかし、ツリーのどこかにすでに含まれている要素への参照をインスタンス化すると、エディターはcurrentChild
属性に対して次のようにパス式を書き込みます。
私の知る限り、これはXPathではありません。理由は次のとおりです。
- 「
childrens
」は属性ではなく要素であり、「@
」を介して参照する必要はありません。 - XPathはegを使用し、egを取得
elem[1]
しないでリストの2番目の要素を取得しますelem.1
それは何で、どこで情報を見つけることができますか?私はすでにEMFページ/仕様を閲覧しようとしましたが、見つかりませんでした。
eclipse - Ecoreで「E」という文字はどういう意味ですか?
多分EMFまたはEMOFですか?Eclipse?または、まったく異なるものか、まったくないもの...?
eclipse-emf - Ecore-File での再帰?
特定の UML モデルから Ecore モデルに変換しようとしました。この後、ジェネレーターモデルを作成しようとしています。
これを実行しようとするたびに、次のログに「未処理のイベント ループ例外」があるというエラー メッセージが表示されます。
org.eclipse.swt.SWTException: org.eclipse.swt.SWT.error(SWT.java:3884) で org.eclipse.swt.SWT.error(SWT.java) で実行可能 (java.lang.NullPointerException) を実行できませんでした:3799) org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:137) で org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3885) で org.eclipse.swt.widgets. Display.readAndDispatch(Display.java:3506) org.eclipse.jface.window.Window.runEventLoop(Window.java:825) org.eclipse.jface.window.Window.open(Window.java:801) org .eclipse.gmf.internal.bridge.ui.dashboard.DashboardMediator$RunWizardAction.run(DashboardMediator.java:316) at org.eclipse.gmf.internal.bridge.ui.dashboard.HyperlinkFigure$1.mousePressed(HyperlinkFigure.java:63) ) org.eclipse.draw2d.Figure.handleMousePressed(Figure.java:873) で、org.eclipse.draw2d.SWTEventDispatcher で。org.eclipse.draw2d.LightweightSystem$EventHandler.mouseDown(LightweightSystem.java:513) の dispatchMousePressed(SWTEventDispatcher.java:214) org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:179) の org.eclipse org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003) の .swt.widgets.EventTable.sendEvent(EventTable.java:84) org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java) :3910) org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405) で org.eclipse.ui.internal. Workbench.runUI(Workbench.java:2369) at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500) org.eclipse.ui の org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) で。org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java: 113) org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194) で org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) で org.eclipse org.eclipse.core.runtime.adaptor の .core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368) .EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559) の java.lang.reflect.Method.invoke(不明なソース) での invoke(不明なソース) org.eclipse.equinox.launcher.Main.basicRun での(Main.java:514) at org.eclipse.equinox.launcher.Main.run(Main.java:1311) 原因: java.lang.NullPointerException at org.eclipse.emf.converter.util.ConverterUtil.computeRequiredPackages(ConverterUtil) .java:374) で org.eclipse.emf.converter.ui.contribution.base.ModelConverterPackagePage.validate(ModelConverterPackagePage.java:965) で org.eclipse.emf.importer.ui.contribution.base.ModelImporterPackagePage.validate(ModelImporterPackagePage) .java:101) org.eclipse.emf.converter.ui.contribution.base.ModelConverterPackagePage$1.run(ModelConverterPackagePage.java:155) で org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) でorg.eclipse.swt.widgets にあります。Synchronizer.runAsyncMessages(Synchronizer.java:134) ... 34 もっと見る
この後、「エディター ID org.eclipse.emf.codegen.ecore.genmodel.presentation.GenModelEditorID を作成できません:予期しない例外がスローされました。」というテキストで別の例外が発生します。
セッションデータは次のように述べています: eclipse.buildId=unknown java.version=1.6.0_13 java.vendor=Sun Microsystems Inc. BootLoader 定数: OS=win32, ARCH=x86, WS=win32, NL=de_DE フレームワーク引数: -product org. eclipse.epp.package.modeling.product コマンドライン引数: -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.modeling.product -consoleLog
この長いログでは:
org.eclipse.emf.codegen.ecore.genmodel.impl.GenModelImpl.diagnose(GenModelImpl.java:2930) の org.eclipse.emf.ecore.util.EcoreUtil.getURI(EcoreUtil.java:2887) での java.lang.NullPointerException ) org.eclipse.emf.codegen.ecore.genmodel.presentation.GenModelEditor.validate(GenModelEditor.java:1773) で org.eclipse.emf.codegen.ecore.genmodel.presentation.GenModelEditor.initialize(GenModelEditor.java:596) で) org.eclipse.emf.codegen.ecore.genmodel.presentation.GenModelEditor.createPages(GenModelEditor.java:1080) で org.eclipse.ui.part.MultiPageEditorPart.createPartControl(MultiPageEditorPart.java:357) で org.eclipse. ui.internal.EditorReference.createPartHelper(EditorReference.java:662) の org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:462) の org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595) org.eclipse.ui.internal.EditorReference.getEditor(EditorReference.java:286) で org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2857) で org.eclipse.ui.internal.WorkbenchPage .busyOpenEditor(WorkbenchPage.java:2762) at org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2754) at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2705) at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2701) の org.eclipse.ui.internal.WorkbenchPage.openEditor( WorkbenchPage.java:2685) で org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2668) で org.eclipse.emf.converter.ui.contribution.base.ModelConverterWizard.openEditor(ModelConverterWizard.java:318) でorg.eclipse.emf.importer.ui にあります。org.eclipse.jface.wizard.WizardDialog.finishPressed(WizardDialog.java:752) での貢献.base.ModelImporterWizard.performFinish(ModelImporterWizard.java:167) org.eclipse.gmf.internal.bridge.ui.dashboard.DashboardMediator$ でRunWizardAction$1.finishPressed(DashboardMediator.java:311) at org.eclipse.jface.wizard.WizardDialog.buttonPressed(WizardDialog.java:373) at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:624) org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:228) で org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) で org.eclipse.swt.widgets.Widget.sendEvent (Widget.java:1003) org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3910) で org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3503) で org.eclipse. jface.window.Window.runEventLoop(Window.java:825) org.org.eclipse.gmf.internal.bridge.ui.dashboard.DashboardMediator$RunWizardAction.run(DashboardMediator.java:316) で org.eclipse.gmf で eclipse.jface.window.Window.open(Window.java:801)。 internal.bridge.ui.dashboard.HyperlinkFigure$1.mousePressed(HyperlinkFigure.java:63) at org.eclipse.draw2d.Figure.handleMousePressed(Figure.java:873) at org.eclipse.draw2d.SWTEventDispatcher.dispatchMousePressed(SWTEventDispatcherjava.java) :214) org.eclipse.draw2d.LightweightSystem$EventHandler.mouseDown(LightweightSystem.java:513) で org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:179) で org.eclipse.swt.widgets. org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003) の EventTable.sendEvent(EventTable.java:84) org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3910) の org .eclipse.swt.widgets.Display.readAndDispatch(Display.java:3503) org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405) で org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369) で org.eclipse.ui.internal.Workbench .access$4(Workbench.java:2221) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) ) org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493) で org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) で org.eclipse.ui.internal.ide.application. org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher. java:110) org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher で。start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) sun.reflect.NativeMethodAccessorImpl.invoke0 (ネイティブ メソッド) で sun.reflect.NativeMethodAccessorImpl.invoke (不明なソース) で sun.reflect.DelegatingMethodAccessorImpl.invoke (不明なソース) で java.lang.reflect.Method.invoke (不明なソース) org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559) で org.eclipse.equinox.launcher.Main.basicRun(Main.java:514) で org.eclipse.equinox.launcher.Main.run (Main.java:1311)org.eclipse.equinox. launcher.Main.invokeFramework(Main.java:559) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514) at org.eclipse.equinox.launcher.Main.run(Main.java:1311)org.eclipse.equinox. launcher.Main.invokeFramework(Main.java:559) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514) at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
誰が何がうまくいかないのか考えていますか? 私は自分のモデルをしばらく見ましたが、何か問題を見つけることができませんでした。「未処理のイベント ループ例外」が原因で再帰が発生する可能性があると思いましたが、これは可能ですか?
前もってありがとう、ドミニク
java - ecoモデルをナビゲート
Ecore モデルを Java でプログラム的にナビゲートして要素情報を抽出するにはどうすればよいですか?
xml - 有効な SVG XML スキーマ (ecore 生成用) はどこにありますか?
ecore で SVG メタモデルを取得するために、 SVG XML スキーマを EMF にインポートしてみました。ただし、スキーマが有効でないため、インポートは失敗しました。実際、svg.xsd はXMLSchema.dtdを参照し、それ自体は存在しないdatatypes.dtdを参照しています!
その結果、必要なファイルを svg Web サイト (svg.xsd、XMLSchema.dtd、xlink.xsd、xml.xsd ) からダウンロードし、欠落している datatypes.dtd を別の場所からダウンロードしようとしました。ただし、スキーマの検証時に多くのエラーが発生し続けます。
等々。
有効な svg XML スキーマ、またはインスタンスが有効な svg でシリアル化されている svg ecore メタモデルをどこで見つけることができるか知っている人はいますか?
eclipse - Eclipse の外部で Ecore モデルの EMF 検証を実行する
Eclipse 以外で Ecore モデルを検証する方法が見つかりませんでした。誰かがこれを行う方法を知っていますか?