我正在使用rdflib创建一个图表。我想使用".owl "文件中的一些术语。我怎样才能将这个 owl 文件导入为 MyImportedTerminology
与rdflib,并访问其条款,这样我就可以在图中做这样的事情了?
g.add((Thing, OWL.sameAs, MyImportedTerminology.OtherThing))
我专门试了一下 owlready2,。
MyImportedTerminology = get_ontology("file:///path/to/owl/file.owl").load()
但我似乎不能直接使用它. 我得到的错误。Object MyImportedTerminology.OtherThing must be an rdflib term
任何关于这个的帮助都将是感激的。
所以owlready2和RDFlib不是一回事,也就是你这个问题的标签。
RDFlib比owlready2更低级,它可以让你直接使用URI、命名空间和字元来构建RDF triples。你不需要导入OWL文件来在RDFlib中使用它的术语,你只需要从你的OWL文件中引用,你可以这样做。
from rdflib import URIref
g.add((Thing, OWL.sameAs, URIRef("http://namespace-from-owl-file.org#OtherThing")))
你也可以为你的OWL文件中的命名空间创建一个命名空间对象,然后这样做。
from rdflib import Namespace
MYNS = Namespace("http://namespace-from-owl-file.org#")
g.add((Thing, OWL.sameAs, MYNS.OtherThing))