validate_salmon_datapackage
validate_salmon_datapackage(path, require_iris=False)Validate package structure, ID alignment, and semantic review state.
Reads a package from disk and checks, in order: that dataset.csv, tables.csv, column_dictionary.csv and codes.csv stay aligned with each other and with the data files, and that no schema-required key field is blank; that a declared primary key identifies each row and that a column the dictionary declares required has no missing values; that coded values appear in codes.csv when present; that the optional observation-structure, SSSOM mapping-set and measurement-decomposition artifacts validate when present; and then runs :func:validate_dictionary plus :func:~metasalmonpy.validation.validate_semantics. Under require_iris=True it additionally refuses malformed absolute-IRI shapes in the six dictionary semantic fields and table *_iri fields, REVIEW: markers, unresolved MISSING ...: placeholders, blank schema-required metadata fields and blank table observation_unit_iri values (a column a metadata file does not have counts as blank in every row); in the default mode those are reported as warnings.
Mirrors validate_salmon_datapackage() in metasalmon: every structural finding is collected into one typed issue frame (eight issue_type categories, five columns) and reported in a single raise whose .issues attribute carries the frame — never one untyped error at the first problem (hub backlog #91 / PARITY.md row 41, converged at S10 chunk D). The returned issues frame is therefore empty whenever the call returns, exactly as in R.