TTL文件格式 - 我不知道这是什么

时间:2018-04-21 14:00:41

标签: json xml file graph turtle-rdf

我有一个具有结构的文件,但我不知道它是什么格式,也不知道如何解析它。文件扩展名是ttl,但我以前从未遇到过。

文件中的某些行如下所示:

<http://data.europa.eu/esco/label/790ff9ed-c43b-435c-b6b3-6a4a6e8e8326>
    a                   skosxl:Label ;
    skosxl:literalForm  "gérer des opérations d’allègement"@fr .

<http://data.europa.eu/esco/label/98570af6-b237-4cdd-b555-98fe3de26ef8>
    a                   skosxl:Label ;
    esco:hasLabelRole   <http://data.europa.eu/esco/label-role/neutral> , <http://data.europa.eu/esco/label-role/male> , <http://data.europa.eu/esco/label-role/female> ;
    skosxl:literalForm  "particleboard machine technician"@en .

<http://data.europa.eu/esco/label/aaac5531-fc8d-40d5-bfb8-fc9ba741ac21>
    a                   skosxl:Label ;
    esco:hasLabelRole   "http://data.europa.eu/esco/label-role/female" , "http://data.europa.eu/esco/label-role/standard-female" ;
    skosxl:literalForm  "pracovnice denní péče o děti"@cs .

它继续这样400多MB。对于某些节点,但不是所有节点,都添加了附加属性。

它让我想起某种形式的XML,但是我没有多少经验使用不同的格式。它看起来像是一个可以作为图形的模型。 你知道它是什么数据格式,以及我如何在python中解析它?

2 个答案:

答案 0 :(得分:5)

是的,@ Phil是正确的,它是用于存储RDF数据的龟语法。

我建议您将其导入某种RDF商店,而不是尝试自己解析400MB +。您可以使用GraphDBBlazegraphVirtuso并继续列表。搜索RDF商店应该提供许多其他选择。

然后,您可以使用SPARQL使用Python RDFlib查询RDF存储(类似于关系数据库的SQL)。这是来自RDFLib的example

答案 1 :(得分:4)

看起来像turtle - 语义网的数据描述语言。

:为两个不同的语义库指定了label和:label,这两个语义库被定义为共享数据(esco和skosxl在使用搜索引擎找到这些库时应该没什么问题,假设数据在语义Web中)。 :文字形式可以被认为是XML标签中的值。

它们代表数据结构中的本体:

主题:10 谓词:姓名 对象:约翰

至于python,将数据作为文件读取,使用主题作为字典的键,将值放在数据库中,不清楚你想对数据做什么。

语义数据是开放的,不完整的,并且可能具有不寻常的复杂结构。上面的例子非常简单,上面提到的引物可能有所帮助。