From c64dfa492017981e5c14aca5a5ed81d632efdbc3 Mon Sep 17 00:00:00 2001 From: Noor Date: Thu, 29 Jan 2026 20:57:09 +0000 Subject: [PATCH] changed how discovery metadata gets queried to account for the new format, included errors that were raised in ExtendedCSV in the validator error message --- woudc_api/plugins/validate.py | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/woudc_api/plugins/validate.py b/woudc_api/plugins/validate.py index 602fdd2..3670e80 100644 --- a/woudc_api/plugins/validate.py +++ b/woudc_api/plugins/validate.py @@ -275,7 +275,7 @@ def check_content(self): return success index = 'discovery_metadata' - field = 'identifier' + field = '_id' content_body = self.query_by_field(index, field, self.dataset) _levels = content_body[0]['_source']['properties']['levels'] levels = [] @@ -712,13 +712,22 @@ def query_by_field(self, index, field, value): """ _index = self.index_prefix + index - query = { - "query": { - "term": { - "properties." + field + ".raw": value, + if index == 'discovery_metadata': + query = { + "query": { + "term": { + "_id": value + "_en", + } + } + } + else: + query = { + "query": { + "term": { + "properties." + field + ".raw": value, + } } } - } response = self.es.search(index=_index, body=query) response_body = response['hits']['hits'] return response_body @@ -769,8 +778,9 @@ def execute(self, inputs: dict, **kwargs): self.success = True try: self.ecsv = ExtendedCSV(extcsv) - except (MetadataValidationError, NonStandardDataError): + except (MetadataValidationError, NonStandardDataError) as e: self.ecsv = ExtendedCSV('') + self.ecsv.errors = e.errors self.ecsv._add_to_report(410) self.success = False