0

私は何か間違ったことをしているのを知っていますが、私は何を知りません... Data Cube語彙を使用してRDFファイルを生成しようとしています。

問題は、その出力が次のようになることです。

<qb:DataSet rdf:about="about...">
<rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string">label.</rdfs:label>
<dcterms:subject rdf:resource="http://purl.org/linked-data/sdmx/2009/subject#2.2"/>

...

しかし、私が得るのは次のとおりです。

<qb:DataSet rdf:about="about...">
    <rdfs:label rdf:datatype="http://www.w3.org/2001/XMLSchema#string">.</rdfs:label>
    <dcterms:subject>
         <rdf:Thing rdf:about="http://purl.org/linked-data/sdmx/2009/subject#2.2"/>
    </dcterms:subject>

コードサンプルを提供することもできますが、これで十分かもしれません...問題はそれほど難しいものではありません。別のリソースを含むリソースが必要です...

ベスト、スレッコ

4

1 に答える 1

4

RDF の 2 つの形式は、基本的に同等です。2 番目の形式には、いくつかの追加情報、つまり追加のトリプルが含まれています。

<http://purl.org/linked-data/sdmx/2009/subject#2.2> rdf:type rdf:Thing .

RDF名前空間の標準的な用語ではありませんが、それは害にはなりません.Thingおそらくowl:Thing. RDF の一般的な経験則では、出力の正確な構文形式について心配する必要はありません。これは、指定された RDF モデルには、すべてがまったく同じトリプルのセットに解析される多くの異なるシリアライゼーションがあり、したがって意味的に同じ意味を持つ可能性があるためです。これは特に XML シリアライゼーションに当てはまります。なんらかの理由 (ツールチェーンの別の部分での処理など) で XML が必要でない限り、Turtle 出力のシリアル化を使用することをお勧めします。はるかにコンパクトで、人間が判読できます。

生成しているモデルについてより具体的なアドバイスが必要な場合は、コードを投稿すると役立ちます。

ところで、他の XML ツールで処理できるように XML必要な場合は、.xml に頼るのではなく、自分で出力を生成することをお勧めしますModel.write()。これは、モデルの内容を少し変更すると、 によって生成される XML に重大な変更が生じる可能性があるためwriteです。これにより、XSLT スタイルシートなどの作成が非常に困難になります。独自のシリアル化を生成することをお勧めします。これは、特定のドメイン モデルに関する知識を使用して出力をより細かく制御できるためです。

于 2012-10-05T07:51:19.223 に答える