問題タブ [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.

0 投票する
6 に答える
1509 参照

ocl - allInstance が isUnique でないのはなぜですか?

属性 noClient を持つクラス Client があります。同じ noClient を持つクライアントが存在しないことを確認したいと思います。

以下の解決策がありますが、先生は適切ではないと言いました。制約が繰り返される可能性があるためです。どうしてか分かりません。そして、別の解決策を見つける必要があります。

私の問題は、別の解決策を見つけることができる上記のコードの問題が何であるかさえわからないことです。

これは学校の質問です。そこに挑戦するのは十分ではないかもしれませんが、理解するために何時間も費やしています. 私はここで立ち往生しています。

0 投票する
1 に答える
171 参照

uml - キーと値のペアがハッシュテーブルに存在するかどうかをチェックするための OCL 2.0 制約

OCLの反復機能を使用して、特定のキーと値のペアが常にHashTableに存在するかどうかを確認するOCL制約を作成する方法は? 私はOCLの初心者です。ヒントや例は役に立ちます。

0 投票する
2 に答える
351 参照

emf - Ecore 包含関係での重複を避ける

私は Ecore メタモデルを持っています。ノードPeerには、ノードMessageとの「 in 」という包含関係 0..*があります。ピアに含まれるすべてのメッセージに異なる名前を付けたいです。したがって、ピアは同じ名前の 2 つのメッセージを持つことはできません。

  • 属性Message.nameのオプションid=trueを入れました
  • オプションEKeys=nameの関係Peer.inを入れました
  • メッセージのメソッドhashCode()およびequals()をオーバーライドして、属性に基づいてそれらを計算しようとしました

しかし、モデルでは、ピア. 私は、OCL が私が望むことを達成するのに役立つのではないかと考えました。

実際、私は M2M に ATL を使用しています。その結果、ピアには多くの同等のメッセージが含まれています。ピアがメッセージを追加する前にそのメッセージを既に持っているかどうかにかかわらず、ATL ルールで手動で制御することなく、制約がメタモデルで暗黙的であることを望みます。

ありがとうございました

ノード ピア

ノード メッセージ

0 投票する
3 に答える
369 参照

associations - OCL: 複数の関連付けをチェック

私は大学院と学部の 2 つの関連付けを持つ学生クラスを持っています。学生が両方に関連付けられていないことを確認する不変条件を作成しようとしています。私はOCLに非常に慣れておらず、これや構文へのアプローチを知りません。Student.allInstances->forAll(something here) のようなものが必要だと考えています

しかし、私は知りません。

ありがとう!

0 投票する
2 に答える
446 参照

invariants - OCL 定義不変

添付のクラス図で、ローンを要求する人の年齢が 18 歳以上であることを示す不変条件を定義する必要がある場合、これは次のようになります。

また

2つの違いは何ですか?

ここに画像の説明を入力 ご指導ありがとうございました

0 投票する
3 に答える
208 参照

transformation - ecore モデル (付属の OCL 式) を合金仕様に変換する

Ecore (メタ) モデルを Alloy 仕様に変換するツールまたはエンジンがあるかどうかを調べています。

付随する OCL 式を考慮してこの変換を行う場合、それは素晴らしいことです :)

どうも

0 投票する
1 に答える
408 参照

uml - OCL での UML 集約

与えられた問題の UML ダイアグラム

操作の前後の条件を作成するタスクが与えられました。

操作は、指定されたタイトルのプロジェクトのすべてのバグ レポートを多数返す必要があります。前提条件については、次のことがわかりました。

それでも、プロジェクト内の成果物の集約を処理する方法に大きな問題があります

それが単なる協会である場合、私は次のことを行います。

しかし、集約を処理する方法がわかりません.Googleでそれに関する有用な情報を見つけることができないようです.

0 投票する
1 に答える
129 参照

emf - OCL の関連付けの allInstances

OCL 式との関連付けのすべてのインスタンスにアクセスするにはどうすればよいですか。

クラスAからクラスBへのアソシエーションの名前であるrefNameという名前の変数にアソシエーション名があるとします。Aの特定のインスタンス(aなど)について、明らかにSET( B)?

refName は関連付けの名前ではなく、その値が関連付けの名前である変数であることに注意してください。したがって、 a.refName は機能していません!

ありがとう

0 投票する
2 に答える
542 参照

eclipse - Acceleo M2T - 生成されたファイルにタイムスタンプを書き込む

*.mtl ファイルに定義されたさまざまな Acceleo テンプレートを使用して、いくつかのファイルを生成しています。

これらのファイルの一番上に、次のようなものを書く必要があります。

ファイルを生成するたびに、このタイムスタンプを動的に生成するにはどうすればよいですか?

ありがとう!

編集:以下で説明するようにこれを解決しました。

宣言の直後に、module宣言を追加queryします。

次に、 というクラスを作成し、GenerationSupportというメソッドを追加しgetCurrentTime()ます。