[Python-modules-commits] [python-pyld] 103/276: Ensure graph name blank node IDs are relabeled.
Wolfgang Borgert
debacle at moszumanska.debian.org
Wed Oct 8 23:47:58 UTC 2014
This is an automated email from the git hooks/post-receive script.
debacle pushed a commit to branch master
in repository python-pyld.
commit d3293ba732b168f7ab71a2854fce7eeadd8fb001
Author: Dave Longley <dlongley at digitalbazaar.com>
Date: Fri Feb 15 14:11:03 2013 -0500
Ensure graph name blank node IDs are relabeled.
---
lib/pyld/jsonld.py | 17 ++++++++++-------
1 file changed, 10 insertions(+), 7 deletions(-)
diff --git a/lib/pyld/jsonld.py b/lib/pyld/jsonld.py
index f140ae3..79c4ce4 100644
--- a/lib/pyld/jsonld.py
+++ b/lib/pyld/jsonld.py
@@ -1405,9 +1405,10 @@ class JsonLdProcessor:
namer = UniqueNamer('_:t')
self._to_rdf(input_, namer, None, None, None, statements)
for statement in statements:
- for node in ['subject', 'object']:
- id_ = statement[node]['nominalValue']
- if statement[node]['interfaceName'] == 'BlankNode':
+ for node in ['subject', 'object', 'name']:
+ if (node in statement and
+ statement[node]['interfaceName'] == 'BlankNode'):
+ id_ = statement[node]['nominalValue']
if id_ in bnodes:
bnodes[id_]['statements'].append(statement)
else:
@@ -1456,13 +1457,13 @@ class JsonLdProcessor:
for bnode in group:
# skip already-named bnodes
if namer.is_named(bnode):
- continue
+ continue
# hash bnode paths
path_namer = UniqueNamer('_:t')
path_namer.get_name(bnode)
results.append(self._hash_paths(
- bnode, bnodes, namer, path_namer))
+ bnode, bnodes, namer, path_namer))
# name bnodes in hash order
cmp_hashes = cmp_to_key(lambda x, y: cmp(x['hash'], y['hash']))
@@ -1476,8 +1477,10 @@ class JsonLdProcessor:
# update bnode names in each statement and serialize
for statement in statements:
- for node in ['subject', 'object']:
- if statement[node]['interfaceName'] == 'BlankNode':
+ for node in ['subject', 'object', 'name']:
+ if (node in statement and
+ statement[node]['interfaceName'] == 'BlankNode' and
+ not statement[node]['nominalValue'].startswith('_:c14n')):
statement[node]['nominalValue'] = namer.get_name(
statement[node]['nominalValue'])
normalized.append(JsonLdProcessor.to_nquad(statement))
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/python-pyld.git
More information about the Python-modules-commits
mailing list