问题
In a Python script using RDFLib 3.0, I get the following XML-Output when serializing my triples:
<rdf:RDF
xmlns:_3="http://www.my-example.intra/ontologies/ci.owl#"
>
How can I define specific namespace prefixes for those anonymous _x-prefixes automatically assigned by RDFLib (or it's XML-Serializer respectively)?
<rdf:RDF
xmlns:ex="http://www.my-example.intra/ontologies/ci.owl#"
>
Many thanks in advance for your responses!
回答1:
I eventually found a solution to this by looking at some (quite messily distributed) rdflib doc files. For the (Conjunctive)Graph storing the triples, call
mygraph.bind(prefix, URIRef(url))
i.e.
mygraph.bind('ex', URIRef('http://www.my-example.intra/ontologies/ci.owl#'))
Passing 'False' as 3rd argument overrides existing namespace prefix bindings.
来源:https://stackoverflow.com/questions/4427607/rdflib-namespace-prefixes-in-xml-serialization