Skip to content

Commit

Permalink
Parse model input/output notes
Browse files Browse the repository at this point in the history
  • Loading branch information
hvidy committed Feb 7, 2024
1 parent affd40d commit 0d9ae32
Show file tree
Hide file tree
Showing 2 changed files with 64 additions and 22 deletions.
23 changes: 17 additions & 6 deletions .github/scripts/crosswalks.py
Original file line number Diff line number Diff line change
Expand Up @@ -83,19 +83,30 @@ def dict_to_report(issue_dict):
report += f"{str(issue_dict['include_model_code'])} \n\n"

# model code URI/DOI
if "model_code_uri" in issue_dict:
report += "**Model code URI/DOI** \n"
report += f"{issue_dict['model_code_uri']} \n\n"
if issue_dict["model_code_inputs"]["doi"]:
report += "**Model code/inputs DOI** \n"
report += f"{issue_dict['model_code_inputs']['doi']} \n\n"

# model code notes
if issue_dict["model_code_inputs"]["notes"]:
report += "**Model code/inputs notes** \n"
report += f"{issue_dict['model_code_inputs']['notes']} \n\n"

# include model output data
if "include_model_output" in issue_dict:
report += "**Include model output data?** \n"
report += f"{str(issue_dict['include_model_output'])} \n\n"

# model output URI/DOI
if "model_output_uri" in issue_dict:
report += "**Model output URI/DOI** \n"
report += f"{issue_dict['model_output_uri']} \n\n"
if issue_dict["model_output_data"]["doi"]:
report += "**Model output data DOI** \n"
report += f"{issue_dict['model_output_data']['doi']} \n\n"

# model output notes
if issue_dict["model_output_data"]["notes"]:
report += "**Model output data notes** \n"
report += f"{issue_dict['model_output_data']['notes']} \n\n"


#############
# Section 3
Expand Down
63 changes: 47 additions & 16 deletions .github/scripts/parse_issue.py
Original file line number Diff line number Diff line change
Expand Up @@ -169,20 +169,34 @@ def parse_issue(issue):
if type(selection) is str:
error_log += "**Include model code?**\n" + selection + "\n"

# model code/inputs
model_code_record = {}
# model code/inputs DOI
model_code_uri = data["-> model code/inputs DOI"].strip()
model_code_doi = data["-> model code/inputs DOI"].strip()

if model_code_uri == "_No response_":
error_log += "**Model code DOI**\n"
error_log += "Warning: No URI/DOI provided. \n"
if model_code_doi == "_No response_":
model_code_doi = ""
error_log += "**Model code/inputs DOI**\n"
error_log += "Warning: No DOI/URI provided. \n"
else:
response = check_uri(model_code_uri)
if response == "OK":
data_dict["model_code_uri"] = model_code_uri
else:
error_log += "**Model code DOI**\n" + response + "\n"
response = check_uri(model_code_doi)
if response != "OK":
model_code_doi = ""
error_log += f"**Model code/inputs DOI**\n {response} \n"

model_code_record["doi"] = model_code_doi

# model code/inputs notes
model_code_notes = data["-> model code/inputs notes"].strip()

if model_code_notes == "_No response_":
model_code_notes == ""
error_log += "**Model code/inputs notes**\n"
error_log += "Warning: No notes provided.\n"

model_code_record["notes"] = model_code_notes

data_dict["model_code_inputs"] = model_code_record

# include model output data
model_output = data["-> include model output data?"].strip().split("\n")
Expand All @@ -193,19 +207,36 @@ def parse_issue(issue):
if type(selection) is str:
error_log += "**Include model output data?**\n" + selection + "\n"

# model output data
model_output_record = {}

# model output URI/DOI
model_output_uri = data["-> model output data DOI"].strip()
model_output_doi = data["-> model output data DOI"].strip()

if model_output_uri == "_No response_":
if model_output_doi == "_No response_":
model_output_doi = ""
error_log += "**Model output DOI**\n"
error_log += "Warning: No URI/DOI provided. \n"
error_log += "Warning: No DOI/URI provided. \n"
else:
response = check_uri(model_output_uri)
if response == "OK":
data_dict["model_output_uri"] = model_output_uri
else:
response = check_uri(model_output_doi)
if response != "OK":
model_output_doi = ""
error_log += "**Model output DOI**\n" + response + "\n"

model_output_record["doi"] = model_output_doi

# model output notes
model_output_notes = data["-> model output data notes"].strip()

if model_output_notes == "_No response_":
model_output_notes == ""
error_log += "**Model code/inputs notes**\n"
error_log += "Warning: No notes provided.\n"

model_output_record["notes"] = model_output_notes

data_dict["model_output_data"] = model_output_record


#############
# Section 3
Expand Down

0 comments on commit 0d9ae32

Please sign in to comment.