問題タブ [rule-engine]
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.
.net - インテリセンスでテキストを編集するためのコントロールはありますか?
アプリケーションルールエンジン(または言語定義)に基づいてクエリを入力するための.netコントロール(できればWPF)はありますか?インテリセンスまたはJira高度なフィルターを備えたSQLのようなものですか?
言い換えれば、ユーザーがこのようなものをテキスト領域に入力できるようにしたいのです。
アプリケーションは、インテリセンスのような次の有効なトークンを提案します。
javascript - Javascript の軽量ルール エンジン
Javascript で実装された軽量ルール エンジンの提案を探しています。
このような実装の理由は、少数のルール セット (20 未満) を使用して、非常に軽量で高速なブラウザー ベースのシミュレーションを構築するためです。シミュレーションは、サーバーに戻る必要なく、6 つのパラメーターを使用してルールを実行し、ブラウザーに結果を表示します。いくつかのラジオ ボタン、チェックボックス、テキスト ボックス、およびパラメーターを制御するスライダーを備えた UI を考えてみてください。シミュレーションは、パラメーターの変更に基づいてすぐに再実行されます。
asp.net - ASP.netを使用してゼロから調査プラットフォームを構築することを計画しています
スクリプトインターフェイスも提供するASP.NET調査プラットフォームを構築することを計画しています。ジャンプスタートを提供するための既存のフレームワークまたはオープンソースプラットフォームがあるかどうか疑問に思いました。
また、ルールエンジンは便利ですか?...
formatting - HP Exstreamでルールをネストする方法は?
HP Exstream(以前のExstream SoftwareのDialogue)バージョン5.0.xを使用しています。ブール式を「ルール」として定義および保存する機能があります。
これを使って約6年になりますが、別のルールでルールを定義できるかどうか誰か知っていますか?ポップアップウィンドウには「VBのような」言語があるので、変数関係式の形式を使用する必要はありませんが、ドキュメントは手元にありません。:-(
全体の逆を繰り返すのではなく、「Foo」の観点から「NotFoo」というルールを定義したいと思います。(はい、それは遅れますが、私が維持している他の例のように、おそらくそれは私がしなければならないことです。)実際、ネストされたルールは、それを行う方法を理解できれば、多くの用途があります。
c++ - C++ での大規模な決定木ベースの AI の設計パターン
私は現在、c++ で書かれたゲームの AI を書いています。AI は概念的にはかなり単純で、意思決定ツリーを実行して適切なアクションを選択するだけです。以前は意思決定エンジンにプロローグを使用していましたが、他の開発者が c++ を使用しており、プロローグ コードの統合に関するいくつかの問題があるため、現在は c++ に移植しようとしています。
現在、プロローグ (100 以上) には多くの事実とルールがあります。if game_state then do action xyz という形で多くのことを表現します。ほとんどのルールは非常に単純ですが、いくつかはかなり複雑です。私は有限状態マシンのアプローチを検討しましたが、それはより大きな状況にうまく対応できていないようでした。これを C++ でコーディングする最初の試みは、if then else case ステートメントの巨大な悪夢でした。この種のコードがどこにでも現れました:
複雑さはすぐに手に負えなくなりました。
この種の問題を C++ でコーディングする良い方法があれば教えてください。この種の状況に対処するための適切な設計パターンはありますか? ロジックがソース内に含まれている必要はありません。C++ からアクセスできる必要があるだけです。唯一の実際の要件は、適度に高速であることです。
また、ルール エンジンも調べましたが、十分に高速であれば適切である可能性があります。適切なオープン ソースの C++ ルール エンジンがあるかどうか知っていますか?
python - データにフィルターを適用するためのフレームワークまたはパターンはありますか?
問題:
Django アプリケーションに、javascript に渡される階層データがいくつかあります。このデータの一部は、javascript 内のいくつかのデータ クラスの状態に基づいて、javascript から除外する必要があります。バックエンド (Django) でフィルターを定義し、JavaScript で適用する方法が必要です。
フィルターは次のようになります。
フィルターは条件付きにすることもできます。
そして、おそらく次のような条件の任意の組み合わせ:
一部のキーには許可された値のセットがあり、他のキーには自由なテキスト フィールドがあります。このシステムは、ビジネス タイプのエンド ユーザーが使用できる必要があります。そうでなければ、このシステムを使用する意味がありません。主な目標は、エンド ユーザーによって完全に管理されるシステムを持つことです。これらの目標のほとんどが実現できれば、私はそれを勝利と考えます。
ルール エンジンはこのシナリオに適していますか? この動作または明確に定義されたパターンを実装するために利用できる python または django フレームワークはありますか?
更新(S.Lottの回答に基づく):
Django ORM を使用してデータをフィルタリングすることについて話しているのではありません。すべてのデータとすべてのルールを JavaScript に渡したいので、JavaScript アプリケーションは「切断」されたままになります。
私が必要としているのは、ユーザーにこれらのルールとルールの組み合わせを定義させ、それらをデータベースに保存する方法です。次に、ページが読み込まれると、このデータとすべてのルールが取得され、ページに配置されます。ルールの定義は、パズルの重要なピースです。
oracle - Oracle Rules ManagerとExpression Filterは既存の標準に基づいていますか?
そうでない場合、ルール エンジン ストレージの標準は存在しますか?
また
Oracle Rules Engine構文のC#実装はありますか?
prolog - プロローグ Web プログラミング
職場では、Web アプリのルール エンジンのバックエンドとして Prolog を使用するという議論がありました。
これは既存のシステムにどのように結び付けられますか?
プロローグモジュールの呼び出しを可能にする他の言語用の利用可能なプロローグライブラリはありますか?
c# - RuleSetDialog でラムダ式を使用して条件を定義する方法はありますか?
アプリケーションで WF のルール エンジンを使用していますが、一部の条件では、条件のコレクションを検索する必要があります。次のようなことをするのが理想的です:
残念ながら、コレクションの Linq 拡張機能にアクセスできないようです。param forSystem.Data.Linq
を渡そうとしましたが、Linq メソッドが表示されませんでした。TypeProvider
RuleSetDialog
どんな助けやアイデアも大歓迎です!
java - ルールエンジンによる検証
テキストベース(XMLなし)のメッセージを処理します。私たちの目標はメッセージを検証することです。内容が正しければメッセージは有効です。メッセージのルールを表現するために、XMLで定義された独自の言語を開発しました。より複雑なルールを追加する必要があり、今度は他の代替案を検討して実際のルールエンジンを使用するときが来たと思います。これらのタイプのルールをサポートします。
- 値のリストまたは正規表現の名前ex{SMITH、MOORE、A *}
- メッセージに名前があります-
- メッセージに名前がありません
- if条件thenname= John else name = Jane 条件は単純であり、論理演算子が含まれていないことに注意してください。
これらのタイプのルールをサポートする必要があります。
- if then elseしかし、条件に論理演算子が含まれている
- for ...ループ:
- メッセージ内のすべてのお客様には、米国から少なくとも1つ、フランスから少なくとも1つが必要です。
- メッセージに含まれるすべての顧客に対して、米国からの顧客で、年間1000ドル以上を購入している顧客が少なくとも5人必要です。
- Johnという名前の顧客の場合、姓はDoeである必要があります
- John<15という名前の顧客の総数
- 会社の名前は、メッセージ内の別の場所にある会社の名前と同じです。
ルールは、処理するメッセージの種類によって異なります。そのため、次のようないくつかの既存のソリューションを調査していました。
- ジェス
- OWL(整合性チェック)
- Schematron(メッセージをXMLに変換することにより)
Javaで開発することを考えると、最良の選択肢は何でしょうか。考慮すべきもう1つのことは、エラーの説明、エラーの場所(行と列の番号)などのエラー報告を実行できる必要があるということです。