-
Notifications
You must be signed in to change notification settings - Fork 0
/
example.py
30 lines (22 loc) · 1.01 KB
/
example.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
from Knowledge_base_utils import Knowledge_Graph
kb = Knowledge_Graph("DBpedia_files/dbpedia-2015-10.hdt")
# Get one hope relations
obama_relations = kb.get_relations_1hop("http://dbpedia.org/resource/Barack_Obama")
print(f"Entity of Barack Obama has the following relations in the kb: {obama_relations[:3]} etc.")
# Execute your sparql query
query = """
PREFIX dbr: <http://dbpedia.org/resource/>
PREFIX dbo: <http://dbpedia.org/ontology/>
PREFIX dbp: <http://dbpedia.org/property/>
PREFIX dbtype: <http://dbpedia.org/datatype/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
SELECT * WHERE {
dbr:Barack_Obama ?rel ?obj .
}
"""
res = kb.execute_sparql(query)
for el in res:
print(str(el.asdict()["rel"].toPython()))
# Get one hop connections between two entities
connections = kb.get_connection_1hop("http://dbpedia.org/resource/Barack_Obama", "http://dbpedia.org/resource/Michelle_Obama")
print(f"All paths between Barack Obama and Michelle Obama: {connections}")