我正在使用schema.org在Python中使用RDFlib创建RDF / XML文件,并试图像这样将元素嵌套到PropertyValue元素中,但是它不起作用...
g.add((p, n.PropertyValue, (p, n.minValue, Literal(130.15))))
我正试图以这个结果结束...
<schema:PropertyValue>
<schema:maxValue rdf:datatype="http://www.w3.org/2001/XMLSchema#double">308.0</schema:maxValue>
<schema:name>Temperature</schema:name>
<schema:minValue rdf:datatype="http://www.w3.org/2001/XMLSchema#double">130.15</schema:minValue>
</schema:PropertyValue>
如何在RDFlib中执行此操作?预先感谢。
根据您的数据,一个空白节点[],名称为minValue和maxValue属性:
[] a <https://schema.org/PropertyValue> ;
schema:name "Temperature" ;
schema:minValue "130.15"^^xsd:double ;
schema:maxValue "308.0"^^xsd:double ;
最好,对PropertyValue使用URI:
<http://example.org/propval/1>
a <https://schema.org/PropertyValue> ;
schema:name "Temperature" ;
schema:minValue "130.15"^^xsd:double ;
schema:maxValue "308.0"^^xsd:double ;
使用此RDFlib Python:
SDO = Namespace("https://schema.org/")
g.bind("schema", SDO)
pv = URIRef("http://example.org/propval/1")
g.add((pv, RDF.type, SDO.PropertyValue))
g.add((pv, SDO.name, Literal("Temperature")))
g.add((pv, SDO.minValue, Literal("130.15", datatype=XSD.double)))
g.add((pv, SDO.maxValue, Literal("308.0", datatype=XSD.double)))