問題タブ [rdf4j]
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.
sparql - RDF4Jでは型付きリテラルは「トリッキー」ですか?
RDF では、単一のプロパティーによって複数のリテラル値にバインドされたエンティティーを持つことができます。これらの値は、明確にするために入力することもできます。
SPARQL では、必要な型だけを照会できます
そのようなデータ型によって制約できる RDF4JのgetStatementのようなものはありますか?
java - SPARQL/SPIN クエリ/ルールを Java から RDF 構造に変換する方法は?
TopQuadrant Composer Free Edition (TBC FE) を使用して、RDF として保存されている OWL オントロジーに SPARQL/SPIN ルール (主に SPIN コンストラクター) を埋め込んでいます。このプロセスの一部は、SPARQL ソース コードが、 http://spinrdf.org/spで指定されたスキーマのhttp://spinrdf.org/sp.htmlに従って、RDF 構造でトークン化/エンコードされることです。SPIN ルールを実行するために RDF4J によって実際に解釈されるのは、この構造です。
また、RDF4J をトリプル ストア、推論、SPARQL エンドポイント、および SPIN ルール エンジンとして使用しています。さらに、データとルールを操作するためのカスタム Java コードと GUI を生成しています。
私の質問は、SPARQL/SPIN ソース コードを RDF としてエンコードするために Java で何を使用できるかということです。クエリ結果をエンコードする方法(別のスタックオーバーフローの質問/応答で回答されました)ではなく、クエリ自体をエンコードする方法を尋ねていることに注意してください。その理由は、TBC FE だけに依存するのではなく、独自の Java コードから SPIN ルールを編集できるようにしたいからです。
また、元の SPARQL クエリ テキストを保存するオプションを認識していることにも注意してください。しかし、トークン化/構造化された RDF は正しく解釈されるのに対し、これは正しく解釈されないというのが私の経験です。したがって、構造化された RDF を使用する必要があります。
このエンコードを行うための Java コードの多くが、おそらく Apache Jena の一部として既に作成されていることを願っています。どこを見るべきかについてのポインタが必要です。
ありがとう!
PS: これは、TBC FE によってエンコードされた SPIN コンストラクターの例の始まりです。これには、SPARQL/SPIN ソース コードの元の sp:text と、構造化された RDF の開始 (sp:text ブロックの後) の両方が含まれます。SPARQL ソース コードから Java を使用して生成できるようにする必要があるのは、構造化された RDF です。