2016-12-09 10 views
2

RDFストアから別のRDFストアにデータをコピーしています。私はあるとして値を取り、TTLファイルmyFile.ttlを経由して、それをインポートしようTTLを使用してdateTimeリテラルをインポートするには?

<binding name="o"><literal datatype="http://www.w3.org/2001/XMLSchema#dateTime">2016-12-01T15:31:10-05:00</literal></binding> 

dateTimeは(XML形式)のソースから来ている方法がある

<http://test.com> 
    a <http://test.com/catalog/someType> ; 
    <http://test.com#modifiedDate> 
     "2016-12-01T15:31:10-05:00" ; # http://www.w3.org/2001/XMLSchema#dateTime 
    <http://test.com#numberTest> 
     5 . # http://www.w3.org/2001/XMLSchema#integer 

が、文字列として"2016-12-01T15:31:10-05:00"を挿入します。オブジェクト5の最後のトリプルは、integerとして正しく挿入されています。

TTLファイルを使用してdateTimeデータをインポートするにはどうすればよいですか?私はVirtuosoを使用しています。私はisqlにTTLファイルをインポートしています:

DB.DBA.TTLP_MT(file_to_string_output('myFile.ttl'), '', 'http://my.domain.com/mygraph', 255); 
+0

- 厳密に言えば、このためのタートルはおそらく、(あなたがこのためにXMLが含まれていませんでした)次のいずれかでなければなりませんRDF-タートルに? Virtuosoは両方を取り込みます... – TallTed

+0

私は最初にソースからいくつかのデータをフィルタリングしてターゲットに適用し、TTLフォーマットはデータを簡単に変換することができました。しかし、今私はちょうどすべてをインポートするので、ソースXMLを取り込み、それをインポートすることもできます。 – amphibient

答えて

2

代わり"val" # type形式で、次のように働いた:でも、整数は^^<type>表記と引用符でラップされる必要があること

<http://test.com> 
    a <http://test.com/catalog/someType> ; 
    <http://test.com#modifiedDate> 
     '2016-12-01T15:31:10-05:00'^^<http://www.w3.org/2001/XMLSchema#dateTime> ; 
    <http://test.com#numberTest> 
     '5'^^<http://www.w3.org/2001/XMLSchema#integer> . 

は注意を。

+0

タートルはいくつかの数字の省略形をサポートしています。 '5'は自動的に' xsd:integer'として扱われるか、 '5.0'は' xsd:decimal'として解析されます – AKSW

4

In Turtle,"2016-12-01T15:31:10-05:00"は、タイプのないリテラル、つまり文字列です。 、それは引用符付きリテラルではありません

  • 5(引用符なし)については"2016-12-01T15:31:10-05:00"^^<http://www.w3.org/2001/XMLSchema#dateTime>
  • "2016-12-01T15:31:10-05:00"^^xsd:dateTime

、とある -

あなたはこれらの代わりの1を持っている必要があります数字の文字列なので、自動入力で運が良かったです。あなたはRDF/XMLを変換しているのはなぜ

  • "5"^^<http://www.w3.org/2001/XMLSchema#integer>
  • "5"^^xsd:integer
関連する問題