Учитывая имя категории (например, dbc:Lipid_metabolism_disorders
), я хочу определить, сколько прыжков мне нужно пройти в DBpedia, чтобы достичь категории dbc:Medicine
с помощью SPARQLWrapper.
Мой текущий код выглядит следующим образом.
from SPARQLWrapper import SPARQLWrapper, JSON
sparql = SPARQLWrapper("http://live.dbpedia.org/sparql")
sparql.setReturnFormat(JSON)
sparql.setQuery(" ASK { dbc:Lipid_metabolism_disorders skos:broader{1,7} dbc:Medicine } ")
results = sparql.query().convert()
print(results['boolean'])
Однако в этом коде мне нужно вручную изменить числа в skos:broader{1,7}
, чтобы определить, сколько прыжков мне нужно пройти, чтобы перейти к dbc:Medicine
.
Есть ли простой / прямой способ сделать это? Я хочу знать только количество прыжков в иерархии категорий.
Я с удовольствием предоставлю более подробную информацию, если это необходимо.