From: Diane Trout Date: Thu, 2 Jun 2016 00:05:52 +0000 (-0700) Subject: Use find_statements instead of SPARQL for a query X-Git-Url: http://woldlab.caltech.edu/gitweb/?p=htsworkflow.git;a=commitdiff_plain;h=bcb7ec30a970e57e3ee4dda63e71c936597f6b41 Use find_statements instead of SPARQL for a query The SPARQL query ended up with an unbound variable which generated a warning, I redid the query with just a model.find_statements which doesn't generate a warning (My test output was getting cluttered with too many logger warnings) --- diff --git a/htsworkflow/submission/submission.py b/htsworkflow/submission/submission.py index 50e8228..500f4e7 100644 --- a/htsworkflow/submission/submission.py +++ b/htsworkflow/submission/submission.py @@ -433,10 +433,12 @@ def list_submissions(model): select distinct ?submission where { ?submission subns:has_submission ?library_dir } """ - query = RDF.SPARQLQuery(query_body) - rdfstream = query.execute(model) - for row in rdfstream: - s = strip_namespace(submissionLog, row['submission']) + q = RDF.Statement(None, submissionOntology['has_submission'], None) + submissions = set() + for statement in model.find_statements(q): + s = strip_namespace(submissionLog, statement.subject) if s[-1] in ['#', '/', '?']: s = s[:-1] - yield s + submissions.add(s) + + return list(submissions)