問題タブ [turtle-rdf]

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 投票する
1 に答える
810 参照

namespaces - Jena RDF モデルで使用されるすべての名前空間を取得する方法

com.hp.hpl.jena.rdf.model.Model.listNameSpaces() を使用して、Jena RDF モデルの名前空間を取得しています。

しかし、モデルには、listNameSpaces メソッドによってリストされていない名前空間を持つステートメント オブジェクトを含めることができることに気付きました。

たとえば、カメラ グラフ ( http://www-users.cs.york.ac.uk/~jc/teaching/arin/camera.owl.turtle ) には次のオブジェクトが含まれていますが、それらの名前空間は名前空間に表示されません。リスト:

http://www.dbpedia.org/resource/ Nikon http://www.w3.org/2001/XMLSchema# decimal

これらの 2 つの ns がリストされない理由を知っている人はいますか? ありがとう。

// 圧縮コード:

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

rdf - Turtle の GML 文字列

Turtle ファイルで OGC GeoSPARQL ボキャブラリを使用しようとしています。ここにフラグメントがあります:

この表記法は、私が使用するオンライン RDF バリデーター ( http://www.rdfabout.com/demo/validator/ ) によって拒否されます。これは、"EPSG:28992" などの二重引用符が原因です。これは、二重引用符を単一引用符に変更することで解決できます。GMLが無効になることはないと思います。しかし、二重引用符は GML の生成方法であるため、そのままにしておきます。

RDF/XML では、解決策は次のように CDATA ブロックを使用することです (GeoSPARQL ドキュメントの例。はい、WKT ですが、同じ原則が適用されます)。

タートルでそのようなことをする方法はありますか? または、このようなケースを処理する他の方法はありますか?

前もって感謝します!

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

rdf - 複数のサブジェクトが空白ノードの同じリストを指していることを確認する

の次のインスタンスを考えてみましょうSomeClass:

すべてのインスタンス ( some_thing2some_thing3など) が、空のノードの同じリストをhasChainTo指すようにする必要があります (そのコピーが 1 つしかないため)。チェーンが非常に深くなり、この構文は各チェーン ( 、など)を書き出すのに非常に流動的であるため、空白ノード構文のリストを維持する必要があります。SomeClass2SomeClass3

基本クラスとそこから subClassOf を単純に作成すると、hasChainToプロパティは継承されますが、それが指しているオブジェクトは継承されません。これは直感的には理にかなっていますが、他の動作が必要です。

これはどのように達成できますか?

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

rdf - タートルファイルでコレクションの数を見つける

最初にステートメントからオブジェクトを抽出してから、関数の1つを使用しようとしましたisBag() isSeq() and isAlt()が、エラーが発生しました

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

rdf - Protege 4 - ネストされた空白ノードを再フォーマットする RDF の保存

Protege を試すために TopBraid から切り替えました。

これに似たRDFのオントロジーがあります:

このネストされた空白ノードの構文は、チェーンが非常に深くなり、チェーンが時々変更され、新しいチェーンが追加される可能性があるため、この構文は流動的で非常に読みやすく、保守しやすいため、うまく機能するという考えです。

それだけでなく、結果のグラフに対するクエリを既に作成しています。

問題は、これを Protege にインポートしてすぐに保存すると、結果が次のように再フォーマットされることです。

結果として得られる RDF は、クエリ システムを完全に破壊するだけでなく、このアプローチを使用して「連鎖」を表現することの他の利点も破壊します。

これを回避する方法はありますか?そうでない場合は、TopBraid に戻らざるを得なくなる可能性があります。

更新:問題の再現は次のとおりです。

私はbugTest.ttlそれを書いてProtegeで開き、すぐに名前を付けて保存>タートル> bugTestOutput.ttl

https://dl.dropboxusercontent.com/u/13814624/bugTest.ttl https://dl.dropboxusercontent.com/u/13814624/bugTestOutput.ttl

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

rdf - RDF - rdf:type をリスト内のすべての項目に配布する

次の RDF を検討してください。

その場合、リストsemapi:hasChainTo rdfs:range semapi:BaseClassであることを意味します。rdf:type semapi:BaseClass

私が言いたいのは、リストの各項目rdf:type(ei. [C1] rdf:type semapi:BaseClass, [C2] rdf:type semapi:BaseClass, ...) であるということです。

これどうやってするの?フクロウは必要ですか (できれば必要ありません)?

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

jena - Sesame が Jena によって作成された Turtle ファイルを開けない

Jena によって作成されたTurtleファイルが Sesame で開かれません。詳しく分析したところ、Jena は名前空間のプレフィックスを使用しているのに対し、Sesame は競合する名前空間を使用していることがわかりました。どうすればこれを解決できますか?

セサミが使っているのはこれです。

これはイエナが使用するものです: