xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:foaf="http://xmlns.com/foaf/0.1/"
xmlns="http://www.example.org/~joe/contact.rdf#">
Smith
Joe
在这里,RDF对象的代码表示foaf:Person ,但是在我看到的所有其他实例中,此行是rdf:Description 。 我很好奇这个示例是否正确,如果正确,那么此重新定义与标准rdf:Description语法之间有什么区别。 此外,如何使用rdflib在python中实现此命名空间? 我目前有以下代码,该代码创建了示例RDF,但该行的结果是rdf:Description而不是foaf:Person :
import rdflib as rd
from rdflib.namespace import FOAF
joe = rd.URIRef("http://www.example.org/~joe/contact.rdf#joesmith")
joeEmail = rd.URIRef('mailto:joe.smith@example.org')
joeHome = rd.URIRef('http://www.example.org/~joe/')
joeFamily = rd.Literal('Smith')
joeName = rd.Literal('Joe')
g = rd.Graph()
g.bind('foaf', FOAF, False)
g.add((joe, FOAF.mbox, joeEmail))
g.add((joe, FOAF.homepage, joeHome))
g.add((joe, FOAF.family_name, joeFamily))
g.add((joe, FOAF.givenname, joeName))
fp = open('outfile.rdf','wb')
fp.write(g.serialize(format='xml'))
fp.close()