diff --git a/biosimulators_utils/_version.py b/biosimulators_utils/_version.py index b324b3e2..3c136c78 100644 --- a/biosimulators_utils/_version.py +++ b/biosimulators_utils/_version.py @@ -1 +1 @@ -__version__ = '0.1.186' +__version__ = '0.1.187' diff --git a/biosimulators_utils/sedml/validation.py b/biosimulators_utils/sedml/validation.py index b29953fc..03b7d879 100644 --- a/biosimulators_utils/sedml/validation.py +++ b/biosimulators_utils/sedml/validation.py @@ -1666,7 +1666,7 @@ def validate_target(target, namespaces, context, language, model_id, model_etree xpath = lxml.etree.XPath(target, namespaces=namespaces) root = lxml.etree.Element("root") try: - xpath.evaluate(root) + root.xpath(target, namespaces=namespaces) if model_etree and check_in_model_source: if context == DataGenerator and '/@' in target: diff --git a/tests/sedml/test_sedml_validation.py b/tests/sedml/test_sedml_validation.py index f4778561..8d510bbb 100644 --- a/tests/sedml/test_sedml_validation.py +++ b/tests/sedml/test_sedml_validation.py @@ -1318,19 +1318,18 @@ def test_validate_target_xpaths(self): def test_validate_target(self): self.assertEqual(validation.validate_target('/sbml:sbml/sbml:model', - {None: 'sed-ml', 'sbml': 'sbml'}, + {'sbml': 'sbml'}, data_model.Calculation, data_model.ModelLanguage.SBML.value, ''), ([], [['XPath could not be validated.']])) self.assertEqual(validation.validate_target('/sbml:sbml/sbml:model/@sbml:value', - {None: 'sed-ml', 'sbml': 'sbml'}, + {'sbml': 'sbml'}, data_model.Calculation, data_model.ModelLanguage.SBML.value, ''), ([], [['XPath could not be validated.']])) self.assertEqual(validation.validate_target( "/sbml:sbml/sbml:model/qual:listOfQualitativeSpecies/qual:qualitativeSpecies[@qual:id='A']/@qual:level", { - None: 'sed-ml', 'sbml': 'sbml', 'qual': 'qual', }, @@ -1341,7 +1340,6 @@ def test_validate_target(self): self.assertEqual(validation.validate_target( "/sbml/model/qual:listOfQualitativeSpecies/qual:qualitativeSpecies[@qual:id='A']/@qual:level", { - None: 'sed-ml', 'sbml': 'sbml', 'qual': 'qual', }, @@ -1355,7 +1353,6 @@ def test_validate_target(self): self.assertEqual(validation.validate_target( "/sbml:sbml/sbml:model/qual:listOfQualitativeSpecies/qual:qualitativeSpecies[@qual:id='erk']/@qual:compartment", { - None: 'sed-ml', 'sbml': 'http://www.sbml.org/sbml/level3/version1/core', 'qual': 'http://www.sbml.org/sbml/level3/version1/qual/version1', }, @@ -1369,7 +1366,6 @@ def test_validate_target(self): self.assertEqual(validation.validate_target( "/sbml:sbml/sbml:model/qual:listOfQualitativeSpecies/qual:qualitativeSpecies[@qual:id='erk']/@qual:level", { - None: 'sed-ml', 'sbml': 'http://www.sbml.org/sbml/level3/version1/core', 'qual': 'http://www.sbml.org/sbml/level3/version1/qual/version1', }, @@ -1382,7 +1378,7 @@ def test_validate_target(self): self.assertIn('not a valid XML XPath', flatten_nested_list_of_strings(validation.validate_target('/sbml:sbml@sbml:model', - {None: 'sed-ml', 'sbml': 'sbml'}, + {'sbml': 'sbml'}, data_model.Calculation, data_model.ModelLanguage.SBML.value, '')[0])) self.assertIn('No namespaces are defined', @@ -1400,7 +1396,6 @@ def test_validate_target(self): flatten_nested_list_of_strings(validation.validate_target( "/sbml:sbml/sbml:model/qual:listOfQualitativeSpecies/qual:qualitativeSpecies[@qual:id='erk']/@qual:level", { - None: 'sed-ml', 'sbml': 'http://www.sbml.org/sbml/level3/version1/core', 'qual': 'http://www.sbml.org/sbml/level3/version1/qual/version1', }, @@ -1415,7 +1410,6 @@ def test_validate_target(self): flatten_nested_list_of_strings(validation.validate_target( "/sbml:sbml/sbml:model/qual:listOfQualitativeSpecies/qual:qualitativeSpecies[@qual:id='ERK']/@qual:compartment", { - None: 'sed-ml', 'sbml': 'http://www.sbml.org/sbml/level3/version1/core', 'qual': 'http://www.sbml.org/sbml/level3/version1/qual/version1', }, @@ -1430,7 +1424,6 @@ def test_validate_target(self): flatten_nested_list_of_strings(validation.validate_target( "/sbml:sbml/sbml:model/qual:listOfQualitativeSpecies/qual:qualitativeSpecies", { - None: 'sed-ml', 'sbml': 'http://www.sbml.org/sbml/level3/version1/core', 'qual': 'http://www.sbml.org/sbml/level3/version1/qual/version1', },