1

RDFに問題があります。私は次のように定義されたトリプルをいくつか持っています:

<User rdf:about="#T">
 <hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string">T</hasName>
 <hasFavourite rdf:resource="#x"/>
 <hasFavourite rdf:resource="#y"/>
</User>

整数を関連付ける必要があるため、(user、hasFavourite、x)および(user、hasFavourite、y)トリプルに追加したいと思います。トリプルに整数を追加する方法が少しわかりません。これは単純なことだと思いますが、RDFについて頭を悩ませているだけなので、助けていただければ幸いです。

ありがとうアリー

4

2 に答える 2

1

したがって、私が質問とdajobeの投稿に対するあなたのコメントを正しく読んでいる場合、おそらく次のようなものが必要になるでしょう(はるかに読みやすいので、タートル表記で):

@base <http://example.org/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix : <> .

:T
    :hasFavourite :fave1, :fave2 ;
    :hasName "T" ;
    a :User .

:fave1 a :Favourite ;
       :band :x ;
       :playCount 10 .

:fave2 a :Favourite ;
       :band :y ;
       :playCount 4 .

:x a :Band ;
   :hasName "Band 1" .

:y a :Band ;
   :hasName "Band 2" .

したがって、これにより、各ユーザーのお気に入りの再生回数を個別に保持でき、必要に応じて新しいお気に入りを作成することで、各バンドをさまざまなユーザーがお気に入りとして選択できます。

もちろん、私はもちろん完全に間違っている可能性があり、これはあなたが実際に望んでいるものとはまったく異なる場合があります!

于 2009-12-09T11:11:46.470 に答える
1

ここで何をモデル化したいかは完全にはわかりません。ユーザー リソースに整数値のトリプルがあること、または X および Y リソースに整数値があること。より複雑なので、後者を仮定します。

<?xml version="1.0" encoding="utf-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns="http://example.org/ns#">
<User rdf:about="#T">
 <hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string">T</hasName>
 <hasFavourite rdf:resource="#x"/>
 <hasFavourite rdf:resource="#y"/>
</User>
 <hasFavourite rdf:about="#x">
   <integerThatMeansSomething rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">10</integerThatMeansSomething>
 </hasFavourite>
 <hasFavourite rdf:about="#y">
   <integerThatMeansSomething rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">20</integerThatMeansSomething>
 </hasFavourite>
</rdf:RDF>

これは Turtle で読むのが少し簡単です: (rapper -q -o turtle foo.rdf 'http://example.org/ns#'私のRaptorソフトウェアから変換)

@base <http://example.org/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix : <> .

:T
    :hasFavourite :x, :y ;
    :hasName "T"^^<http://www.w3.org/2001/XMLSchema#string> ;
    a :User .

:x
    :integerThatMeansSomething 10 ;
    a :hasFavourite .

:y
    :integerThatMeansSomething 20 ;
    a :hasFavourite .

免責事項: 私は rdf/xml を編集し、Turtle を発明し、上記のソフトウェアを作成しました!

「T はユーザーで、2 つのお気に入り x と y と文字列名があります。X はお気に入りで、値が 10 の整数プロパティがあります。」Yの場合など。

前者の場合、rdf/xml はより単純です。

<User rdf:about="#T">
 <hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string">T</hasName>
 <hasFavourite rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">10</hasFavourite>
 <hasFavourite rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">20</hasFavourite>
</User>
于 2009-12-09T03:16:23.210 に答える