From 4f37608e931940f813f73dedd2088721ac99a337 Mon Sep 17 00:00:00 2001 From: dosumis Date: Thu, 10 Oct 2019 18:25:59 +0100 Subject: [PATCH] Fixed pubs issue pub->pubs. This partly deals with #49. We should probably still sub pub->pubs for anat_2_ep --- src/json_schema/vfb_query.json | 5 +---- src/vfb_query_builder/query_roller.py | 12 ++++++------ src/vfb_query_builder/test/TermInfo_schema_tests.py | 2 +- 3 files changed, 8 insertions(+), 11 deletions(-) diff --git a/src/json_schema/vfb_query.json b/src/json_schema/vfb_query.json index c5b722a..1cb9b57 100644 --- a/src/json_schema/vfb_query.json +++ b/src/json_schema/vfb_query.json @@ -13,10 +13,7 @@ "$ref": "mod.json#definitions/minimal_entity_info" }, "pub": { - "type": "array", - "items": { - "$ref": "mod.json#definitions/pub" - } + "$ref": "mod.json#definitions/pub" }, "anatomy_channel_image": { "type": "array", diff --git a/src/vfb_query_builder/query_roller.py b/src/vfb_query_builder/query_roller.py index 7d1f255..8a46557 100644 --- a/src/vfb_query_builder/query_roller.py +++ b/src/vfb_query_builder/query_roller.py @@ -346,12 +346,12 @@ def pub_syn(self): % (self._pub_return, self._syn_return), vars=['pub_syn']) - def pub(self): + def pubs(self): return Clause(MATCH=Template("OPTIONAL MATCH ($pvar$labels)" "-[rp:has_reference]->(p:pub) "), WITH="CASE WHEN p is null THEN [] ELSE " - "collect(" + self._pub_return + ") END AS pub", - vars=['pub']) + "collect(" + self._pub_return + ") END AS pubs", + vars=['pubs']) def dataSet_license(self): @@ -441,7 +441,7 @@ def dataset_term_info(self, short_form, *args, pretty_print=False, self.anatomy_channel_image(), self.xrefs(), self.license(), - self.pub()], + self.pubs()], q_name=q_name, pretty_print=pretty_print) @@ -545,7 +545,7 @@ def template_2_datasets_query(self, short_form): # For this reason, we may have to remove aci from this # query for now. Maybe add counts instead for now? aci.__setattr__('limit', '') - pub = self.pub() + pub = self.pubs() pub.__setattr__('pvar', 'ds') li =self.license() li.__setattr__('pvar', 'ds') @@ -564,7 +564,7 @@ def all_datasets_query(self): # For this reason, we may have to remove aci from this # query for now. Maybe add counts instead for now? aci.__setattr__('limit', '') - pub = self.pub() + pub = self.pubs() pub.__setattr__('pvar', 'ds') li = self.license() li.__setattr__('pvar', 'ds') diff --git a/src/vfb_query_builder/test/TermInfo_schema_tests.py b/src/vfb_query_builder/test/TermInfo_schema_tests.py index 863e9fe..6b2e39b 100644 --- a/src/vfb_query_builder/test/TermInfo_schema_tests.py +++ b/src/vfb_query_builder/test/TermInfo_schema_tests.py @@ -152,7 +152,7 @@ def test_dataset_pub(self): query = query_builder(query_labels=['DataSet'], query_short_forms=['Ito2013'], clauses=[self.ql.term(), - self.ql.pub()]) + self.ql.pubs()]) r = self.qw.test(t=self, query=query)