Mercurial > code > home > repos > homeauto
annotate service/mqtt_to_rdf/rdf_debug.py @ 1726:7d3797ed6681
rough port to starlette and reactivex
author | drewp@bigasterisk.com |
---|---|
date | Tue, 20 Jun 2023 23:14:28 -0700 |
parents | 20474ad4968e |
children |
rev | line source |
---|---|
1650
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
1 import logging |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
2 from typing import List, Union, cast |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
3 |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
4 from rdflib.graph import Graph |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
5 from rdflib.namespace import Namespace |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
6 |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
7 from inference_types import Triple |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
8 |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
9 log = logging.getLogger('infer') |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
10 |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
11 ROOM = Namespace("http://projects.bigasterisk.com/room/") |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
12 |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
13 |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
14 def graphDump(g: Union[Graph, List[Triple]], oneLine=True): |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
15 # this is very slow- debug only! |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
16 if not log.isEnabledFor(logging.DEBUG): |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
17 return "(skipped dump)" |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
18 try: |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
19 if not isinstance(g, Graph): |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
20 g2 = Graph() |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
21 g2 += g |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
22 g = g2 |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
23 g.bind('', ROOM) |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
24 g.bind('ex', Namespace('http://example.com/')) |
1726
7d3797ed6681
rough port to starlette and reactivex
drewp@bigasterisk.com
parents:
1651
diff
changeset
|
25 lines = g.serialize(format='n3').splitlines() |
1650
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
26 lines = [line for line in lines if not line.startswith('@prefix')] |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
27 if oneLine: |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
28 lines = [line.strip() for line in lines] |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
29 return ' '.join(lines) |
2061df259224
move graphDump (on its way out, since reprs are getting better)
drewp@bigasterisk.com
parents:
diff
changeset
|
30 except TypeError: |
1651
20474ad4968e
WIP - functions are broken as i move most layers to work in Chunks not Triples
drewp@bigasterisk.com
parents:
1650
diff
changeset
|
31 return repr(g) |