aboutsummaryrefslogtreecommitdiffstats
path: root/bsfs/query/validator.py
diff options
context:
space:
mode:
Diffstat (limited to 'bsfs/query/validator.py')
-rw-r--r--bsfs/query/validator.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/bsfs/query/validator.py b/bsfs/query/validator.py
index b04a9bf..75b51ca 100644
--- a/bsfs/query/validator.py
+++ b/bsfs/query/validator.py
@@ -182,8 +182,7 @@ class Filter():
if not type_ <= dom:
raise errors.ConsistencyError(f'expected type {dom}, found {type_}')
# node.count is a numerical expression
- # FIXME: We have to ensure that ns.xsd.integer is always known in the schema!
- self._parse_filter_expression(self.schema.literal(ns.xsd.integer), node.count)
+ self._parse_filter_expression(self.schema.literal(ns.bsfs.Number), node.count)
## conditions
@@ -211,6 +210,9 @@ class Filter():
# type exists in the schema
if type_ not in self.schema.literals():
raise errors.ConsistencyError(f'literal {type_} is not in the schema')
+ # type must be a numerical
+ if not type_ <= self.schema.literal(ns.bsfs.Number):
+ raise errors.ConsistencyError(f'expected a number type, found {type_}')
# FIXME: Check if node.value corresponds to type_