datetime - 如何使用 TTL 导入日期时间文字?

标签 datetime sparql rdf virtuoso

我正在将数据从一个 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/

相关文章:

php - 现在制作一个 DateTime 对象并从现在开始计算 1 小时 php

java - 使用 Apache Jena 查询 Wikipedia RDF 文件(Turtle 格式)

日常应用程序中的 RDF、Triples 和语义网

rdf - 如何使用 RDFa 描述 CC BY-SA 3.0 上的衍生作品

javascript - 如何计算和显示以分钟为单位的时差Angular 2

mysql - 统一多种日期格式的简单方法?

python - 在 pandas 中使用日期时间

java - 正则表达式 SPARQL 查询

sparql - 两个资源之间的路径

linq - LinqToRDF 的替代品(将 Linq 引入 RDF 数据的库)?