cubicweb的jsonld视图
cubicweb-jsonld的Python项目详细描述
摘要
jsonldcubicweb视图
视图
这个多维数据集提供了一个具有两种不同实现的jsonld视图。
cwetype
的jsonldCWEType实体的jsonld视图也可以访问 显式地或通过BASE_URL/<etype>.jsonldurl。它提供了 使用jsonld规范的模式信息。
假设您有以下架构声明:
class Person(EntityType): name = String() age = Int() birthdate = Date()
相应的jsonld输出为:
{ "@context": { "xsd": "http://www.w3.org/2001/XMLSchema#", "creation_date": { "@id": "https://my-app.org/CWRType/creation_date", "@type": "xsd:dateTime" }, "modification_date": { "@id": "https://my-app.org/CWRType/modification_date", "@type": "xsd:dateTime" }, "cwuri": { "@id": "https://my-app.org/CWRType/cwuri", "@type": "@id" }, "eid": { "@id": "https://my-app.org/CWRType/eid", "@type": "xsd:integer" }, "name": { "@id": "https://my-app.org/CWAttribute/278", "@type": "xsd:string" }, "age": { "@id": "https://my-app.org/CWAttribute/281", "@type": "xsd:string" }, "birthdate": { "@id": "https://my-app.org/CWAttribute/301", "@type": "xsd:date" } } }
jsonld用于任何rset
这个视图有点类似于标准的jsonexportone 有两个主要区别:
- 它在实际数据和 尽量接近 sparql-results-json格式,
- 每个单元格都公开为“jsonld”对象。实体公开 它们的所有属性和dc属性,“final”值公开 他们的类型和价值。
考虑rql查询Any P,N LIMIT 2 WHERE P is Person, P name N, jsonld输出如下:
{ "@context": { "cw": "http://ns.cubicweb.org/cubicweb/0.0/", "xsd": "http://www.w3.org/2001/XMLSchema#", "dcterms": "http://purl.org/dc/terms/", "myapp": "https://my-app.org/CWEType/" }, "cw:head": { "rql": "Any P,N LIMIT 2 WHERE P is Person, P name N", "vars": ["P", "N"], "limit": 2 }, "cw:results": [ [{ "@context": "https://my-app.org/Person.jsonld", "@type": "myapp:Person", "cwuri": "https://my-app.org/1234", "name": "John", "age": 42, "birthdate": "2013/01/01", "creation_date": "2009/08/07 15:20:30", "modification_date": "2009/08/05 11:12:24", "eid": 1234, "dcterms:title": "the result of p.dc_title() on John", "dcterms:description": null }, { "@type": "xsd:string", "@value": "John" }], [{ "@context": "https://my-app.org/Person.jsonld", "@type": "myapp:Person", "cwuri": "https://my-app.org/4321", "name": "Mary", "age": 40, "birthdate": "2015/02/02", "creation_date": "2014/01/02 11:30:20", "modification_date": "2015/01/05 12:24:11", "eid": 4321, "dcterms:title": "the result of p.dc_title() on Mary", "dcterms:description": null }, { "@type": "xsd:string", "@value": "Mary" }] ] }