diff options
author | Matthias Baumgartner <dev@igsor.net> | 2023-01-13 12:22:34 +0100 |
---|---|---|
committer | Matthias Baumgartner <dev@igsor.net> | 2023-01-13 12:22:34 +0100 |
commit | 60257ed3c2aa6ea2891f362a691bde9d7ef17831 (patch) | |
tree | 20b3226e879cb308552ed2955cdfa10ce79caf85 /bsfs/graph/resolve.py | |
parent | 1b7ef16c3795bb7112683662b8c22a774e219269 (diff) | |
download | bsfs-60257ed3c2aa6ea2891f362a691bde9d7ef17831.tar.gz bsfs-60257ed3c2aa6ea2891f362a691bde9d7ef17831.tar.bz2 bsfs-60257ed3c2aa6ea2891f362a691bde9d7ef17831.zip |
schema type comparison across classes
Diffstat (limited to 'bsfs/graph/resolve.py')
-rw-r--r-- | bsfs/graph/resolve.py | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/bsfs/graph/resolve.py b/bsfs/graph/resolve.py index 9b5f631..b671204 100644 --- a/bsfs/graph/resolve.py +++ b/bsfs/graph/resolve.py @@ -96,11 +96,11 @@ class Filter(): # parse child expression subrng = self._parse_predicate_expression(pred) # determine the next type - try: - if rng is None or subrng > rng: # pick most generic range - rng = subrng - except TypeError as err: - raise errors.ConsistencyError(f'ranges {subrng} and {rng} are not related') from err + if rng is None or subrng > rng: # pick most generic range + rng = subrng + # check range consistency + if not subrng <= rng and not subrng >= rng: + raise errors.ConsistencyError(f'ranges {subrng} and {rng} are not related') if not isinstance(rng, (bsc.Node, bsc.Literal)): raise errors.BackendError(f'the range of node {node} is undefined') return rng |