reasoner-validator 3.4.7__tar.gz → 3.4.9__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/PKG-INFO +2 -2
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/docs/validation_codes_dictionary.md +18 -6
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/pyproject.toml +2 -2
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/reasoner_validator/biolink/__init__.py +8 -2
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/reasoner_validator/codes.yaml +16 -6
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/tests/test_biolink_compliance_validation.py +8 -8
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/LICENSE +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/README.md +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/docs/.nojekyll +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/docs/Makefile +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/docs/conf.py +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/docs/index.rst +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/docs/make.bat +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/docs/reasoner_validator.biolink.rst +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/docs/reasoner_validator.report.rst +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/docs/reasoner_validator.rst +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/docs/reasoner_validator.trapi.mapping.rst +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/docs/reasoner_validator.trapi.rst +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/docs/reasoner_validator.validation_codes.rst +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/docs/reasoner_validator.versioning.rst +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/reasoner_validator/__init__.py +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/reasoner_validator/report.py +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/reasoner_validator/sri/__init__.py +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/reasoner_validator/sri/util.py +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/reasoner_validator/trapi/__init__.py +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/reasoner_validator/trapi/mapping.py +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/reasoner_validator/validation_codes.py +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/reasoner_validator/versioning.py +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/tests/README.md +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/tests/__init__.py +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/tests/test_response_validator.py +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/tests/test_semver.py +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/tests/test_validate.py +0 -0
- {reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/tests/test_validation_report.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: reasoner-validator
|
|
3
|
-
Version: 3.4.
|
|
3
|
+
Version: 3.4.9
|
|
4
4
|
Summary: Validation tools for Reasoner API
|
|
5
5
|
Home-page: https://github.com/NCATSTranslator
|
|
6
6
|
License: MIT
|
|
@@ -28,7 +28,7 @@ Requires-Dist: myst-parser[docs] (>=0.18.1,<0.19.0) ; extra == "docs"
|
|
|
28
28
|
Requires-Dist: numpy (>=1.23.5,<2.0.0)
|
|
29
29
|
Requires-Dist: numpydoc[docs] (>=1.5.0,<2.0.0) ; extra == "docs"
|
|
30
30
|
Requires-Dist: pydantic (>=1.8.0,<2.0.0)
|
|
31
|
-
Requires-Dist: pytest (
|
|
31
|
+
Requires-Dist: pytest (>=7.2.2,<8.0.0)
|
|
32
32
|
Requires-Dist: requests (>=2.28.1,<3.0.0)
|
|
33
33
|
Requires-Dist: sphinx[docs] (>=5.3.0,<6.0.0) ; extra == "docs"
|
|
34
34
|
Requires-Dist: uvicorn (>=0.15,<0.16)
|
|
@@ -510,11 +510,17 @@
|
|
|
510
510
|
|
|
511
511
|
**Description:** Value of a 'qualifier_constraints.qualifier_set' property in a Query Graph must not be non-empty array!
|
|
512
512
|
|
|
513
|
-
### error.query_graph.edge.qualifier_constraints.qualifier_set.qualifier.
|
|
513
|
+
### error.query_graph.edge.qualifier_constraints.qualifier_set.qualifier.type_id.unknown
|
|
514
514
|
|
|
515
|
-
**Message:** Edge '{identifier}' qualifier
|
|
515
|
+
**Message:** Edge '{identifier}' qualifier type_id '{qualifier_type_id}' is unknown!
|
|
516
516
|
|
|
517
|
-
**Description:** A
|
|
517
|
+
**Description:** A qualifier qualifier_type_id must be defined in the specified version of Biolink!
|
|
518
|
+
|
|
519
|
+
### error.query_graph.edge.qualifier_constraints.qualifier_set.qualifier.value.unresolved
|
|
520
|
+
|
|
521
|
+
**Message:** Edge '{identifier}' qualifier_value '{qualifier_value}' for '{qualifier_type_id}' cannot be resolved!
|
|
522
|
+
|
|
523
|
+
**Description:** A 'qualifier_value' for the specified 'qualifier_type_id' of a qualifier likely could not be resolved without knowledge of the edge category!
|
|
518
524
|
|
|
519
525
|
### error.knowledge_graph.nodes.empty
|
|
520
526
|
|
|
@@ -750,9 +756,15 @@
|
|
|
750
756
|
|
|
751
757
|
**Description:** Value of a 'qualifiers' property in a Knowledge Graph must not be non-empty array!
|
|
752
758
|
|
|
753
|
-
### error.knowledge_graph.edge.qualifiers.qualifier.
|
|
759
|
+
### error.knowledge_graph.edge.qualifiers.qualifier.type_id.unknown
|
|
760
|
+
|
|
761
|
+
**Message:** Edge '{identifier}' qualifier type_id '{qualifier_type_id}' is unknown!
|
|
762
|
+
|
|
763
|
+
**Description:** A qualifier qualifier_type_id must be defined in the specified version of Biolink!
|
|
764
|
+
|
|
765
|
+
### error.knowledge_graph.edge.qualifiers.qualifier.value.unresolved
|
|
754
766
|
|
|
755
|
-
**Message:** Edge '{identifier}'
|
|
767
|
+
**Message:** Edge '{identifier}' qualifier_value '{qualifier_value}' for '{qualifier_type_id}' cannot be resolved!
|
|
756
768
|
|
|
757
|
-
**Description:** A '
|
|
769
|
+
**Description:** A 'qualifier_value' for the specified 'qualifier_type_id' of a qualifier likely could not be resolved without knowledge of the edge category!
|
|
758
770
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "reasoner-validator"
|
|
3
|
-
version = "3.4.
|
|
3
|
+
version = "3.4.9"
|
|
4
4
|
description = "Validation tools for Reasoner API"
|
|
5
5
|
authors = [
|
|
6
6
|
"Richard Bruskiewich <richard.bruskiewich@delphinai.com>",
|
|
@@ -42,7 +42,7 @@ include = [
|
|
|
42
42
|
python = "^3.9"
|
|
43
43
|
bmt = "^1.0.3"
|
|
44
44
|
kgx = "^1.7.0"
|
|
45
|
-
pytest = "7.2.
|
|
45
|
+
pytest = "^7.2.2"
|
|
46
46
|
jsonschema = "^4.17.0"
|
|
47
47
|
PyYAML = "^6.0"
|
|
48
48
|
requests = "^2.28.1"
|
{reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/reasoner_validator/biolink/__init__.py
RENAMED
|
@@ -466,13 +466,19 @@ class BiolinkValidator(ValidationReporter):
|
|
|
466
466
|
qualifier_type_id: str = qualifier['qualifier_type_id']
|
|
467
467
|
qualifier_value: str = qualifier['qualifier_value']
|
|
468
468
|
try:
|
|
469
|
-
if not self.bmt.
|
|
469
|
+
if not self.bmt.is_qualifier(name=qualifier_type_id):
|
|
470
|
+
self.report(
|
|
471
|
+
code=f"error.{context}.qualifier.type_id.unknown",
|
|
472
|
+
identifier=edge_id,
|
|
473
|
+
qualifier_type_id=qualifier_type_id
|
|
474
|
+
)
|
|
475
|
+
elif not self.bmt.validate_qualifier(
|
|
470
476
|
# TODO: temporary workaround, parse 'qualifier_type_id' to core name
|
|
471
477
|
qualifier_type_id=parse_name(qualifier_type_id),
|
|
472
478
|
qualifier_value=qualifier_value
|
|
473
479
|
):
|
|
474
480
|
self.report(
|
|
475
|
-
code=f"error.{context}.qualifier.
|
|
481
|
+
code=f"error.{context}.qualifier.value.unresolved",
|
|
476
482
|
identifier=edge_id,
|
|
477
483
|
qualifier_type_id=qualifier_type_id,
|
|
478
484
|
qualifier_value=qualifier_value
|
|
@@ -334,9 +334,14 @@ error:
|
|
|
334
334
|
$message: "Edge '{identifier}' qualifier_set property value is empty!"
|
|
335
335
|
$description: "Value of a 'qualifier_constraints.qualifier_set' property in a Query Graph must not be non-empty array!"
|
|
336
336
|
qualifier:
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
337
|
+
type_id:
|
|
338
|
+
unknown:
|
|
339
|
+
$message: "Edge '{identifier}' qualifier type_id '{qualifier_type_id}' is unknown!"
|
|
340
|
+
$description: "A qualifier qualifier_type_id must be defined in the specified version of Biolink!"
|
|
341
|
+
value:
|
|
342
|
+
unresolved:
|
|
343
|
+
$message: "Edge '{identifier}' qualifier_value '{qualifier_value}' for '{qualifier_type_id}' cannot be resolved!"
|
|
344
|
+
$description: "A 'qualifier_value' for the specified 'qualifier_type_id' of a qualifier likely could not be resolved without knowledge of the edge category!"
|
|
340
345
|
knowledge_graph:
|
|
341
346
|
nodes:
|
|
342
347
|
empty:
|
|
@@ -474,6 +479,11 @@ error:
|
|
|
474
479
|
$message: "Edge '{identifier}' qualifiers property value is empty!"
|
|
475
480
|
$description: "Value of a 'qualifiers' property in a Knowledge Graph must not be non-empty array!"
|
|
476
481
|
qualifier:
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
482
|
+
type_id:
|
|
483
|
+
unknown:
|
|
484
|
+
$message: "Edge '{identifier}' qualifier type_id '{qualifier_type_id}' is unknown!"
|
|
485
|
+
$description: "A qualifier qualifier_type_id must be defined in the specified version of Biolink!"
|
|
486
|
+
value:
|
|
487
|
+
unresolved:
|
|
488
|
+
$message: "Edge '{identifier}' qualifier_value '{qualifier_value}' for '{qualifier_type_id}' cannot be resolved!"
|
|
489
|
+
$description: "A 'qualifier_value' for the specified 'qualifier_type_id' of a qualifier likely could not be resolved without knowledge of the edge category!"
|
{reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/tests/test_biolink_compliance_validation.py
RENAMED
|
@@ -1202,7 +1202,7 @@ def qualifier_validator(tested_method, edge_model: str, query: Tuple[Dict, str])
|
|
|
1202
1202
|
}
|
|
1203
1203
|
]
|
|
1204
1204
|
},
|
|
1205
|
-
"error.query_graph.edge.qualifier_constraints.qualifier_set.qualifier.
|
|
1205
|
+
"error.query_graph.edge.qualifier_constraints.qualifier_set.qualifier.type_id.unknown"
|
|
1206
1206
|
),
|
|
1207
1207
|
( # Query 13 - 'qualifier_type_id' property value is unknown
|
|
1208
1208
|
{
|
|
@@ -1217,7 +1217,7 @@ def qualifier_validator(tested_method, edge_model: str, query: Tuple[Dict, str])
|
|
|
1217
1217
|
}
|
|
1218
1218
|
]
|
|
1219
1219
|
},
|
|
1220
|
-
"error.query_graph.edge.qualifier_constraints.qualifier_set.qualifier.
|
|
1220
|
+
"error.query_graph.edge.qualifier_constraints.qualifier_set.qualifier.type_id.unknown"
|
|
1221
1221
|
),
|
|
1222
1222
|
( # Query 14 - 'qualifier_type_id' property value is valid but abstract
|
|
1223
1223
|
{
|
|
@@ -1233,7 +1233,7 @@ def qualifier_validator(tested_method, edge_model: str, query: Tuple[Dict, str])
|
|
|
1233
1233
|
]
|
|
1234
1234
|
},
|
|
1235
1235
|
# "info.query_graph.edge.qualifier.abstract"
|
|
1236
|
-
"error.query_graph.edge.qualifier_constraints.qualifier_set.qualifier.
|
|
1236
|
+
"error.query_graph.edge.qualifier_constraints.qualifier_set.qualifier.value.unresolved"
|
|
1237
1237
|
),
|
|
1238
1238
|
( # Query 15 - 'qualifier_type_id' property value is not a Biolink qualifier term
|
|
1239
1239
|
{
|
|
@@ -1248,7 +1248,7 @@ def qualifier_validator(tested_method, edge_model: str, query: Tuple[Dict, str])
|
|
|
1248
1248
|
}
|
|
1249
1249
|
]
|
|
1250
1250
|
},
|
|
1251
|
-
"error.query_graph.edge.qualifier_constraints.qualifier_set.qualifier.
|
|
1251
|
+
"error.query_graph.edge.qualifier_constraints.qualifier_set.qualifier.type_id.unknown"
|
|
1252
1252
|
),
|
|
1253
1253
|
( # Query 16 - 'qualifier' entry is missing its 'qualifier_value' property - invalidated by TRAPI schema
|
|
1254
1254
|
{
|
|
@@ -1380,7 +1380,7 @@ def test_validate_qualifier_constraints(query: Tuple[Dict, str]):
|
|
|
1380
1380
|
}
|
|
1381
1381
|
]
|
|
1382
1382
|
},
|
|
1383
|
-
"error.knowledge_graph.edge.qualifiers.qualifier.
|
|
1383
|
+
"error.knowledge_graph.edge.qualifiers.qualifier.type_id.unknown"
|
|
1384
1384
|
),
|
|
1385
1385
|
( # Query 8 - 'qualifier_type_id' property value is unknown
|
|
1386
1386
|
{
|
|
@@ -1391,7 +1391,7 @@ def test_validate_qualifier_constraints(query: Tuple[Dict, str]):
|
|
|
1391
1391
|
}
|
|
1392
1392
|
]
|
|
1393
1393
|
},
|
|
1394
|
-
"error.knowledge_graph.edge.qualifiers.qualifier.
|
|
1394
|
+
"error.knowledge_graph.edge.qualifiers.qualifier.type_id.unknown"
|
|
1395
1395
|
),
|
|
1396
1396
|
( # Query 9 - 'qualifier_type_id' property value is valid but abstract
|
|
1397
1397
|
{
|
|
@@ -1403,7 +1403,7 @@ def test_validate_qualifier_constraints(query: Tuple[Dict, str]):
|
|
|
1403
1403
|
]
|
|
1404
1404
|
},
|
|
1405
1405
|
# "info.query_graph.edge.qualifier.abstract"
|
|
1406
|
-
"error.knowledge_graph.edge.qualifiers.qualifier.
|
|
1406
|
+
"error.knowledge_graph.edge.qualifiers.qualifier.value.unresolved"
|
|
1407
1407
|
),
|
|
1408
1408
|
( # Query 10 - 'qualifier_type_id' property value is not a Biolink qualifier term
|
|
1409
1409
|
{
|
|
@@ -1414,7 +1414,7 @@ def test_validate_qualifier_constraints(query: Tuple[Dict, str]):
|
|
|
1414
1414
|
}
|
|
1415
1415
|
]
|
|
1416
1416
|
},
|
|
1417
|
-
"error.knowledge_graph.edge.qualifiers.qualifier.
|
|
1417
|
+
"error.knowledge_graph.edge.qualifiers.qualifier.type_id.unknown"
|
|
1418
1418
|
),
|
|
1419
1419
|
( # Query 11 - 'qualifier' entry is missing its 'qualifier_value' property - invalidated by TRAPI schema
|
|
1420
1420
|
{
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/docs/reasoner_validator.trapi.mapping.rst
RENAMED
|
File without changes
|
|
File without changes
|
{reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/docs/reasoner_validator.validation_codes.rst
RENAMED
|
File without changes
|
{reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/docs/reasoner_validator.versioning.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{reasoner_validator-3.4.7 → reasoner_validator-3.4.9}/reasoner_validator/validation_codes.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|