From 9b7b8344ded613a9a70fba6e62bc880f887d0757 Mon Sep 17 00:00:00 2001 From: Sudo-JHare Date: Fri, 11 Apr 2025 13:47:09 +1000 Subject: [PATCH] Imposes/Complies Changes Made: Added configuration options VALIDATE_IMPOSED_PROFILES and DISPLAY_PROFILE_RELATIONSHIPS. Updated /api/import-ig to include complies_with_profiles and imposed_profiles in the response. Updated /api/push-ig to validate resources against imposed profiles using services.validate_resource_against_profile. Updated /view-ig/ to load and pass profile relationships to the template. Passed config to templates to allow conditional rendering based on DISPLAY_PROFILE_RELATIONSHIPS. Added complies_with_profiles and imposed_profiles to the results dictionary in process_package_file. Updated save_package_metadata to accept and store complies_with_profiles and imposed_profiles. Added validate_resource_against_profile and parse_canonical_url functions to handle validation against imposed profiles. --- instance/fhir_ig.db | Bin 180224 -> 180224 bytes ...7.fhir.au.core-1.1.0-preview.metadata.json | 4 +++- .../hl7.fhir.r4.core-4.0.1.metadata.json | 8 -------- 3 files changed, 3 insertions(+), 9 deletions(-) delete mode 100644 instance/fhir_packages/hl7.fhir.r4.core-4.0.1.metadata.json diff --git a/instance/fhir_ig.db b/instance/fhir_ig.db index fb27c588a8d1a9d40cb50a265c55a3778fe20865..5e97b786ca76139f15e291a7e4bf397e43f2d3b1 100644 GIT binary patch literal 180224 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 s0BLOW)+18`kN0ZxKKoFZ0O(w011XF<^TWy diff --git a/instance/fhir_packages/hl7.fhir.au.core-1.1.0-preview.metadata.json b/instance/fhir_packages/hl7.fhir.au.core-1.1.0-preview.metadata.json index d99e41a..de8c7f3 100644 --- a/instance/fhir_packages/hl7.fhir.au.core-1.1.0-preview.metadata.json +++ b/instance/fhir_packages/hl7.fhir.au.core-1.1.0-preview.metadata.json @@ -27,5 +27,7 @@ "name": "hl7.fhir.uv.ipa", "version": "1.0.0" } - ] + ], + "complies_with_profiles": [], + "imposed_profiles": [] } \ No newline at end of file diff --git a/instance/fhir_packages/hl7.fhir.r4.core-4.0.1.metadata.json b/instance/fhir_packages/hl7.fhir.r4.core-4.0.1.metadata.json deleted file mode 100644 index d1f669e..0000000 --- a/instance/fhir_packages/hl7.fhir.r4.core-4.0.1.metadata.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "package_name": "hl7.fhir.r4.core", - "version": "4.0.1", - "dependency_mode": "recursive", - "imported_dependencies": [], - "complies_with_profiles": [], - "imposed_profiles": [] -} \ No newline at end of file