From 33b1cbe823ec6e1810dfc5c8aeb7605f3724f887 Mon Sep 17 00:00:00 2001 From: Helmut Merz Date: Sat, 16 Mar 2024 23:38:58 +0100 Subject: [PATCH] more on children() and parents() --- scopes/storage/concept.py | 10 ++++++++-- tests/tlib_storage.py | 2 +- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/scopes/storage/concept.py b/scopes/storage/concept.py index f8f37c4..33a8e2f 100644 --- a/scopes/storage/concept.py +++ b/scopes/storage/concept.py @@ -15,15 +15,21 @@ class Concept(Track): headFields = ['name'] def parents(self, predicate=None): + return (r.getFirst() for r in self.parentRels(predicate)) + + def parentRels(self, predicate=None): return self.container.queryRels(second=self, predicate=predicate) def children(self, predicate=None): + return (r.getSecond() for r in self.childRels(predicate)) + + def childRels(self, predicate=None): return self.container.queryRels(first=self, predicate=predicate) def values(self): - return (t.getSecond() for t in self.children(Rels.defaultPredicate)) + return self.children(defaultPredicate) - def addChild(self, child, predicate = defaultPredicate): + def addChild(self, child, predicate=defaultPredicate): rels = self.container.storage.getContainer(Triple) rels.save(Triple(self.uid, child.uid, predicate)) diff --git a/tests/tlib_storage.py b/tests/tlib_storage.py index 9ce54e5..fcb378c 100644 --- a/tests/tlib_storage.py +++ b/tests/tlib_storage.py @@ -115,7 +115,7 @@ def test_topic(self, config): tp_itc.addChild(tp_proglang) c = list(tp_itc.children()) - self.assertEqual(c[0].getSecond().name, 'prog_lang') + self.assertEqual(c[0].name, 'prog_lang') storage.commit()