我正在将数据从一个 RDF 存储复制到另一个 RDF 存储。
dateTime
来自源(XML 格式)的方式是:
<binding name="o"><literal datatype="http://www.w3.org/2001/XMLSchema#dateTime">2016-12-01T15:31:10-05:00</literal></binding>
我尝试按原样获取该值并通过 TTL 文件导入它myFile.ttl
:
<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 的三元组已作为整数
正确插入。
如何使用 TTL 文件导入 dateTime
数据?我正在使用 Virtuoso。我正在 isql
中导入 TTL 文件:
DB.DBA.TTLP_MT(file_to_string_output('myFile.ttl'), '', 'http://my.domain.com/mygraph', 255);
最佳答案
In Turtle , "2016-12-01T15:31:10-05:00"
是一个无类型的带引号的文字——即一个字符串。
您需要其中之一 -
-
"2016-12-01T15:31:10-05:00"^^<http://www.w3.org/2001/XMLSchema#dateTime>
-
"2016-12-01T15:31:10-05:00"^^xsd:dateTime
至于5
(无引号),它不是带引号的文字,而是一个数字字符串,因此您很幸运能够自动输入。严格来说,用于此目的的 Turtle 可能(您没有包含用于此目的的 XML)是其中之一 -
-
"5"^^<http://www.w3.org/2001/XMLSchema#integer>
-
"5"^^xsd:integer
关于datetime - 如何使用 TTL 导入日期时间文字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41070311/