簡體   English   中英

使用前綴從 rdflib 圖中顯示實體

[英]Using prefixes to display entities from an rdflib graph

我正在使用 rdflib 將 RDF 圖加載到 Python scrpit 我想使用定義的前綴打印主題列表我沒有找到任何應​​用前綴的方法。 我的代碼

import rdflib
filepath = "... my file path ..."
gs = rdflib.Graph()
gs.bind('qs', "http://qs.org/")
gs.bind('foaf',"http://xmlns.com/foaf/0.1/")
gs.parse(filepath,format="nt")
mdstr = ""
for subject in gs.subjects():
    mdstr += str(subject) +"\n"
print(mdstr)

我得到,例如http://qs.org/s12095代替 qs:s12095

相關 rdflib 文檔 圖中的前綴存儲在其NamespaceManager對象中。 要讓 rdflib 打印前綴而不是完整的 IRI,您可以調用其方法.n3(graph.namespace_manager) 所以在你的情況下,你可以這樣做:

from rdflib import Namespace
from rdflib.namespace import NamespaceManager

# bind namespace to the graph or its namespace manager
graph.bind('qs', Namespace('http://qs.org/'))

# assuming entity is IRI http://qs.org/s12095
print(entity) # --> http://qs.org/s12095
print(entity.n3(graph.namespace_manager)) # --> qs:s12095

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM