問題タブ [ocl]
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.
uml - 集約が別の集約のサブセットであることを UML クラス図で示す
次の 2 つの集計を含むクラス図があります。
contentCategories
はカテゴリの動的配列であり、currentCategory
常にその配列の要素ですが、個別のメンバー変数として維持されます。contentCategories
常にOCLの要素であるという制約を示す必要があります。私はこれを正しく行いましたか?そうでない場合、それを行う正しい方法は何ですか?
事前にご協力いただきありがとうございます。
eclipse - OclInEcore: 操作の戻り型の問題
Comp オブジェクトの親を Set に収集することになっている "Comp" クラスのコンテキストで、oclInEcore エディターで次の操作を記述したいと考えています。
問題は、ocl が Set(Comp) を戻り値の型として受け入れないことです。ただし、Comp[*] を受け入れますが、これは無効な呼び出しになります (戻り値の型に互換性がないためだと思います...)。
eclipse-emf - Ecore 分類子を使用した OCL 制約 - 未知の型の例外
OCLinEcore エディターを使用して、OCL で定義されたいくつかの不変式を持つ Ecore モデルを開発しています。私のモデルでは、一部の要素が EClassifier への参照を持っています。一部の OCL 制約では、参照されている EClassifier が EDataType か EClass かを確認する必要があります。これは、OCLinEcore にある、私が持っているモデルに似たモデルです。
ただし、モデルの動的インスタンスを検証しようとすると、次のメッセージで例外が発生します。
'Coupling' の 'Compatibility' 制約の評価を委譲中に例外が発生しました: 不明な型 ([ecore, EDataType])
OCL インタラクティブ コンソールで式を試すと、正しい結果が得られます。不変条件を定義するときに何か間違ったことをしていますか? Ecore 型を使用する不変式を作成するにはどうすればよいですか?
regex - 有効なIPv4文字列を作成するためのOCLinEcoreとRegex
Ecoreモデルがあり、いくつかのOCL制約を追加しようとしています。
有効なIPv4形式のプロパティ(文字列)を作成しようとすると、問題が発生します。正規表現を使用する必要があると思いますが、OCLinEcoreで正規表現を使用する方法がまったくわかりません。
constraints - OCL 2.0 の制約
こんにちは、私たちは現在 MagicDraw 17.0 を使用しています。そして、次の問題が発生しました。オブジェクト ダイアグラム内のオブジェクトに接続されたオブジェクトがあるかどうかを検証したいと考えています。
たとえば、オブジェクト「man」が別のオブジェクト「address」へのリンクを持っているとします。気圧 私たちはこれを試しています
ここで、address は、2 つのオブジェクトを接続する関連付けにおける address オブジェクトの役割であり、人間に制約が課せられます。動作しません。
uml - OCLのメソッドの入力パラメーターのテストタイプ
私はUMLに次のようなクラスを持っています(ドイツ語ですが、問題ではないと思います):
最初のメソッドは、4つの「 Rohstoffkarte 」の配列を取ります。これは抽象クラスであり、5つの具体的なサブクラスがあります。次に、配列内の4つのインスタンスすべてが同じサブクラスからのものであることを(OCLを使用して)確認します。
これを行う方法はありますか?私はMagicDrawを使用しています。
ありがとう。
eclipse-emf - オンザフライのXTextモデルの逆シリアル化
XText Grammar/MetaModelに準拠したテキストを含むOpaqueActionsを持つUMLモデルがあります。ACCELEO変換を使用して、UMLモデルをテキストに変換しています。ACCELEOスクリプトから、モデル内の不透明なアクションのテキストを入力として受け取り、関連するモデルのルート要素を出力として提供するJavaサービスを呼び出して、ACCELEOからシームレスに使用できるようにします。
この目的のために、次のメソッドを使用してJavaクラスを定義する必要があります。Stringをパラメーターとして受け取り、XTEXTを呼び出し、テキストを解析し、正しい場合は、関連するEMFモデルを生成します。テキストがOCLであると仮定します(そうではありませんが、手順は同じだと思います)、どのようにそれを行いますか?
eclipse-emf - OCLHelper をラップする Java サービスを呼び出す Acceleo
メインの UML モデルをナビゲートする ACCELEO スクリプトから、UML エッジに含まれる条件の OCL モデルを取得する必要があります。この目的のために、次の Java クラスを定義しました。
}
これは、それをラップする ACCELEO モジュールです。
そして、メインのACCELEOモジュールからそれを呼び出そうとする方法は次のとおりです。
うまくいかず、理由がわかりません。何か考えはありますか?
アップデート
ヘルパーが実際にこの例外を出力していることに気付きました
私は何を間違っていますか?
eclipse-emf - FORループ内で変数をインクリメントします
FORループ内で条件が真になる回数を数えようとしています。テンプレートに追加の変数(FOUND:Integer)を宣言し、[IF]条件が「true」になるたびにインクリメントしようとしていますが、変数は最初にのみインクリメントされ、その後元に戻ります。価値。基本的に、最初にFOUND = 1の場合、すべてのループで2が出力されます。
これは私が使おうとしているコードです:
どうすればこれまたは同様のことを達成できるか知っていますか?ありがとう