diff --git a/schemas/pre-release-testing/DDL_tables.sql b/schemas/pre-release-testing/DDL_tables.sql
index d05ebfe485872e63df761485c8de0adebeecc715..1d508d847625359dd0795bf35f9495cd3c1693a1 100644
--- a/schemas/pre-release-testing/DDL_tables.sql
+++ b/schemas/pre-release-testing/DDL_tables.sql
@@ -351,40 +351,20 @@ CREATE TABLE "project-name"."sphn_AssessmentEvent" (
     "sphn_hasAssessment__sphn_hasComponent__sphn_hasRange__sphn_hasUpperLimit__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
     "sphn_hasAssessment__sphn_hasComponent__sphn_hasRange__sphn_hasUpperLimit__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
     "sphn_hasAssessment__sphn_hasComponent__sphn_hasRange__sphn_hasUpperLimit__sphn_hasValue" numeric,
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__sphn_hasCodingSystemAndVersion" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__sphn_hasIdentifier" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__sphn_hasName" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri" "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type",
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasUnit__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasValue" numeric,
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasStringValue" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri" "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type",
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasUnit__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasValue" numeric,
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasStringValue" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri" "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type",
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasUnit__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasValue" numeric,
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasStringValue" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__id" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__id" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__iri" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__sphn_hasCodingSystemAndVersion" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__sphn_hasIdentifier" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__sphn_hasName" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__termid" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__id" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasComparator__iri" "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasComparator__iri_type",
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasUnit__id" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasValue" numeric,
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasStringValue" varchar(3000),
     "sphn_hasAssessment__sphn_hasName" varchar(3000),
     "sphn_hasAssessment__sphn_hasRange__id" varchar(3000),
     "sphn_hasAssessment__sphn_hasRange__sphn_hasLowerLimit__id" varchar(3000),
@@ -399,40 +379,20 @@ CREATE TABLE "project-name"."sphn_AssessmentEvent" (
     "sphn_hasAssessment__sphn_hasRange__sphn_hasUpperLimit__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
     "sphn_hasAssessment__sphn_hasRange__sphn_hasUpperLimit__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
     "sphn_hasAssessment__sphn_hasRange__sphn_hasUpperLimit__sphn_hasValue" numeric,
-    "sphn_hasAssessment__sphn_hasResult__AssessmentResult__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__AssessmentResult__sphn_hasCode__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__AssessmentResult__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__AssessmentResult__sphn_hasCode__sphn_hasCodingSystemAndVersion" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__AssessmentResult__sphn_hasCode__sphn_hasIdentifier" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__AssessmentResult__sphn_hasCode__sphn_hasName" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__AssessmentResult__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__AssessmentResult__sphn_hasQuantity__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri" "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type",
-    "sphn_hasAssessment__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasUnit__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasValue" numeric,
-    "sphn_hasAssessment__sphn_hasResult__AssessmentResult__sphn_hasStringValue" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__TumorGradeAssessmentResult__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri" "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type",
-    "sphn_hasAssessment__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasUnit__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasValue" numeric,
-    "sphn_hasAssessment__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasStringValue" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__TumorStageAssessmentResult__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__TumorStageAssessmentResult__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__TumorStageAssessmentResult__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri" "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type",
-    "sphn_hasAssessment__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasUnit__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasValue" numeric,
-    "sphn_hasAssessment__sphn_hasResult__TumorStageAssessmentResult__sphn_hasStringValue" varchar(3000),
+    "sphn_hasAssessment__sphn_hasResult__id" varchar(3000),
+    "sphn_hasAssessment__sphn_hasResult__sphn_hasCode__id" varchar(3000),
+    "sphn_hasAssessment__sphn_hasResult__sphn_hasCode__iri" varchar(3000),
+    "sphn_hasAssessment__sphn_hasResult__sphn_hasCode__sphn_hasCodingSystemAndVersion" varchar(3000),
+    "sphn_hasAssessment__sphn_hasResult__sphn_hasCode__sphn_hasIdentifier" varchar(3000),
+    "sphn_hasAssessment__sphn_hasResult__sphn_hasCode__sphn_hasName" varchar(3000),
+    "sphn_hasAssessment__sphn_hasResult__sphn_hasCode__termid" varchar(3000),
+    "sphn_hasAssessment__sphn_hasResult__sphn_hasQuantity__id" varchar(3000),
+    "sphn_hasAssessment__sphn_hasResult__sphn_hasQuantity__sphn_hasComparator__iri" "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasResult__sphn_hasQuantity__sphn_hasComparator__iri_type",
+    "sphn_hasAssessment__sphn_hasResult__sphn_hasQuantity__sphn_hasUnit__id" varchar(3000),
+    "sphn_hasAssessment__sphn_hasResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
+    "sphn_hasAssessment__sphn_hasResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
+    "sphn_hasAssessment__sphn_hasResult__sphn_hasQuantity__sphn_hasValue" numeric,
+    "sphn_hasAssessment__sphn_hasResult__sphn_hasStringValue" varchar(3000),
     "sphn_hasDataProvider__id" varchar(3000) NOT NULL,
     "sphn_hasDateTime" TIMESTAMPTZ NOT NULL,
     "sphn_hasPerformer__id" varchar(3000),
@@ -2290,6 +2250,13 @@ CREATE TABLE "project-name"."sphn_MicroorganismIdentificationLabTestEvent" (
     "sphn_hasLabTest__sphn_hasResult__sphn_hasNumericalReference__ReferenceValue__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
     "sphn_hasLabTest__sphn_hasResult__sphn_hasNumericalReference__ReferenceValue__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
     "sphn_hasLabTest__sphn_hasResult__sphn_hasNumericalReference__ReferenceValue__sphn_hasQuantity__sphn_hasValue" numeric,
+    "sphn_hasLabTest__sphn_hasResult__sphn_hasOrganism__id" varchar(3000),
+    "sphn_hasLabTest__sphn_hasResult__sphn_hasOrganism__sphn_hasCode__id" varchar(3000),
+    "sphn_hasLabTest__sphn_hasResult__sphn_hasOrganism__sphn_hasCode__iri" varchar(3000),
+    "sphn_hasLabTest__sphn_hasResult__sphn_hasOrganism__sphn_hasCode__sphn_hasCodingSystemAndVersion" varchar(3000),
+    "sphn_hasLabTest__sphn_hasResult__sphn_hasOrganism__sphn_hasCode__sphn_hasIdentifier" varchar(3000),
+    "sphn_hasLabTest__sphn_hasResult__sphn_hasOrganism__sphn_hasCode__sphn_hasName" varchar(3000),
+    "sphn_hasLabTest__sphn_hasResult__sphn_hasOrganism__sphn_hasCode__termid" varchar(3000),
     "sphn_hasLabTest__sphn_hasResult__sphn_hasPresenceCode__iri" varchar(3000),
     "sphn_hasLabTest__sphn_hasResult__sphn_hasPresenceCode__termid" varchar(3000),
     "sphn_hasLabTest__sphn_hasResult__sphn_hasQuantity__id" varchar(3000),
@@ -2460,7 +2427,7 @@ CREATE TABLE "project-name"."sphn_OxygenAdministrationEvent" (
     "sphn_hasFlowRate__id" varchar(3000),
     "sphn_hasFlowRate__sphn_hasComparator__iri" "project-name"."sphn_OxygenAdministrationEvent__sphn_hasFlowRate__sphn_hasComparator__iri_type",
     "sphn_hasFlowRate__sphn_hasUnit__id" varchar(3000),
-    "sphn_hasFlowRate__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
+    "sphn_hasFlowRate__sphn_hasUnit__sphn_hasCode__iri" "project-name"."sphn_OxygenAdministrationEvent__sphn_hasFlowRate__sphn_hasUnit__sphn_hasCode__iri_type",
     "sphn_hasFlowRate__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
     "sphn_hasFlowRate__sphn_hasValue" numeric,
     "sphn_hasFractionOfInspiredOxygen__id" varchar(3000),
@@ -2584,7 +2551,7 @@ CREATE TABLE "project-name"."sphn_RadiotherapyProcedure" (
     "sphn_hasFractionsNumber__id" varchar(3000),
     "sphn_hasFractionsNumber__sphn_hasComparator__iri" "project-name"."sphn_RadiotherapyProcedure__sphn_hasFractionsNumber__sphn_hasComparator__iri_type",
     "sphn_hasFractionsNumber__sphn_hasUnit__id" varchar(3000),
-    "sphn_hasFractionsNumber__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
+    "sphn_hasFractionsNumber__sphn_hasUnit__sphn_hasCode__iri" "project-name"."sphn_RadiotherapyProcedure__sphn_hasFractionsNumber__sphn_hasUnit__sphn_hasCode__iri_type",
     "sphn_hasFractionsNumber__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
     "sphn_hasFractionsNumber__sphn_hasValue" numeric,
     "sphn_hasIntent__id" varchar(3000),
@@ -3028,40 +2995,20 @@ CREATE TABLE "project-name"."sphn_TumorGradeAssessmentEvent" (
     "sphn_hasAssessment__sphn_hasComponent__sphn_hasRange__sphn_hasUpperLimit__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
     "sphn_hasAssessment__sphn_hasComponent__sphn_hasRange__sphn_hasUpperLimit__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
     "sphn_hasAssessment__sphn_hasComponent__sphn_hasRange__sphn_hasUpperLimit__sphn_hasValue" numeric,
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__sphn_hasCodingSystemAndVersion" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__sphn_hasIdentifier" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__sphn_hasName" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri" "project-name"."sphn_TumorGradeAssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type",
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasUnit__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasValue" numeric,
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasStringValue" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri" "project-name"."sphn_TumorGradeAssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type",
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasUnit__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasValue" numeric,
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasStringValue" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri" "project-name"."sphn_TumorGradeAssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type",
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasUnit__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasValue" numeric,
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasStringValue" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__id" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__id" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__iri" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__sphn_hasCodingSystemAndVersion" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__sphn_hasIdentifier" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__sphn_hasName" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__termid" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__id" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasComparator__iri" "project-name"."sphn_TumorGradeAssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasComparator__iri_type",
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasUnit__id" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasValue" numeric,
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasStringValue" varchar(3000),
     "sphn_hasAssessment__sphn_hasName" varchar(3000),
     "sphn_hasAssessment__sphn_hasRange__id" varchar(3000),
     "sphn_hasAssessment__sphn_hasRange__sphn_hasLowerLimit__id" varchar(3000),
@@ -3207,40 +3154,20 @@ CREATE TABLE "project-name"."sphn_TumorStageAssessmentEvent" (
     "sphn_hasAssessment__sphn_hasComponent__sphn_hasRange__sphn_hasUpperLimit__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
     "sphn_hasAssessment__sphn_hasComponent__sphn_hasRange__sphn_hasUpperLimit__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
     "sphn_hasAssessment__sphn_hasComponent__sphn_hasRange__sphn_hasUpperLimit__sphn_hasValue" numeric,
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__sphn_hasCodingSystemAndVersion" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__sphn_hasIdentifier" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__sphn_hasName" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri" "project-name"."sphn_TumorStageAssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type",
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasUnit__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasValue" numeric,
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasStringValue" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri" "project-name"."sphn_TumorStageAssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type",
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasUnit__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasValue" numeric,
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasStringValue" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri" "project-name"."sphn_TumorStageAssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type",
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasUnit__id" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasValue" numeric,
-    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasStringValue" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__id" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__id" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__iri" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__sphn_hasCodingSystemAndVersion" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__sphn_hasIdentifier" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__sphn_hasName" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasCode__termid" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__id" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasComparator__iri" "project-name"."sphn_TumorStageAssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasComparator__iri_type",
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasUnit__id" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__iri" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasUnit__sphn_hasCode__termid" varchar(3000),
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasValue" numeric,
+    "sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasStringValue" varchar(3000),
     "sphn_hasAssessment__sphn_hasName" varchar(3000),
     "sphn_hasAssessment__sphn_hasRange__id" varchar(3000),
     "sphn_hasAssessment__sphn_hasRange__sphn_hasLowerLimit__id" varchar(3000),
diff --git a/schemas/pre-release-testing/DDL_types.sql b/schemas/pre-release-testing/DDL_types.sql
index cb3557e1896721fba658c5ca11043f61c695c39b..79bcec18a8a234fa7e48621c7aee6fb5dd9ea458 100644
--- a/schemas/pre-release-testing/DDL_types.sql
+++ b/schemas/pre-release-testing/DDL_types.sql
@@ -94,19 +94,7 @@ CREATE TYPE "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasCo
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual'
 );
-CREATE TYPE "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual'
-);
-CREATE TYPE "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual'
-);
-CREATE TYPE "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
+CREATE TYPE "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan',
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual',
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
@@ -124,19 +112,7 @@ CREATE TYPE "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasRa
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual'
 );
-CREATE TYPE "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual'
-);
-CREATE TYPE "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual'
-);
-CREATE TYPE "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
+CREATE TYPE "project-name"."sphn_AssessmentEvent__sphn_hasAssessment__sphn_hasResult__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan',
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual',
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
@@ -764,6 +740,9 @@ CREATE TYPE "project-name"."sphn_OxygenAdministrationEvent__sphn_hasFlowRate__sp
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual'
 );
+CREATE TYPE "project-name"."sphn_OxygenAdministrationEvent__sphn_hasFlowRate__sphn_hasUnit__sphn_hasCode__iri_type" AS ENUM (
+    'https://biomedit.ch/rdf/sphn-resource/ucum/Lpermin'
+);
 CREATE TYPE "project-name"."sphn_OxygenAdministrationEvent__sphn_hasFractionOfInspiredOxygen__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan',
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual',
@@ -788,6 +767,9 @@ CREATE TYPE "project-name"."sphn_RadiotherapyProcedure__sphn_hasFractionsNumber_
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual'
 );
+CREATE TYPE "project-name"."sphn_RadiotherapyProcedure__sphn_hasFractionsNumber__sphn_hasUnit__sphn_hasCode__iri_type" AS ENUM (
+    'https://biomedit.ch/rdf/sphn-resource/ucum/cblnbcbr'
+);
 CREATE TYPE "project-name"."sphn_RadiotherapyProcedure__sphn_hasRadiationQuantity__sphn_hasComparator__iri_type" AS ENUM (
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan',
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual',
@@ -995,19 +977,7 @@ CREATE TYPE "project-name"."sphn_TumorGradeAssessmentEvent__sphn_hasAssessment__
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual'
 );
-CREATE TYPE "project-name"."sphn_TumorGradeAssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual'
-);
-CREATE TYPE "project-name"."sphn_TumorGradeAssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual'
-);
-CREATE TYPE "project-name"."sphn_TumorGradeAssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
+CREATE TYPE "project-name"."sphn_TumorGradeAssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan',
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual',
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
@@ -1104,19 +1074,7 @@ CREATE TYPE "project-name"."sphn_TumorStageAssessmentEvent__sphn_hasAssessment__
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual'
 );
-CREATE TYPE "project-name"."sphn_TumorStageAssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__AssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual'
-);
-CREATE TYPE "project-name"."sphn_TumorStageAssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorGradeAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
-    'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual'
-);
-CREATE TYPE "project-name"."sphn_TumorStageAssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__TumorStageAssessmentResult__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
+CREATE TYPE "project-name"."sphn_TumorStageAssessmentEvent__sphn_hasAssessment__sphn_hasComponent__sphn_hasResult__sphn_hasQuantity__sphn_hasComparator__iri_type" AS ENUM (
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan',
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual',
     'https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan',
diff --git a/schemas/pre-release-testing/json_schema.json b/schemas/pre-release-testing/json_schema.json
index d35a605afd0b202614cee387a00fbbfb6c5235c1..6a2cab1a6961aa63363820e11e790a58205b6409 100644
--- a/schemas/pre-release-testing/json_schema.json
+++ b/schemas/pre-release-testing/json_schema.json
@@ -3998,182 +3998,49 @@
                                                 "sphn:hasResult": {
                                                     "description": "List of 'hasResult' properties",
                                                     "items": {
-                                                        "description": "SPHN Concept 'AssessmentResult'/SPHN Concept 'TumorGradeAssessmentResult'/SPHN Concept 'TumorStageAssessmentResult'",
-                                                        "oneOf": [
-                                                            {
-                                                                "additionalProperties": false,
-                                                                "description": "SPHN Concept 'AssessmentResult'",
-                                                                "properties": {
-                                                                    "id": {
-                                                                        "description": "ID of SPHN Concept 'AssessmentResult'",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "sphn:hasCode": {
-                                                                        "description": "SPHN Concept 'Code'/SPHN Concept 'Terminology'",
-                                                                        "oneOf": [
-                                                                            {
-                                                                                "additionalProperties": false,
-                                                                                "description": "SPHN Concept 'Code'",
-                                                                                "properties": {
-                                                                                    "id": {
-                                                                                        "description": "ID of SPHN Concept 'Code'",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sourceConceptID": {
-                                                                                        "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sphn:hasCodingSystemAndVersion": {
-                                                                                        "description": "Value for 'hasCodingSystemAndVersion' property",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sphn:hasIdentifier": {
-                                                                                        "description": "Value for 'hasIdentifier' property",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sphn:hasName": {
-                                                                                        "description": "Value for 'hasName' property",
-                                                                                        "type": "string"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "id",
-                                                                                    "sphn:hasCodingSystemAndVersion",
-                                                                                    "sphn:hasIdentifier"
-                                                                                ],
-                                                                                "type": "object"
-                                                                            },
-                                                                            {
-                                                                                "additionalProperties": false,
-                                                                                "description": "SPHN Concept 'Terminology'",
-                                                                                "properties": {
-                                                                                    "iri": {
-                                                                                        "description": "IRI of SPHN Concept 'Terminology'",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sourceConceptID": {
-                                                                                        "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "termid": {
-                                                                                        "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                        "type": "string"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "iri",
-                                                                                    "termid"
-                                                                                ],
-                                                                                "type": "object"
-                                                                            }
-                                                                        ],
-                                                                        "type": "object"
-                                                                    },
-                                                                    "sphn:hasQuantity": {
+                                                        "additionalProperties": false,
+                                                        "description": "SPHN Concept 'AssessmentResult'",
+                                                        "properties": {
+                                                            "id": {
+                                                                "description": "ID of SPHN Concept 'AssessmentResult'",
+                                                                "type": "string"
+                                                            },
+                                                            "sphn:hasCode": {
+                                                                "description": "SPHN Concept 'Code'/SPHN Concept 'Terminology'",
+                                                                "oneOf": [
+                                                                    {
                                                                         "additionalProperties": false,
-                                                                        "description": "SPHN Concept 'Quantity'",
+                                                                        "description": "SPHN Concept 'Code'",
                                                                         "properties": {
                                                                             "id": {
-                                                                                "description": "ID of SPHN Concept 'Quantity'",
+                                                                                "description": "ID of SPHN Concept 'Code'",
                                                                                 "type": "string"
                                                                             },
-                                                                            "sphn:hasComparator": {
-                                                                                "additionalProperties": false,
-                                                                                "description": "Value Set for property 'hasComparator'",
-                                                                                "properties": {
-                                                                                    "iri": {
-                                                                                        "description": "IRI for 'hasComparator' property",
-                                                                                        "enum": [
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual"
-                                                                                        ],
-                                                                                        "type": "string"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "iri"
-                                                                                ],
-                                                                                "type": "object"
+                                                                            "sourceConceptID": {
+                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
+                                                                                "type": "string"
                                                                             },
-                                                                            "sphn:hasUnit": {
-                                                                                "additionalProperties": false,
-                                                                                "description": "SPHN Concept 'Unit'",
-                                                                                "properties": {
-                                                                                    "id": {
-                                                                                        "description": "ID of SPHN Concept 'Unit'",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sphn:hasCode": {
-                                                                                        "additionalProperties": false,
-                                                                                        "description": "Schema for property 'hasCode'",
-                                                                                        "properties": {
-                                                                                            "iri": {
-                                                                                                "description": "UCUM IRI for 'hasCode' property",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "sourceConceptID": {
-                                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "termid": {
-                                                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                                "type": "string"
-                                                                                            }
-                                                                                        },
-                                                                                        "required": [
-                                                                                            "iri",
-                                                                                            "termid"
-                                                                                        ],
-                                                                                        "type": "object"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "id",
-                                                                                    "sphn:hasCode"
-                                                                                ],
-                                                                                "type": "object"
+                                                                            "sphn:hasCodingSystemAndVersion": {
+                                                                                "description": "Value for 'hasCodingSystemAndVersion' property",
+                                                                                "type": "string"
                                                                             },
-                                                                            "sphn:hasValue": {
-                                                                                "description": "Value for 'hasValue' property",
-                                                                                "type": "number"
+                                                                            "sphn:hasIdentifier": {
+                                                                                "description": "Value for 'hasIdentifier' property",
+                                                                                "type": "string"
+                                                                            },
+                                                                            "sphn:hasName": {
+                                                                                "description": "Value for 'hasName' property",
+                                                                                "type": "string"
                                                                             }
                                                                         },
                                                                         "required": [
                                                                             "id",
-                                                                            "sphn:hasUnit",
-                                                                            "sphn:hasValue"
+                                                                            "sphn:hasCodingSystemAndVersion",
+                                                                            "sphn:hasIdentifier"
                                                                         ],
                                                                         "type": "object"
                                                                     },
-                                                                    "sphn:hasStringValue": {
-                                                                        "description": "Value for 'hasStringValue' property",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "target_concept": {
-                                                                        "description": "IRI for Concept 'AssessmentResult'",
-                                                                        "enum": [
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult"
-                                                                        ],
-                                                                        "type": "string"
-                                                                    }
-                                                                },
-                                                                "required": [
-                                                                    "id",
-                                                                    "target_concept"
-                                                                ],
-                                                                "type": "object"
-                                                            },
-                                                            {
-                                                                "additionalProperties": false,
-                                                                "description": "SPHN Concept 'TumorGradeAssessmentResult'",
-                                                                "properties": {
-                                                                    "id": {
-                                                                        "description": "ID of SPHN Concept 'TumorGradeAssessmentResult'",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "sphn:hasCode": {
+                                                                    {
                                                                         "additionalProperties": false,
                                                                         "description": "SPHN Concept 'Terminology'",
                                                                         "properties": {
@@ -4195,230 +4062,95 @@
                                                                             "termid"
                                                                         ],
                                                                         "type": "object"
+                                                                    }
+                                                                ],
+                                                                "type": "object"
+                                                            },
+                                                            "sphn:hasQuantity": {
+                                                                "additionalProperties": false,
+                                                                "description": "SPHN Concept 'Quantity'",
+                                                                "properties": {
+                                                                    "id": {
+                                                                        "description": "ID of SPHN Concept 'Quantity'",
+                                                                        "type": "string"
                                                                     },
-                                                                    "sphn:hasQuantity": {
+                                                                    "sphn:hasComparator": {
                                                                         "additionalProperties": false,
-                                                                        "description": "SPHN Concept 'Quantity'",
+                                                                        "description": "Value Set for property 'hasComparator'",
+                                                                        "properties": {
+                                                                            "iri": {
+                                                                                "description": "IRI for 'hasComparator' property",
+                                                                                "enum": [
+                                                                                    "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan",
+                                                                                    "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual",
+                                                                                    "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan",
+                                                                                    "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual"
+                                                                                ],
+                                                                                "type": "string"
+                                                                            }
+                                                                        },
+                                                                        "required": [
+                                                                            "iri"
+                                                                        ],
+                                                                        "type": "object"
+                                                                    },
+                                                                    "sphn:hasUnit": {
+                                                                        "additionalProperties": false,
+                                                                        "description": "SPHN Concept 'Unit'",
                                                                         "properties": {
                                                                             "id": {
-                                                                                "description": "ID of SPHN Concept 'Quantity'",
+                                                                                "description": "ID of SPHN Concept 'Unit'",
                                                                                 "type": "string"
                                                                             },
-                                                                            "sphn:hasComparator": {
+                                                                            "sphn:hasCode": {
                                                                                 "additionalProperties": false,
-                                                                                "description": "Value Set for property 'hasComparator'",
+                                                                                "description": "Schema for property 'hasCode'",
                                                                                 "properties": {
                                                                                     "iri": {
-                                                                                        "description": "IRI for 'hasComparator' property",
-                                                                                        "enum": [
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual"
-                                                                                        ],
+                                                                                        "description": "UCUM IRI for 'hasCode' property",
                                                                                         "type": "string"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "iri"
-                                                                                ],
-                                                                                "type": "object"
-                                                                            },
-                                                                            "sphn:hasUnit": {
-                                                                                "additionalProperties": false,
-                                                                                "description": "SPHN Concept 'Unit'",
-                                                                                "properties": {
-                                                                                    "id": {
-                                                                                        "description": "ID of SPHN Concept 'Unit'",
+                                                                                    },
+                                                                                    "sourceConceptID": {
+                                                                                        "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
                                                                                         "type": "string"
                                                                                     },
-                                                                                    "sphn:hasCode": {
-                                                                                        "additionalProperties": false,
-                                                                                        "description": "Schema for property 'hasCode'",
-                                                                                        "properties": {
-                                                                                            "iri": {
-                                                                                                "description": "UCUM IRI for 'hasCode' property",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "sourceConceptID": {
-                                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "termid": {
-                                                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                                "type": "string"
-                                                                                            }
-                                                                                        },
-                                                                                        "required": [
-                                                                                            "iri",
-                                                                                            "termid"
-                                                                                        ],
-                                                                                        "type": "object"
+                                                                                    "termid": {
+                                                                                        "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
+                                                                                        "type": "string"
                                                                                     }
                                                                                 },
                                                                                 "required": [
-                                                                                    "id",
-                                                                                    "sphn:hasCode"
-                                                                                ],
-                                                                                "type": "object"
-                                                                            },
-                                                                            "sphn:hasValue": {
-                                                                                "description": "Value for 'hasValue' property",
-                                                                                "type": "number"
-                                                                            }
-                                                                        },
-                                                                        "required": [
-                                                                            "id",
-                                                                            "sphn:hasUnit",
-                                                                            "sphn:hasValue"
-                                                                        ],
-                                                                        "type": "object"
-                                                                    },
-                                                                    "sphn:hasStringValue": {
-                                                                        "description": "Value for 'hasStringValue' property",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "target_concept": {
-                                                                        "description": "IRI for Concept 'TumorGradeAssessmentResult'",
-                                                                        "enum": [
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult"
-                                                                        ],
-                                                                        "type": "string"
-                                                                    }
-                                                                },
-                                                                "required": [
-                                                                    "id",
-                                                                    "target_concept"
-                                                                ],
-                                                                "type": "object"
-                                                            },
-                                                            {
-                                                                "additionalProperties": false,
-                                                                "description": "SPHN Concept 'TumorStageAssessmentResult'",
-                                                                "properties": {
-                                                                    "id": {
-                                                                        "description": "ID of SPHN Concept 'TumorStageAssessmentResult'",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "sphn:hasCode": {
-                                                                        "additionalProperties": false,
-                                                                        "description": "SPHN Concept 'Terminology'",
-                                                                        "properties": {
-                                                                            "iri": {
-                                                                                "description": "IRI of SPHN Concept 'Terminology'",
-                                                                                "type": "string"
-                                                                            },
-                                                                            "sourceConceptID": {
-                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                "type": "string"
-                                                                            },
-                                                                            "termid": {
-                                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                "type": "string"
-                                                                            }
-                                                                        },
-                                                                        "required": [
-                                                                            "iri",
-                                                                            "termid"
-                                                                        ],
-                                                                        "type": "object"
-                                                                    },
-                                                                    "sphn:hasQuantity": {
-                                                                        "additionalProperties": false,
-                                                                        "description": "SPHN Concept 'Quantity'",
-                                                                        "properties": {
-                                                                            "id": {
-                                                                                "description": "ID of SPHN Concept 'Quantity'",
-                                                                                "type": "string"
-                                                                            },
-                                                                            "sphn:hasComparator": {
-                                                                                "additionalProperties": false,
-                                                                                "description": "Value Set for property 'hasComparator'",
-                                                                                "properties": {
-                                                                                    "iri": {
-                                                                                        "description": "IRI for 'hasComparator' property",
-                                                                                        "enum": [
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual"
-                                                                                        ],
-                                                                                        "type": "string"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "iri"
-                                                                                ],
-                                                                                "type": "object"
-                                                                            },
-                                                                            "sphn:hasUnit": {
-                                                                                "additionalProperties": false,
-                                                                                "description": "SPHN Concept 'Unit'",
-                                                                                "properties": {
-                                                                                    "id": {
-                                                                                        "description": "ID of SPHN Concept 'Unit'",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sphn:hasCode": {
-                                                                                        "additionalProperties": false,
-                                                                                        "description": "Schema for property 'hasCode'",
-                                                                                        "properties": {
-                                                                                            "iri": {
-                                                                                                "description": "UCUM IRI for 'hasCode' property",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "sourceConceptID": {
-                                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "termid": {
-                                                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                                "type": "string"
-                                                                                            }
-                                                                                        },
-                                                                                        "required": [
-                                                                                            "iri",
-                                                                                            "termid"
-                                                                                        ],
-                                                                                        "type": "object"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "id",
-                                                                                    "sphn:hasCode"
+                                                                                    "iri",
+                                                                                    "termid"
                                                                                 ],
                                                                                 "type": "object"
-                                                                            },
-                                                                            "sphn:hasValue": {
-                                                                                "description": "Value for 'hasValue' property",
-                                                                                "type": "number"
                                                                             }
                                                                         },
                                                                         "required": [
                                                                             "id",
-                                                                            "sphn:hasUnit",
-                                                                            "sphn:hasValue"
+                                                                            "sphn:hasCode"
                                                                         ],
                                                                         "type": "object"
                                                                     },
-                                                                    "sphn:hasStringValue": {
-                                                                        "description": "Value for 'hasStringValue' property",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "target_concept": {
-                                                                        "description": "IRI for Concept 'TumorStageAssessmentResult'",
-                                                                        "enum": [
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult"
-                                                                        ],
-                                                                        "type": "string"
+                                                                    "sphn:hasValue": {
+                                                                        "description": "Value for 'hasValue' property",
+                                                                        "type": "number"
                                                                     }
                                                                 },
                                                                 "required": [
                                                                     "id",
-                                                                    "target_concept"
+                                                                    "sphn:hasUnit",
+                                                                    "sphn:hasValue"
                                                                 ],
                                                                 "type": "object"
+                                                            },
+                                                            "sphn:hasStringValue": {
+                                                                "description": "Value for 'hasStringValue' property",
+                                                                "type": "string"
                                                             }
+                                                        },
+                                                        "required": [
+                                                            "id"
                                                         ],
                                                         "type": "object"
                                                     },
@@ -4607,57 +4339,116 @@
                                         "type": "object"
                                     },
                                     "sphn:hasResult": {
-                                        "description": "SPHN Concept 'AssessmentResult'/SPHN Concept 'TumorGradeAssessmentResult'/SPHN Concept 'TumorStageAssessmentResult'",
-                                        "oneOf": [
-                                            {
+                                        "additionalProperties": false,
+                                        "description": "SPHN Concept 'AssessmentResult'",
+                                        "properties": {
+                                            "id": {
+                                                "description": "ID of SPHN Concept 'AssessmentResult'",
+                                                "type": "string"
+                                            },
+                                            "sphn:hasCode": {
+                                                "description": "SPHN Concept 'Code'/SPHN Concept 'Terminology'",
+                                                "oneOf": [
+                                                    {
+                                                        "additionalProperties": false,
+                                                        "description": "SPHN Concept 'Code'",
+                                                        "properties": {
+                                                            "id": {
+                                                                "description": "ID of SPHN Concept 'Code'",
+                                                                "type": "string"
+                                                            },
+                                                            "sourceConceptID": {
+                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
+                                                                "type": "string"
+                                                            },
+                                                            "sphn:hasCodingSystemAndVersion": {
+                                                                "description": "Value for 'hasCodingSystemAndVersion' property",
+                                                                "type": "string"
+                                                            },
+                                                            "sphn:hasIdentifier": {
+                                                                "description": "Value for 'hasIdentifier' property",
+                                                                "type": "string"
+                                                            },
+                                                            "sphn:hasName": {
+                                                                "description": "Value for 'hasName' property",
+                                                                "type": "string"
+                                                            }
+                                                        },
+                                                        "required": [
+                                                            "id",
+                                                            "sphn:hasCodingSystemAndVersion",
+                                                            "sphn:hasIdentifier"
+                                                        ],
+                                                        "type": "object"
+                                                    },
+                                                    {
+                                                        "additionalProperties": false,
+                                                        "description": "SPHN Concept 'Terminology'",
+                                                        "properties": {
+                                                            "iri": {
+                                                                "description": "IRI of SPHN Concept 'Terminology'",
+                                                                "type": "string"
+                                                            },
+                                                            "sourceConceptID": {
+                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
+                                                                "type": "string"
+                                                            },
+                                                            "termid": {
+                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
+                                                                "type": "string"
+                                                            }
+                                                        },
+                                                        "required": [
+                                                            "iri",
+                                                            "termid"
+                                                        ],
+                                                        "type": "object"
+                                                    }
+                                                ],
+                                                "type": "object"
+                                            },
+                                            "sphn:hasQuantity": {
                                                 "additionalProperties": false,
-                                                "description": "SPHN Concept 'AssessmentResult'",
+                                                "description": "SPHN Concept 'Quantity'",
                                                 "properties": {
                                                     "id": {
-                                                        "description": "ID of SPHN Concept 'AssessmentResult'",
+                                                        "description": "ID of SPHN Concept 'Quantity'",
                                                         "type": "string"
                                                     },
-                                                    "sphn:hasCode": {
-                                                        "description": "SPHN Concept 'Code'/SPHN Concept 'Terminology'",
-                                                        "oneOf": [
-                                                            {
+                                                    "sphn:hasComparator": {
+                                                        "additionalProperties": false,
+                                                        "description": "Value Set for property 'hasComparator'",
+                                                        "properties": {
+                                                            "iri": {
+                                                                "description": "IRI for 'hasComparator' property",
+                                                                "enum": [
+                                                                    "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan",
+                                                                    "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual",
+                                                                    "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan",
+                                                                    "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual"
+                                                                ],
+                                                                "type": "string"
+                                                            }
+                                                        },
+                                                        "required": [
+                                                            "iri"
+                                                        ],
+                                                        "type": "object"
+                                                    },
+                                                    "sphn:hasUnit": {
+                                                        "additionalProperties": false,
+                                                        "description": "SPHN Concept 'Unit'",
+                                                        "properties": {
+                                                            "id": {
+                                                                "description": "ID of SPHN Concept 'Unit'",
+                                                                "type": "string"
+                                                            },
+                                                            "sphn:hasCode": {
                                                                 "additionalProperties": false,
-                                                                "description": "SPHN Concept 'Code'",
+                                                                "description": "Schema for property 'hasCode'",
                                                                 "properties": {
-                                                                    "id": {
-                                                                        "description": "ID of SPHN Concept 'Code'",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "sourceConceptID": {
-                                                                        "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "sphn:hasCodingSystemAndVersion": {
-                                                                        "description": "Value for 'hasCodingSystemAndVersion' property",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "sphn:hasIdentifier": {
-                                                                        "description": "Value for 'hasIdentifier' property",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "sphn:hasName": {
-                                                                        "description": "Value for 'hasName' property",
-                                                                        "type": "string"
-                                                                    }
-                                                                },
-                                                                "required": [
-                                                                    "id",
-                                                                    "sphn:hasCodingSystemAndVersion",
-                                                                    "sphn:hasIdentifier"
-                                                                ],
-                                                                "type": "object"
-                                                            },
-                                                            {
-                                                                "additionalProperties": false,
-                                                                "description": "SPHN Concept 'Terminology'",
-                                                                "properties": {
-                                                                    "iri": {
-                                                                        "description": "IRI of SPHN Concept 'Terminology'",
+                                                                    "iri": {
+                                                                        "description": "UCUM IRI for 'hasCode' property",
                                                                         "type": "string"
                                                                     },
                                                                     "sourceConceptID": {
@@ -4675,359 +4466,32 @@
                                                                 ],
                                                                 "type": "object"
                                                             }
-                                                        ],
-                                                        "type": "object"
-                                                    },
-                                                    "sphn:hasQuantity": {
-                                                        "additionalProperties": false,
-                                                        "description": "SPHN Concept 'Quantity'",
-                                                        "properties": {
-                                                            "id": {
-                                                                "description": "ID of SPHN Concept 'Quantity'",
-                                                                "type": "string"
-                                                            },
-                                                            "sphn:hasComparator": {
-                                                                "additionalProperties": false,
-                                                                "description": "Value Set for property 'hasComparator'",
-                                                                "properties": {
-                                                                    "iri": {
-                                                                        "description": "IRI for 'hasComparator' property",
-                                                                        "enum": [
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan",
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual",
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan",
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual"
-                                                                        ],
-                                                                        "type": "string"
-                                                                    }
-                                                                },
-                                                                "required": [
-                                                                    "iri"
-                                                                ],
-                                                                "type": "object"
-                                                            },
-                                                            "sphn:hasUnit": {
-                                                                "additionalProperties": false,
-                                                                "description": "SPHN Concept 'Unit'",
-                                                                "properties": {
-                                                                    "id": {
-                                                                        "description": "ID of SPHN Concept 'Unit'",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "sphn:hasCode": {
-                                                                        "additionalProperties": false,
-                                                                        "description": "Schema for property 'hasCode'",
-                                                                        "properties": {
-                                                                            "iri": {
-                                                                                "description": "UCUM IRI for 'hasCode' property",
-                                                                                "type": "string"
-                                                                            },
-                                                                            "sourceConceptID": {
-                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                "type": "string"
-                                                                            },
-                                                                            "termid": {
-                                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                "type": "string"
-                                                                            }
-                                                                        },
-                                                                        "required": [
-                                                                            "iri",
-                                                                            "termid"
-                                                                        ],
-                                                                        "type": "object"
-                                                                    }
-                                                                },
-                                                                "required": [
-                                                                    "id",
-                                                                    "sphn:hasCode"
-                                                                ],
-                                                                "type": "object"
-                                                            },
-                                                            "sphn:hasValue": {
-                                                                "description": "Value for 'hasValue' property",
-                                                                "type": "number"
-                                                            }
-                                                        },
-                                                        "required": [
-                                                            "id",
-                                                            "sphn:hasUnit",
-                                                            "sphn:hasValue"
-                                                        ],
-                                                        "type": "object"
-                                                    },
-                                                    "sphn:hasStringValue": {
-                                                        "description": "Value for 'hasStringValue' property",
-                                                        "type": "string"
-                                                    },
-                                                    "target_concept": {
-                                                        "description": "IRI for Concept 'AssessmentResult'",
-                                                        "enum": [
-                                                            "https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult"
-                                                        ],
-                                                        "type": "string"
-                                                    }
-                                                },
-                                                "required": [
-                                                    "id",
-                                                    "target_concept"
-                                                ],
-                                                "type": "object"
-                                            },
-                                            {
-                                                "additionalProperties": false,
-                                                "description": "SPHN Concept 'TumorGradeAssessmentResult'",
-                                                "properties": {
-                                                    "id": {
-                                                        "description": "ID of SPHN Concept 'TumorGradeAssessmentResult'",
-                                                        "type": "string"
-                                                    },
-                                                    "sphn:hasCode": {
-                                                        "additionalProperties": false,
-                                                        "description": "SPHN Concept 'Terminology'",
-                                                        "properties": {
-                                                            "iri": {
-                                                                "description": "IRI of SPHN Concept 'Terminology'",
-                                                                "type": "string"
-                                                            },
-                                                            "sourceConceptID": {
-                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                "type": "string"
-                                                            },
-                                                            "termid": {
-                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                "type": "string"
-                                                            }
-                                                        },
-                                                        "required": [
-                                                            "iri",
-                                                            "termid"
-                                                        ],
-                                                        "type": "object"
-                                                    },
-                                                    "sphn:hasQuantity": {
-                                                        "additionalProperties": false,
-                                                        "description": "SPHN Concept 'Quantity'",
-                                                        "properties": {
-                                                            "id": {
-                                                                "description": "ID of SPHN Concept 'Quantity'",
-                                                                "type": "string"
-                                                            },
-                                                            "sphn:hasComparator": {
-                                                                "additionalProperties": false,
-                                                                "description": "Value Set for property 'hasComparator'",
-                                                                "properties": {
-                                                                    "iri": {
-                                                                        "description": "IRI for 'hasComparator' property",
-                                                                        "enum": [
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan",
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual",
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan",
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual"
-                                                                        ],
-                                                                        "type": "string"
-                                                                    }
-                                                                },
-                                                                "required": [
-                                                                    "iri"
-                                                                ],
-                                                                "type": "object"
-                                                            },
-                                                            "sphn:hasUnit": {
-                                                                "additionalProperties": false,
-                                                                "description": "SPHN Concept 'Unit'",
-                                                                "properties": {
-                                                                    "id": {
-                                                                        "description": "ID of SPHN Concept 'Unit'",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "sphn:hasCode": {
-                                                                        "additionalProperties": false,
-                                                                        "description": "Schema for property 'hasCode'",
-                                                                        "properties": {
-                                                                            "iri": {
-                                                                                "description": "UCUM IRI for 'hasCode' property",
-                                                                                "type": "string"
-                                                                            },
-                                                                            "sourceConceptID": {
-                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                "type": "string"
-                                                                            },
-                                                                            "termid": {
-                                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                "type": "string"
-                                                                            }
-                                                                        },
-                                                                        "required": [
-                                                                            "iri",
-                                                                            "termid"
-                                                                        ],
-                                                                        "type": "object"
-                                                                    }
-                                                                },
-                                                                "required": [
-                                                                    "id",
-                                                                    "sphn:hasCode"
-                                                                ],
-                                                                "type": "object"
-                                                            },
-                                                            "sphn:hasValue": {
-                                                                "description": "Value for 'hasValue' property",
-                                                                "type": "number"
-                                                            }
                                                         },
                                                         "required": [
                                                             "id",
-                                                            "sphn:hasUnit",
-                                                            "sphn:hasValue"
+                                                            "sphn:hasCode"
                                                         ],
                                                         "type": "object"
                                                     },
-                                                    "sphn:hasStringValue": {
-                                                        "description": "Value for 'hasStringValue' property",
-                                                        "type": "string"
-                                                    },
-                                                    "target_concept": {
-                                                        "description": "IRI for Concept 'TumorGradeAssessmentResult'",
-                                                        "enum": [
-                                                            "https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult"
-                                                        ],
-                                                        "type": "string"
+                                                    "sphn:hasValue": {
+                                                        "description": "Value for 'hasValue' property",
+                                                        "type": "number"
                                                     }
                                                 },
                                                 "required": [
                                                     "id",
-                                                    "target_concept"
+                                                    "sphn:hasUnit",
+                                                    "sphn:hasValue"
                                                 ],
                                                 "type": "object"
                                             },
-                                            {
-                                                "additionalProperties": false,
-                                                "description": "SPHN Concept 'TumorStageAssessmentResult'",
-                                                "properties": {
-                                                    "id": {
-                                                        "description": "ID of SPHN Concept 'TumorStageAssessmentResult'",
-                                                        "type": "string"
-                                                    },
-                                                    "sphn:hasCode": {
-                                                        "additionalProperties": false,
-                                                        "description": "SPHN Concept 'Terminology'",
-                                                        "properties": {
-                                                            "iri": {
-                                                                "description": "IRI of SPHN Concept 'Terminology'",
-                                                                "type": "string"
-                                                            },
-                                                            "sourceConceptID": {
-                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                "type": "string"
-                                                            },
-                                                            "termid": {
-                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                "type": "string"
-                                                            }
-                                                        },
-                                                        "required": [
-                                                            "iri",
-                                                            "termid"
-                                                        ],
-                                                        "type": "object"
-                                                    },
-                                                    "sphn:hasQuantity": {
-                                                        "additionalProperties": false,
-                                                        "description": "SPHN Concept 'Quantity'",
-                                                        "properties": {
-                                                            "id": {
-                                                                "description": "ID of SPHN Concept 'Quantity'",
-                                                                "type": "string"
-                                                            },
-                                                            "sphn:hasComparator": {
-                                                                "additionalProperties": false,
-                                                                "description": "Value Set for property 'hasComparator'",
-                                                                "properties": {
-                                                                    "iri": {
-                                                                        "description": "IRI for 'hasComparator' property",
-                                                                        "enum": [
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan",
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual",
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan",
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual"
-                                                                        ],
-                                                                        "type": "string"
-                                                                    }
-                                                                },
-                                                                "required": [
-                                                                    "iri"
-                                                                ],
-                                                                "type": "object"
-                                                            },
-                                                            "sphn:hasUnit": {
-                                                                "additionalProperties": false,
-                                                                "description": "SPHN Concept 'Unit'",
-                                                                "properties": {
-                                                                    "id": {
-                                                                        "description": "ID of SPHN Concept 'Unit'",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "sphn:hasCode": {
-                                                                        "additionalProperties": false,
-                                                                        "description": "Schema for property 'hasCode'",
-                                                                        "properties": {
-                                                                            "iri": {
-                                                                                "description": "UCUM IRI for 'hasCode' property",
-                                                                                "type": "string"
-                                                                            },
-                                                                            "sourceConceptID": {
-                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                "type": "string"
-                                                                            },
-                                                                            "termid": {
-                                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                "type": "string"
-                                                                            }
-                                                                        },
-                                                                        "required": [
-                                                                            "iri",
-                                                                            "termid"
-                                                                        ],
-                                                                        "type": "object"
-                                                                    }
-                                                                },
-                                                                "required": [
-                                                                    "id",
-                                                                    "sphn:hasCode"
-                                                                ],
-                                                                "type": "object"
-                                                            },
-                                                            "sphn:hasValue": {
-                                                                "description": "Value for 'hasValue' property",
-                                                                "type": "number"
-                                                            }
-                                                        },
-                                                        "required": [
-                                                            "id",
-                                                            "sphn:hasUnit",
-                                                            "sphn:hasValue"
-                                                        ],
-                                                        "type": "object"
-                                                    },
-                                                    "sphn:hasStringValue": {
-                                                        "description": "Value for 'hasStringValue' property",
-                                                        "type": "string"
-                                                    },
-                                                    "target_concept": {
-                                                        "description": "IRI for Concept 'TumorStageAssessmentResult'",
-                                                        "enum": [
-                                                            "https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult"
-                                                        ],
-                                                        "type": "string"
-                                                    }
-                                                },
-                                                "required": [
-                                                    "id",
-                                                    "target_concept"
-                                                ],
-                                                "type": "object"
+                                            "sphn:hasStringValue": {
+                                                "description": "Value for 'hasStringValue' property",
+                                                "type": "string"
                                             }
+                                        },
+                                        "required": [
+                                            "id"
                                         ],
                                         "type": "object"
                                     }
@@ -25130,6 +24594,82 @@
                                                         ],
                                                         "type": "object"
                                                     },
+                                                    "sphn:hasOrganism": {
+                                                        "additionalProperties": false,
+                                                        "description": "SPHN Concept 'Organism'",
+                                                        "properties": {
+                                                            "id": {
+                                                                "description": "ID of SPHN Concept 'Organism'",
+                                                                "type": "string"
+                                                            },
+                                                            "sphn:hasCode": {
+                                                                "description": "SPHN Concept 'Code'/SPHN Concept 'Terminology'",
+                                                                "oneOf": [
+                                                                    {
+                                                                        "additionalProperties": false,
+                                                                        "description": "SPHN Concept 'Code'",
+                                                                        "properties": {
+                                                                            "id": {
+                                                                                "description": "ID of SPHN Concept 'Code'",
+                                                                                "type": "string"
+                                                                            },
+                                                                            "sourceConceptID": {
+                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
+                                                                                "type": "string"
+                                                                            },
+                                                                            "sphn:hasCodingSystemAndVersion": {
+                                                                                "description": "Value for 'hasCodingSystemAndVersion' property",
+                                                                                "type": "string"
+                                                                            },
+                                                                            "sphn:hasIdentifier": {
+                                                                                "description": "Value for 'hasIdentifier' property",
+                                                                                "type": "string"
+                                                                            },
+                                                                            "sphn:hasName": {
+                                                                                "description": "Value for 'hasName' property",
+                                                                                "type": "string"
+                                                                            }
+                                                                        },
+                                                                        "required": [
+                                                                            "id",
+                                                                            "sphn:hasCodingSystemAndVersion",
+                                                                            "sphn:hasIdentifier"
+                                                                        ],
+                                                                        "type": "object"
+                                                                    },
+                                                                    {
+                                                                        "additionalProperties": false,
+                                                                        "description": "SPHN Concept 'Terminology'",
+                                                                        "properties": {
+                                                                            "iri": {
+                                                                                "description": "IRI of SPHN Concept 'Terminology'",
+                                                                                "type": "string"
+                                                                            },
+                                                                            "sourceConceptID": {
+                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
+                                                                                "type": "string"
+                                                                            },
+                                                                            "termid": {
+                                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
+                                                                                "type": "string"
+                                                                            }
+                                                                        },
+                                                                        "required": [
+                                                                            "iri",
+                                                                            "termid"
+                                                                        ],
+                                                                        "type": "object"
+                                                                    }
+                                                                ],
+                                                                "type": "object"
+                                                            }
+                                                        },
+                                                        "required": [
+                                                            "id",
+                                                            "sphn:hasCode"
+                                                        ],
+                                                        "type": "object"
+                                                    },
                                                     "sphn:hasPresenceCode": {
                                                         "additionalProperties": false,
                                                         "description": "SPHN Concept 'Terminology'",
@@ -26876,6 +26416,9 @@
                                                 "properties": {
                                                     "iri": {
                                                         "description": "UCUM IRI for 'hasCode' property",
+                                                        "enum": [
+                                                            "https://biomedit.ch/rdf/sphn-resource/ucum/Lpermin"
+                                                        ],
                                                         "type": "string"
                                                     },
                                                     "sourceConceptID": {
@@ -28155,6 +27698,9 @@
                                                 "properties": {
                                                     "iri": {
                                                         "description": "UCUM IRI for 'hasCode' property",
+                                                        "enum": [
+                                                            "https://biomedit.ch/rdf/sphn-resource/ucum/cblnbcbr"
+                                                        ],
                                                         "type": "string"
                                                     },
                                                     "sourceConceptID": {
@@ -33079,309 +32625,49 @@
                                                 "sphn:hasResult": {
                                                     "description": "List of 'hasResult' properties",
                                                     "items": {
-                                                        "description": "SPHN Concept 'AssessmentResult'/SPHN Concept 'TumorGradeAssessmentResult'/SPHN Concept 'TumorStageAssessmentResult'",
-                                                        "oneOf": [
-                                                            {
-                                                                "additionalProperties": false,
-                                                                "description": "SPHN Concept 'AssessmentResult'",
-                                                                "properties": {
-                                                                    "id": {
-                                                                        "description": "ID of SPHN Concept 'AssessmentResult'",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "sphn:hasCode": {
-                                                                        "description": "SPHN Concept 'Code'/SPHN Concept 'Terminology'",
-                                                                        "oneOf": [
-                                                                            {
-                                                                                "additionalProperties": false,
-                                                                                "description": "SPHN Concept 'Code'",
-                                                                                "properties": {
-                                                                                    "id": {
-                                                                                        "description": "ID of SPHN Concept 'Code'",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sourceConceptID": {
-                                                                                        "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sphn:hasCodingSystemAndVersion": {
-                                                                                        "description": "Value for 'hasCodingSystemAndVersion' property",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sphn:hasIdentifier": {
-                                                                                        "description": "Value for 'hasIdentifier' property",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sphn:hasName": {
-                                                                                        "description": "Value for 'hasName' property",
-                                                                                        "type": "string"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "id",
-                                                                                    "sphn:hasCodingSystemAndVersion",
-                                                                                    "sphn:hasIdentifier"
-                                                                                ],
-                                                                                "type": "object"
-                                                                            },
-                                                                            {
-                                                                                "additionalProperties": false,
-                                                                                "description": "SPHN Concept 'Terminology'",
-                                                                                "properties": {
-                                                                                    "iri": {
-                                                                                        "description": "IRI of SPHN Concept 'Terminology'",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sourceConceptID": {
-                                                                                        "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "termid": {
-                                                                                        "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                        "type": "string"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "iri",
-                                                                                    "termid"
-                                                                                ],
-                                                                                "type": "object"
-                                                                            }
-                                                                        ],
-                                                                        "type": "object"
-                                                                    },
-                                                                    "sphn:hasQuantity": {
-                                                                        "additionalProperties": false,
-                                                                        "description": "SPHN Concept 'Quantity'",
-                                                                        "properties": {
-                                                                            "id": {
-                                                                                "description": "ID of SPHN Concept 'Quantity'",
-                                                                                "type": "string"
-                                                                            },
-                                                                            "sphn:hasComparator": {
-                                                                                "additionalProperties": false,
-                                                                                "description": "Value Set for property 'hasComparator'",
-                                                                                "properties": {
-                                                                                    "iri": {
-                                                                                        "description": "IRI for 'hasComparator' property",
-                                                                                        "enum": [
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual"
-                                                                                        ],
-                                                                                        "type": "string"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "iri"
-                                                                                ],
-                                                                                "type": "object"
-                                                                            },
-                                                                            "sphn:hasUnit": {
-                                                                                "additionalProperties": false,
-                                                                                "description": "SPHN Concept 'Unit'",
-                                                                                "properties": {
-                                                                                    "id": {
-                                                                                        "description": "ID of SPHN Concept 'Unit'",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sphn:hasCode": {
-                                                                                        "additionalProperties": false,
-                                                                                        "description": "Schema for property 'hasCode'",
-                                                                                        "properties": {
-                                                                                            "iri": {
-                                                                                                "description": "UCUM IRI for 'hasCode' property",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "sourceConceptID": {
-                                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "termid": {
-                                                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                                "type": "string"
-                                                                                            }
-                                                                                        },
-                                                                                        "required": [
-                                                                                            "iri",
-                                                                                            "termid"
-                                                                                        ],
-                                                                                        "type": "object"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "id",
-                                                                                    "sphn:hasCode"
-                                                                                ],
-                                                                                "type": "object"
-                                                                            },
-                                                                            "sphn:hasValue": {
-                                                                                "description": "Value for 'hasValue' property",
-                                                                                "type": "number"
-                                                                            }
-                                                                        },
-                                                                        "required": [
-                                                                            "id",
-                                                                            "sphn:hasUnit",
-                                                                            "sphn:hasValue"
-                                                                        ],
-                                                                        "type": "object"
-                                                                    },
-                                                                    "sphn:hasStringValue": {
-                                                                        "description": "Value for 'hasStringValue' property",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "target_concept": {
-                                                                        "description": "IRI for Concept 'AssessmentResult'",
-                                                                        "enum": [
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult"
-                                                                        ],
-                                                                        "type": "string"
-                                                                    }
-                                                                },
-                                                                "required": [
-                                                                    "id",
-                                                                    "target_concept"
-                                                                ],
-                                                                "type": "object"
-                                                            },
-                                                            {
-                                                                "additionalProperties": false,
-                                                                "description": "SPHN Concept 'TumorGradeAssessmentResult'",
-                                                                "properties": {
-                                                                    "id": {
-                                                                        "description": "ID of SPHN Concept 'TumorGradeAssessmentResult'",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "sphn:hasCode": {
-                                                                        "additionalProperties": false,
-                                                                        "description": "SPHN Concept 'Terminology'",
-                                                                        "properties": {
-                                                                            "iri": {
-                                                                                "description": "IRI of SPHN Concept 'Terminology'",
-                                                                                "type": "string"
-                                                                            },
-                                                                            "sourceConceptID": {
-                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                "type": "string"
-                                                                            },
-                                                                            "termid": {
-                                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                "type": "string"
-                                                                            }
-                                                                        },
-                                                                        "required": [
-                                                                            "iri",
-                                                                            "termid"
-                                                                        ],
-                                                                        "type": "object"
-                                                                    },
-                                                                    "sphn:hasQuantity": {
-                                                                        "additionalProperties": false,
-                                                                        "description": "SPHN Concept 'Quantity'",
-                                                                        "properties": {
-                                                                            "id": {
-                                                                                "description": "ID of SPHN Concept 'Quantity'",
-                                                                                "type": "string"
-                                                                            },
-                                                                            "sphn:hasComparator": {
-                                                                                "additionalProperties": false,
-                                                                                "description": "Value Set for property 'hasComparator'",
-                                                                                "properties": {
-                                                                                    "iri": {
-                                                                                        "description": "IRI for 'hasComparator' property",
-                                                                                        "enum": [
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual"
-                                                                                        ],
-                                                                                        "type": "string"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "iri"
-                                                                                ],
-                                                                                "type": "object"
-                                                                            },
-                                                                            "sphn:hasUnit": {
-                                                                                "additionalProperties": false,
-                                                                                "description": "SPHN Concept 'Unit'",
-                                                                                "properties": {
-                                                                                    "id": {
-                                                                                        "description": "ID of SPHN Concept 'Unit'",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sphn:hasCode": {
-                                                                                        "additionalProperties": false,
-                                                                                        "description": "Schema for property 'hasCode'",
-                                                                                        "properties": {
-                                                                                            "iri": {
-                                                                                                "description": "UCUM IRI for 'hasCode' property",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "sourceConceptID": {
-                                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "termid": {
-                                                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                                "type": "string"
-                                                                                            }
-                                                                                        },
-                                                                                        "required": [
-                                                                                            "iri",
-                                                                                            "termid"
-                                                                                        ],
-                                                                                        "type": "object"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "id",
-                                                                                    "sphn:hasCode"
-                                                                                ],
-                                                                                "type": "object"
+                                                        "additionalProperties": false,
+                                                        "description": "SPHN Concept 'AssessmentResult'",
+                                                        "properties": {
+                                                            "id": {
+                                                                "description": "ID of SPHN Concept 'AssessmentResult'",
+                                                                "type": "string"
+                                                            },
+                                                            "sphn:hasCode": {
+                                                                "description": "SPHN Concept 'Code'/SPHN Concept 'Terminology'",
+                                                                "oneOf": [
+                                                                    {
+                                                                        "additionalProperties": false,
+                                                                        "description": "SPHN Concept 'Code'",
+                                                                        "properties": {
+                                                                            "id": {
+                                                                                "description": "ID of SPHN Concept 'Code'",
+                                                                                "type": "string"
                                                                             },
-                                                                            "sphn:hasValue": {
-                                                                                "description": "Value for 'hasValue' property",
-                                                                                "type": "number"
+                                                                            "sourceConceptID": {
+                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
+                                                                                "type": "string"
+                                                                            },
+                                                                            "sphn:hasCodingSystemAndVersion": {
+                                                                                "description": "Value for 'hasCodingSystemAndVersion' property",
+                                                                                "type": "string"
+                                                                            },
+                                                                            "sphn:hasIdentifier": {
+                                                                                "description": "Value for 'hasIdentifier' property",
+                                                                                "type": "string"
+                                                                            },
+                                                                            "sphn:hasName": {
+                                                                                "description": "Value for 'hasName' property",
+                                                                                "type": "string"
                                                                             }
                                                                         },
                                                                         "required": [
                                                                             "id",
-                                                                            "sphn:hasUnit",
-                                                                            "sphn:hasValue"
+                                                                            "sphn:hasCodingSystemAndVersion",
+                                                                            "sphn:hasIdentifier"
                                                                         ],
                                                                         "type": "object"
                                                                     },
-                                                                    "sphn:hasStringValue": {
-                                                                        "description": "Value for 'hasStringValue' property",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "target_concept": {
-                                                                        "description": "IRI for Concept 'TumorGradeAssessmentResult'",
-                                                                        "enum": [
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult"
-                                                                        ],
-                                                                        "type": "string"
-                                                                    }
-                                                                },
-                                                                "required": [
-                                                                    "id",
-                                                                    "target_concept"
-                                                                ],
-                                                                "type": "object"
-                                                            },
-                                                            {
-                                                                "additionalProperties": false,
-                                                                "description": "SPHN Concept 'TumorStageAssessmentResult'",
-                                                                "properties": {
-                                                                    "id": {
-                                                                        "description": "ID of SPHN Concept 'TumorStageAssessmentResult'",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "sphn:hasCode": {
+                                                                    {
                                                                         "additionalProperties": false,
                                                                         "description": "SPHN Concept 'Terminology'",
                                                                         "properties": {
@@ -33403,103 +32689,95 @@
                                                                             "termid"
                                                                         ],
                                                                         "type": "object"
+                                                                    }
+                                                                ],
+                                                                "type": "object"
+                                                            },
+                                                            "sphn:hasQuantity": {
+                                                                "additionalProperties": false,
+                                                                "description": "SPHN Concept 'Quantity'",
+                                                                "properties": {
+                                                                    "id": {
+                                                                        "description": "ID of SPHN Concept 'Quantity'",
+                                                                        "type": "string"
                                                                     },
-                                                                    "sphn:hasQuantity": {
+                                                                    "sphn:hasComparator": {
                                                                         "additionalProperties": false,
-                                                                        "description": "SPHN Concept 'Quantity'",
+                                                                        "description": "Value Set for property 'hasComparator'",
+                                                                        "properties": {
+                                                                            "iri": {
+                                                                                "description": "IRI for 'hasComparator' property",
+                                                                                "enum": [
+                                                                                    "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan",
+                                                                                    "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual",
+                                                                                    "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan",
+                                                                                    "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual"
+                                                                                ],
+                                                                                "type": "string"
+                                                                            }
+                                                                        },
+                                                                        "required": [
+                                                                            "iri"
+                                                                        ],
+                                                                        "type": "object"
+                                                                    },
+                                                                    "sphn:hasUnit": {
+                                                                        "additionalProperties": false,
+                                                                        "description": "SPHN Concept 'Unit'",
                                                                         "properties": {
                                                                             "id": {
-                                                                                "description": "ID of SPHN Concept 'Quantity'",
+                                                                                "description": "ID of SPHN Concept 'Unit'",
                                                                                 "type": "string"
                                                                             },
-                                                                            "sphn:hasComparator": {
+                                                                            "sphn:hasCode": {
                                                                                 "additionalProperties": false,
-                                                                                "description": "Value Set for property 'hasComparator'",
+                                                                                "description": "Schema for property 'hasCode'",
                                                                                 "properties": {
                                                                                     "iri": {
-                                                                                        "description": "IRI for 'hasComparator' property",
-                                                                                        "enum": [
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual"
-                                                                                        ],
+                                                                                        "description": "UCUM IRI for 'hasCode' property",
                                                                                         "type": "string"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "iri"
-                                                                                ],
-                                                                                "type": "object"
-                                                                            },
-                                                                            "sphn:hasUnit": {
-                                                                                "additionalProperties": false,
-                                                                                "description": "SPHN Concept 'Unit'",
-                                                                                "properties": {
-                                                                                    "id": {
-                                                                                        "description": "ID of SPHN Concept 'Unit'",
+                                                                                    },
+                                                                                    "sourceConceptID": {
+                                                                                        "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
                                                                                         "type": "string"
                                                                                     },
-                                                                                    "sphn:hasCode": {
-                                                                                        "additionalProperties": false,
-                                                                                        "description": "Schema for property 'hasCode'",
-                                                                                        "properties": {
-                                                                                            "iri": {
-                                                                                                "description": "UCUM IRI for 'hasCode' property",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "sourceConceptID": {
-                                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "termid": {
-                                                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                                "type": "string"
-                                                                                            }
-                                                                                        },
-                                                                                        "required": [
-                                                                                            "iri",
-                                                                                            "termid"
-                                                                                        ],
-                                                                                        "type": "object"
+                                                                                    "termid": {
+                                                                                        "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
+                                                                                        "type": "string"
                                                                                     }
                                                                                 },
                                                                                 "required": [
-                                                                                    "id",
-                                                                                    "sphn:hasCode"
+                                                                                    "iri",
+                                                                                    "termid"
                                                                                 ],
                                                                                 "type": "object"
-                                                                            },
-                                                                            "sphn:hasValue": {
-                                                                                "description": "Value for 'hasValue' property",
-                                                                                "type": "number"
                                                                             }
                                                                         },
                                                                         "required": [
                                                                             "id",
-                                                                            "sphn:hasUnit",
-                                                                            "sphn:hasValue"
+                                                                            "sphn:hasCode"
                                                                         ],
                                                                         "type": "object"
                                                                     },
-                                                                    "sphn:hasStringValue": {
-                                                                        "description": "Value for 'hasStringValue' property",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "target_concept": {
-                                                                        "description": "IRI for Concept 'TumorStageAssessmentResult'",
-                                                                        "enum": [
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult"
-                                                                        ],
-                                                                        "type": "string"
+                                                                    "sphn:hasValue": {
+                                                                        "description": "Value for 'hasValue' property",
+                                                                        "type": "number"
                                                                     }
                                                                 },
                                                                 "required": [
                                                                     "id",
-                                                                    "target_concept"
+                                                                    "sphn:hasUnit",
+                                                                    "sphn:hasValue"
                                                                 ],
                                                                 "type": "object"
+                                                            },
+                                                            "sphn:hasStringValue": {
+                                                                "description": "Value for 'hasStringValue' property",
+                                                                "type": "string"
                                                             }
+                                                        },
+                                                        "required": [
+                                                            "id"
                                                         ],
                                                         "type": "object"
                                                     },
@@ -35133,182 +34411,49 @@
                                                 "sphn:hasResult": {
                                                     "description": "List of 'hasResult' properties",
                                                     "items": {
-                                                        "description": "SPHN Concept 'AssessmentResult'/SPHN Concept 'TumorGradeAssessmentResult'/SPHN Concept 'TumorStageAssessmentResult'",
-                                                        "oneOf": [
-                                                            {
-                                                                "additionalProperties": false,
-                                                                "description": "SPHN Concept 'AssessmentResult'",
-                                                                "properties": {
-                                                                    "id": {
-                                                                        "description": "ID of SPHN Concept 'AssessmentResult'",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "sphn:hasCode": {
-                                                                        "description": "SPHN Concept 'Code'/SPHN Concept 'Terminology'",
-                                                                        "oneOf": [
-                                                                            {
-                                                                                "additionalProperties": false,
-                                                                                "description": "SPHN Concept 'Code'",
-                                                                                "properties": {
-                                                                                    "id": {
-                                                                                        "description": "ID of SPHN Concept 'Code'",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sourceConceptID": {
-                                                                                        "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sphn:hasCodingSystemAndVersion": {
-                                                                                        "description": "Value for 'hasCodingSystemAndVersion' property",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sphn:hasIdentifier": {
-                                                                                        "description": "Value for 'hasIdentifier' property",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sphn:hasName": {
-                                                                                        "description": "Value for 'hasName' property",
-                                                                                        "type": "string"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "id",
-                                                                                    "sphn:hasCodingSystemAndVersion",
-                                                                                    "sphn:hasIdentifier"
-                                                                                ],
-                                                                                "type": "object"
-                                                                            },
-                                                                            {
-                                                                                "additionalProperties": false,
-                                                                                "description": "SPHN Concept 'Terminology'",
-                                                                                "properties": {
-                                                                                    "iri": {
-                                                                                        "description": "IRI of SPHN Concept 'Terminology'",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sourceConceptID": {
-                                                                                        "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "termid": {
-                                                                                        "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                        "type": "string"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "iri",
-                                                                                    "termid"
-                                                                                ],
-                                                                                "type": "object"
-                                                                            }
-                                                                        ],
-                                                                        "type": "object"
-                                                                    },
-                                                                    "sphn:hasQuantity": {
+                                                        "additionalProperties": false,
+                                                        "description": "SPHN Concept 'AssessmentResult'",
+                                                        "properties": {
+                                                            "id": {
+                                                                "description": "ID of SPHN Concept 'AssessmentResult'",
+                                                                "type": "string"
+                                                            },
+                                                            "sphn:hasCode": {
+                                                                "description": "SPHN Concept 'Code'/SPHN Concept 'Terminology'",
+                                                                "oneOf": [
+                                                                    {
                                                                         "additionalProperties": false,
-                                                                        "description": "SPHN Concept 'Quantity'",
+                                                                        "description": "SPHN Concept 'Code'",
                                                                         "properties": {
                                                                             "id": {
-                                                                                "description": "ID of SPHN Concept 'Quantity'",
+                                                                                "description": "ID of SPHN Concept 'Code'",
                                                                                 "type": "string"
                                                                             },
-                                                                            "sphn:hasComparator": {
-                                                                                "additionalProperties": false,
-                                                                                "description": "Value Set for property 'hasComparator'",
-                                                                                "properties": {
-                                                                                    "iri": {
-                                                                                        "description": "IRI for 'hasComparator' property",
-                                                                                        "enum": [
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual"
-                                                                                        ],
-                                                                                        "type": "string"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "iri"
-                                                                                ],
-                                                                                "type": "object"
+                                                                            "sourceConceptID": {
+                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
+                                                                                "type": "string"
+                                                                            },
+                                                                            "sphn:hasCodingSystemAndVersion": {
+                                                                                "description": "Value for 'hasCodingSystemAndVersion' property",
+                                                                                "type": "string"
                                                                             },
-                                                                            "sphn:hasUnit": {
-                                                                                "additionalProperties": false,
-                                                                                "description": "SPHN Concept 'Unit'",
-                                                                                "properties": {
-                                                                                    "id": {
-                                                                                        "description": "ID of SPHN Concept 'Unit'",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sphn:hasCode": {
-                                                                                        "additionalProperties": false,
-                                                                                        "description": "Schema for property 'hasCode'",
-                                                                                        "properties": {
-                                                                                            "iri": {
-                                                                                                "description": "UCUM IRI for 'hasCode' property",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "sourceConceptID": {
-                                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "termid": {
-                                                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                                "type": "string"
-                                                                                            }
-                                                                                        },
-                                                                                        "required": [
-                                                                                            "iri",
-                                                                                            "termid"
-                                                                                        ],
-                                                                                        "type": "object"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "id",
-                                                                                    "sphn:hasCode"
-                                                                                ],
-                                                                                "type": "object"
+                                                                            "sphn:hasIdentifier": {
+                                                                                "description": "Value for 'hasIdentifier' property",
+                                                                                "type": "string"
                                                                             },
-                                                                            "sphn:hasValue": {
-                                                                                "description": "Value for 'hasValue' property",
-                                                                                "type": "number"
+                                                                            "sphn:hasName": {
+                                                                                "description": "Value for 'hasName' property",
+                                                                                "type": "string"
                                                                             }
                                                                         },
                                                                         "required": [
                                                                             "id",
-                                                                            "sphn:hasUnit",
-                                                                            "sphn:hasValue"
+                                                                            "sphn:hasCodingSystemAndVersion",
+                                                                            "sphn:hasIdentifier"
                                                                         ],
                                                                         "type": "object"
                                                                     },
-                                                                    "sphn:hasStringValue": {
-                                                                        "description": "Value for 'hasStringValue' property",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "target_concept": {
-                                                                        "description": "IRI for Concept 'AssessmentResult'",
-                                                                        "enum": [
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult"
-                                                                        ],
-                                                                        "type": "string"
-                                                                    }
-                                                                },
-                                                                "required": [
-                                                                    "id",
-                                                                    "target_concept"
-                                                                ],
-                                                                "type": "object"
-                                                            },
-                                                            {
-                                                                "additionalProperties": false,
-                                                                "description": "SPHN Concept 'TumorGradeAssessmentResult'",
-                                                                "properties": {
-                                                                    "id": {
-                                                                        "description": "ID of SPHN Concept 'TumorGradeAssessmentResult'",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "sphn:hasCode": {
+                                                                    {
                                                                         "additionalProperties": false,
                                                                         "description": "SPHN Concept 'Terminology'",
                                                                         "properties": {
@@ -35330,230 +34475,95 @@
                                                                             "termid"
                                                                         ],
                                                                         "type": "object"
-                                                                    },
-                                                                    "sphn:hasQuantity": {
-                                                                        "additionalProperties": false,
-                                                                        "description": "SPHN Concept 'Quantity'",
-                                                                        "properties": {
-                                                                            "id": {
-                                                                                "description": "ID of SPHN Concept 'Quantity'",
-                                                                                "type": "string"
-                                                                            },
-                                                                            "sphn:hasComparator": {
-                                                                                "additionalProperties": false,
-                                                                                "description": "Value Set for property 'hasComparator'",
-                                                                                "properties": {
-                                                                                    "iri": {
-                                                                                        "description": "IRI for 'hasComparator' property",
-                                                                                        "enum": [
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual"
-                                                                                        ],
-                                                                                        "type": "string"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "iri"
-                                                                                ],
-                                                                                "type": "object"
-                                                                            },
-                                                                            "sphn:hasUnit": {
-                                                                                "additionalProperties": false,
-                                                                                "description": "SPHN Concept 'Unit'",
-                                                                                "properties": {
-                                                                                    "id": {
-                                                                                        "description": "ID of SPHN Concept 'Unit'",
-                                                                                        "type": "string"
-                                                                                    },
-                                                                                    "sphn:hasCode": {
-                                                                                        "additionalProperties": false,
-                                                                                        "description": "Schema for property 'hasCode'",
-                                                                                        "properties": {
-                                                                                            "iri": {
-                                                                                                "description": "UCUM IRI for 'hasCode' property",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "sourceConceptID": {
-                                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "termid": {
-                                                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                                "type": "string"
-                                                                                            }
-                                                                                        },
-                                                                                        "required": [
-                                                                                            "iri",
-                                                                                            "termid"
-                                                                                        ],
-                                                                                        "type": "object"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "id",
-                                                                                    "sphn:hasCode"
-                                                                                ],
-                                                                                "type": "object"
-                                                                            },
-                                                                            "sphn:hasValue": {
-                                                                                "description": "Value for 'hasValue' property",
-                                                                                "type": "number"
-                                                                            }
-                                                                        },
-                                                                        "required": [
-                                                                            "id",
-                                                                            "sphn:hasUnit",
-                                                                            "sphn:hasValue"
-                                                                        ],
-                                                                        "type": "object"
-                                                                    },
-                                                                    "sphn:hasStringValue": {
-                                                                        "description": "Value for 'hasStringValue' property",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "target_concept": {
-                                                                        "description": "IRI for Concept 'TumorGradeAssessmentResult'",
-                                                                        "enum": [
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult"
-                                                                        ],
-                                                                        "type": "string"
                                                                     }
-                                                                },
-                                                                "required": [
-                                                                    "id",
-                                                                    "target_concept"
                                                                 ],
                                                                 "type": "object"
                                                             },
-                                                            {
+                                                            "sphn:hasQuantity": {
                                                                 "additionalProperties": false,
-                                                                "description": "SPHN Concept 'TumorStageAssessmentResult'",
+                                                                "description": "SPHN Concept 'Quantity'",
                                                                 "properties": {
                                                                     "id": {
-                                                                        "description": "ID of SPHN Concept 'TumorStageAssessmentResult'",
+                                                                        "description": "ID of SPHN Concept 'Quantity'",
                                                                         "type": "string"
                                                                     },
-                                                                    "sphn:hasCode": {
+                                                                    "sphn:hasComparator": {
                                                                         "additionalProperties": false,
-                                                                        "description": "SPHN Concept 'Terminology'",
+                                                                        "description": "Value Set for property 'hasComparator'",
                                                                         "properties": {
                                                                             "iri": {
-                                                                                "description": "IRI of SPHN Concept 'Terminology'",
-                                                                                "type": "string"
-                                                                            },
-                                                                            "sourceConceptID": {
-                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                "type": "string"
-                                                                            },
-                                                                            "termid": {
-                                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
+                                                                                "description": "IRI for 'hasComparator' property",
+                                                                                "enum": [
+                                                                                    "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan",
+                                                                                    "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual",
+                                                                                    "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan",
+                                                                                    "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual"
+                                                                                ],
                                                                                 "type": "string"
                                                                             }
                                                                         },
                                                                         "required": [
-                                                                            "iri",
-                                                                            "termid"
+                                                                            "iri"
                                                                         ],
                                                                         "type": "object"
                                                                     },
-                                                                    "sphn:hasQuantity": {
+                                                                    "sphn:hasUnit": {
                                                                         "additionalProperties": false,
-                                                                        "description": "SPHN Concept 'Quantity'",
+                                                                        "description": "SPHN Concept 'Unit'",
                                                                         "properties": {
                                                                             "id": {
-                                                                                "description": "ID of SPHN Concept 'Quantity'",
+                                                                                "description": "ID of SPHN Concept 'Unit'",
                                                                                 "type": "string"
                                                                             },
-                                                                            "sphn:hasComparator": {
+                                                                            "sphn:hasCode": {
                                                                                 "additionalProperties": false,
-                                                                                "description": "Value Set for property 'hasComparator'",
+                                                                                "description": "Schema for property 'hasCode'",
                                                                                 "properties": {
                                                                                     "iri": {
-                                                                                        "description": "IRI for 'hasComparator' property",
-                                                                                        "enum": [
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#GreaterThanOrEqual",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThan",
-                                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn/individual#LessThanOrEqual"
-                                                                                        ],
+                                                                                        "description": "UCUM IRI for 'hasCode' property",
                                                                                         "type": "string"
-                                                                                    }
-                                                                                },
-                                                                                "required": [
-                                                                                    "iri"
-                                                                                ],
-                                                                                "type": "object"
-                                                                            },
-                                                                            "sphn:hasUnit": {
-                                                                                "additionalProperties": false,
-                                                                                "description": "SPHN Concept 'Unit'",
-                                                                                "properties": {
-                                                                                    "id": {
-                                                                                        "description": "ID of SPHN Concept 'Unit'",
+                                                                                    },
+                                                                                    "sourceConceptID": {
+                                                                                        "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
                                                                                         "type": "string"
                                                                                     },
-                                                                                    "sphn:hasCode": {
-                                                                                        "additionalProperties": false,
-                                                                                        "description": "Schema for property 'hasCode'",
-                                                                                        "properties": {
-                                                                                            "iri": {
-                                                                                                "description": "UCUM IRI for 'hasCode' property",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "sourceConceptID": {
-                                                                                                "description": "The ID of the SPHN/Project concept where this code has been used, e.g. 123",
-                                                                                                "type": "string"
-                                                                                            },
-                                                                                            "termid": {
-                                                                                                "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
-                                                                                                "type": "string"
-                                                                                            }
-                                                                                        },
-                                                                                        "required": [
-                                                                                            "iri",
-                                                                                            "termid"
-                                                                                        ],
-                                                                                        "type": "object"
+                                                                                    "termid": {
+                                                                                        "description": "Unique ID for the given IRI. String format follows convention: <coding_system>-<identifier>",
+                                                                                        "type": "string"
                                                                                     }
                                                                                 },
                                                                                 "required": [
-                                                                                    "id",
-                                                                                    "sphn:hasCode"
+                                                                                    "iri",
+                                                                                    "termid"
                                                                                 ],
                                                                                 "type": "object"
-                                                                            },
-                                                                            "sphn:hasValue": {
-                                                                                "description": "Value for 'hasValue' property",
-                                                                                "type": "number"
                                                                             }
                                                                         },
                                                                         "required": [
                                                                             "id",
-                                                                            "sphn:hasUnit",
-                                                                            "sphn:hasValue"
+                                                                            "sphn:hasCode"
                                                                         ],
                                                                         "type": "object"
                                                                     },
-                                                                    "sphn:hasStringValue": {
-                                                                        "description": "Value for 'hasStringValue' property",
-                                                                        "type": "string"
-                                                                    },
-                                                                    "target_concept": {
-                                                                        "description": "IRI for Concept 'TumorStageAssessmentResult'",
-                                                                        "enum": [
-                                                                            "https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult"
-                                                                        ],
-                                                                        "type": "string"
+                                                                    "sphn:hasValue": {
+                                                                        "description": "Value for 'hasValue' property",
+                                                                        "type": "number"
                                                                     }
                                                                 },
                                                                 "required": [
                                                                     "id",
-                                                                    "target_concept"
+                                                                    "sphn:hasUnit",
+                                                                    "sphn:hasValue"
                                                                 ],
                                                                 "type": "object"
+                                                            },
+                                                            "sphn:hasStringValue": {
+                                                                "description": "Value for 'hasStringValue' property",
+                                                                "type": "string"
                                                             }
+                                                        },
+                                                        "required": [
+                                                            "id"
                                                         ],
                                                         "type": "object"
                                                     },
diff --git a/schemas/pre-release-testing/rml_mapping.ttl b/schemas/pre-release-testing/rml_mapping.ttl
index 100816f312b132fd0fa79fcf3e9f3eb8bd487eb8..ea9c67b940d725b5550eb34e758c0b1022ef456b 100644
--- a/schemas/pre-release-testing/rml_mapping.ttl
+++ b/schemas/pre-release-testing/rml_mapping.ttl
@@ -69,11 +69,11 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-schema/sphn/2025/1" ] ;
             rr:predicate dct:conformsTo ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnDataProvider ] ;
-            rr:predicate sphn:hasDataProvider ],
         [ rr:objectMap [ rml:reference "creationTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasExtractionDateTime ] ;
+            rr:predicate sphn:hasExtractionDateTime ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnDataProvider ] ;
+            rr:predicate sphn:hasDataProvider ] ;
     rr:subjectMap [ rr:class sphn:DataRelease ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataRelease-{id}" ] .
 
@@ -81,24 +81,24 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AccessDevicePresence[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
+        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasRestingPoint.id}" ] ;
             rr:predicate sphn:hasRestingPoint ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{sphn:hasMedicalDevice.id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasInsertionPoint.id}" ] ;
-            rr:predicate sphn:hasInsertionPoint ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{sphn:hasMedicalDevice.id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ] ;
+            rr:predicate sphn:hasInsertionPoint ] ;
     rr:subjectMap [ rr:class sphn:AccessDevicePresence ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevicePresence-{id}" ] .
 
@@ -144,14 +144,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AccessDevicePresence[*].sphn:hasMedicalDevice" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ] ;
     rr:subjectMap [ rr:class sphn:AccessDevice ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}" ] .
 
@@ -159,15 +159,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AccessDevicePresence[*].sphn:hasMedicalDevice.sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -184,18 +184,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AccessDevicePresence[*].sphn:hasMedicalDevice.sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+            rr:predicate sphn:hasVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
+            rr:predicate sphn:hasDescription ],
         [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasUniformResourceLocator ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -250,19 +250,19 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AdministrativeCase[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CareHandling-{sphn:hasCareHandling.id}" ] ;
             rr:predicate sphn:hasCareHandling ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Discharge-{sphn:hasDischarge.id}" ] ;
             rr:predicate sphn:hasDischarge ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Admission-{sphn:hasAdmission.id}" ] ;
-            rr:predicate sphn:hasAdmission ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Admission-{sphn:hasAdmission.id}" ] ;
+            rr:predicate sphn:hasAdmission ] ;
     rr:subjectMap [ rr:class sphn:AdministrativeCase ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{id}" ] .
 
@@ -270,11 +270,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AdministrativeCase[*].sphn:hasAdmission" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{sphn:hasOriginLocation.id}" ] ;
-            rr:predicate sphn:hasOriginLocation ],
-        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDateTime ] ;
+            rr:predicate sphn:hasDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{sphn:hasOriginLocation.id}" ] ;
+            rr:predicate sphn:hasOriginLocation ] ;
     rr:subjectMap [ rr:class sphn:Admission ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Admission-{id}" ] .
 
@@ -323,11 +323,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AdministrativeCase[*].sphn:hasDischarge" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{sphn:hasTargetLocation.id}" ] ;
+            rr:predicate sphn:hasTargetLocation ],
+        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{sphn:hasTargetLocation.id}" ] ;
-            rr:predicate sphn:hasTargetLocation ] ;
+            rr:predicate sphn:hasDateTime ] ;
     rr:subjectMap [ rr:class sphn:Discharge ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Discharge-{id}" ] .
 
@@ -356,10 +356,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AdministrativeSex[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasRecordDateTime ],
@@ -383,28 +383,28 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdverseEvent-{id}-sphn-Code-{sphn:hasSeverityCode.id}" ] ;
             rr:predicate sphn:hasSeverityCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdverseEvent-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rml:reference "sphn:hasOnsetDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasOnsetDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdverseEvent-{id}-sphn-Code-{sphn:hasSeverityCode.termid}" ] ;
             rr:predicate sphn:hasSeverityCode ],
         [ rr:objectMap [ rml:reference "sphn:hasConsequences.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasConsequences ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rml:reference "sphn:hasIntervention" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIntervention ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasOutcome.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasOutcome ] ;
+            rr:predicate sphn:hasOutcome ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdverseEvent-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:AdverseEvent ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdverseEvent-{id}" ] .
 
@@ -428,12 +428,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AdverseEvent[*].sphn:hasSeverityCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ] ;
@@ -453,15 +453,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Age[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasDeterminationDateTime" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDeterminationDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDeterminationDateTime ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ] ;
+            rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:Age ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Age-{id}" ] .
 
@@ -472,11 +472,11 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -502,24 +502,24 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Allergy[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasLastReactionDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasLastReactionDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergen-{sphn:hasAllergen.id}" ] ;
-            rr:predicate sphn:hasAllergen ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergy-{id}-sphn-Code-{sphn:hasSeverityCode.termid}" ] ;
+            rr:predicate sphn:hasSeverityCode ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rml:reference "sphn:hasFirstRecordDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasFirstRecordDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergy-{id}-sphn-Code-{sphn:hasReactionTypeCode.termid}" ] ;
             rr:predicate sphn:hasReactionTypeCode ],
+        [ rr:objectMap [ rml:reference "sphn:hasLastReactionDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasLastReactionDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergen-{sphn:hasAllergen.id}" ] ;
+            rr:predicate sphn:hasAllergen ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergy-{id}-sphn-Code-{sphn:hasVerificationStatusCode.termid}" ] ;
-            rr:predicate sphn:hasVerificationStatusCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergy-{id}-sphn-Code-{sphn:hasSeverityCode.termid}" ] ;
-            rr:predicate sphn:hasSeverityCode ] ;
+            rr:predicate sphn:hasVerificationStatusCode ] ;
     rr:subjectMap [ rr:class sphn:Allergy ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergy-{id}" ] .
 
@@ -529,27 +529,27 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AllergyEpisode-{id}-sphn-Code-{sphn:hasSeverityCode.termid}" ] ;
             rr:predicate sphn:hasSeverityCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Exposure-{sphn:hasExposure.id}" ] ;
+            rr:predicate sphn:hasExposure ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergen-{sphn:hasAllergen.id}" ] ;
             rr:predicate sphn:hasAllergen ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Exposure-{sphn:hasExposure.id}" ] ;
-            rr:predicate sphn:hasExposure ],
-        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AllergyEpisode-{id}-sphn-Code-{sphn:hasManifestationCode.termid}" ] ;
+            rr:predicate sphn:hasManifestationCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
             rr:predicate sphn:hasBodySite ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AllergyEpisode-{id}-sphn-Code-{sphn:hasCertaintyCode.termid}" ] ;
             rr:predicate sphn:hasCertaintyCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasDuration.id}" ] ;
             rr:predicate sphn:hasDuration ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AllergyEpisode-{id}-sphn-Code-{sphn:hasManifestationCode.termid}" ] ;
-            rr:predicate sphn:hasManifestationCode ] ;
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:AllergyEpisode ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AllergyEpisode-{id}" ] .
 
@@ -557,9 +557,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AllergyEpisode[*].sphn:hasAllergen" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergen-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergen-{id}-sphn-Code-{sphn:hasCode[*].id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergen-{id}-sphn-Code-{sphn:hasCode[*].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergen-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Allergen ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergen-{id}" ] .
@@ -568,15 +568,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AllergyEpisode[*].sphn:hasAllergen.sphn:hasCode[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergen-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -640,11 +640,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AllergyEpisode[*].sphn:hasDuration" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ] ;
@@ -702,15 +702,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Allergy[*].sphn:hasAllergen.sphn:hasCode[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergen-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -754,22 +754,22 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasSample.id}" ] ;
+            rr:predicate sphn:hasSample ],
+        [ rr:objectMap [ rml:reference "sphn:hasReportDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasReportDateTime ],
         [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasSample.id}" ] ;
-            rr:predicate sphn:hasSample ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityLabTest-{sphn:hasLabTest[*].id}" ] ;
             rr:predicate sphn:hasLabTest ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasReportDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasReportDateTime ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:AntimicrobialSusceptibilityLabTestEvent ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityLabTestEvent-{id}" ] .
 
@@ -781,12 +781,12 @@
             rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasChemicalAgent[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Substance')].id}" ] ;
             rr:predicate sphn:hasChemicalAgent ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Drug-{sphn:hasChemicalAgent[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Drug')].id}" ] ;
+            rr:predicate sphn:hasChemicalAgent ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasTestKit.id}" ] ;
             rr:predicate sphn:hasTestKit ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasInstrument.id}" ] ;
             rr:predicate sphn:hasInstrument ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Drug-{sphn:hasChemicalAgent[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Drug')].id}" ] ;
-            rr:predicate sphn:hasChemicalAgent ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityResult-{sphn:hasResult[*].id}" ] ;
             rr:predicate sphn:hasResult ] ;
     rr:subjectMap [ rr:class sphn:AntimicrobialSusceptibilityLabTest ;
@@ -796,16 +796,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasChemicalAgent[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Drug')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasInactiveIngredient[*].id}" ] ;
-            rr:predicate sphn:hasInactiveIngredient ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasActiveIngredient[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasActiveIngredient[*].id}" ] ;
             rr:predicate sphn:hasActiveIngredient ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{sphn:hasArticle.id}" ] ;
-            rr:predicate sphn:hasArticle ] ;
+            rr:predicate sphn:hasArticle ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasInactiveIngredient[*].id}" ] ;
+            rr:predicate sphn:hasInactiveIngredient ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ] ;
     rr:subjectMap [ rr:class sphn:Drug ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Drug-{id}" ] .
 
@@ -813,15 +813,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasChemicalAgent[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Drug')].sphn:hasActiveIngredient[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasGenericName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rml:reference "sphn:hasGenericName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasGenericName ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:Substance ;
@@ -831,15 +831,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasChemicalAgent[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Drug')].sphn:hasActiveIngredient[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -856,14 +856,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasChemicalAgent[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Drug')].sphn:hasActiveIngredient[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -889,15 +889,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasChemicalAgent[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Drug')].sphn:hasArticle" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{sphn:hasManufacturedDoseForm.id}" ] ;
-            rr:predicate sphn:hasManufacturedDoseForm ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{sphn:hasManufacturedDoseForm.id}" ] ;
+            rr:predicate sphn:hasManufacturedDoseForm ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:DrugArticle ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{id}" ] .
 
@@ -905,15 +905,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasChemicalAgent[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Drug')].sphn:hasArticle.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -921,9 +921,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasChemicalAgent[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Drug')].sphn:hasArticle.sphn:hasManufacturedDoseForm" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:PharmaceuticalDoseForm ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{id}" ] .
@@ -932,15 +932,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasChemicalAgent[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Drug')].sphn:hasArticle.sphn:hasManufacturedDoseForm.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -957,17 +957,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasChemicalAgent[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Drug')].sphn:hasInactiveIngredient[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rml:reference "sphn:hasGenericName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasGenericName ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ] ;
+            rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:Substance ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}" ] .
 
@@ -1000,14 +1000,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasChemicalAgent[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Drug')].sphn:hasInactiveIngredient[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -1035,12 +1035,12 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -1066,17 +1066,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasChemicalAgent[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Substance')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rml:reference "sphn:hasGenericName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasGenericName ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:Substance ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}" ] .
 
@@ -1084,15 +1084,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasChemicalAgent[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Substance')].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -1109,11 +1109,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasChemicalAgent[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Substance')].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ] ;
@@ -1155,11 +1155,11 @@
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
-            rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:LabAnalyzer ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}" ] .
@@ -1171,12 +1171,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -1193,18 +1193,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasInstrument.sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ],
+            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasDescription ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ] ;
+            rr:predicate sphn:hasUniformResourceLocator ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -1215,12 +1215,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -1237,20 +1237,20 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceValue-{sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceValue')].id}" ] ;
-            rr:predicate sphn:hasNumericalReference ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStandardGuideline" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasStandardGuideline ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceRange-{sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')].id}" ] ;
             rr:predicate sphn:hasNumericalReference ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasStringValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasStandardGuideline" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStandardGuideline ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceValue-{sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceValue')].id}" ] ;
+            rr:predicate sphn:hasNumericalReference ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ] ;
     rr:subjectMap [ rr:class sphn:AntimicrobialSusceptibilityResult ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityResult-{id}" ] .
 
@@ -1280,12 +1280,12 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -1353,14 +1353,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceValue')].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -1386,11 +1386,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ] ;
@@ -1421,12 +1421,12 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
             rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:LabAnalyzer ;
@@ -1436,12 +1436,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTestKit.sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ] ;
@@ -1461,18 +1461,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTestKit.sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasUniformResourceLocator ],
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasDescription ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -1480,15 +1480,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AntimicrobialSusceptibilityLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTestKit.sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -1505,38 +1505,38 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Assay[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assay-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorSpecimen-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorSpecimen')].id}" ] ;
             rr:predicate sphn:hasSample ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasDataFile[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataFile')].id}" ] ;
+            rr:predicate sphn:hasDataFile ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-StandardOperatingProcedure-{sphn:hasStandardOperatingProcedure.id}" ] ;
             rr:predicate sphn:hasStandardOperatingProcedure ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasDataFile[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataFile')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
+            rr:predicate sphn:hasSample ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasDataFile[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimeSeriesDataFile')].id}" ] ;
             rr:predicate sphn:hasDataFile ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assay-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LibraryPreparation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
+            rr:predicate sphn:hasSample ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SampleProcessing-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SampleProcessing')].id}" ] ;
             rr:predicate sphn:hasPredecessor ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assay-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LibraryPreparation')].id}" ] ;
+            rr:predicate sphn:hasPredecessor ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase[*].id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SampleProcessing-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SampleProcessing')].id}" ] ;
-            rr:predicate sphn:hasPredecessor ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasDataFile[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimeSeriesDataFile')].id}" ] ;
-            rr:predicate sphn:hasDataFile ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorSpecimen-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorSpecimen')].id}" ] ;
-            rr:predicate sphn:hasSample ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
-            rr:predicate sphn:hasSample ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasStartDateTime ] ;
     rr:subjectMap [ rr:class sphn:Assay ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assay-{id}" ] .
 
@@ -1547,12 +1547,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assay-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -1569,17 +1569,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Assay[*].sphn:hasStandardOperatingProcedure" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasDataFile.id}" ] ;
+            rr:predicate sphn:hasDataFile ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasDataFile.id}" ] ;
-            rr:predicate sphn:hasDataFile ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasVersion ] ;
     rr:subjectMap [ rr:class sphn:StandardOperatingProcedure ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-StandardOperatingProcedure-{id}" ] .
 
@@ -1587,19 +1587,19 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
-            rr:predicate sphn:hasPerformer ],
-        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assessment-{sphn:hasAssessment.id}" ] ;
+            rr:predicate sphn:hasAssessment ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assessment-{sphn:hasAssessment.id}" ] ;
-            rr:predicate sphn:hasAssessment ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
+            rr:predicate sphn:hasPerformer ] ;
     rr:subjectMap [ rr:class sphn:AssessmentEvent ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentEvent-{id}" ] .
 
@@ -1607,19 +1607,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sphn:hasResult.id}" ] ;
             rr:predicate sphn:hasResult ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assessment-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{sphn:hasComponent[*].id}" ] ;
             rr:predicate sphn:hasComponent ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assessment-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].id}" ] ;
-            rr:predicate sphn:hasResult ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{sphn:hasRange.id}" ] ;
             rr:predicate sphn:hasRange ] ;
     rr:subjectMap [ rr:class sphn:Assessment ;
@@ -1638,19 +1634,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sphn:hasResult[*].id}" ] ;
             rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{sphn:hasRange.id}" ] ;
-            rr:predicate sphn:hasRange ] ;
+            rr:predicate sphn:hasRange ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:AssessmentComponent ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{id}" ] .
 
@@ -1667,10 +1659,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasUpperLimit.id}" ] ;
-            rr:predicate sphn:hasUpperLimit ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasLowerLimit.id}" ] ;
-            rr:predicate sphn:hasLowerLimit ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasLowerLimit.id}" ] ;
+            rr:predicate sphn:hasLowerLimit ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasUpperLimit.id}" ] ;
+            rr:predicate sphn:hasUpperLimit ] ;
     rr:subjectMap [ rr:class sphn:Range ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{id}" ] .
 
@@ -1711,11 +1703,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange.sphn:hasUpperLimit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ] ;
@@ -1741,7 +1733,7 @@
     rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sourceConceptID}-sphn-Code-{termid}" ] .
 
 :sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')]" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
@@ -1749,31 +1741,31 @@
             rr:predicate sphn:hasStringValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ] ;
+            rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:AssessmentResult ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}" ] .
 
 :sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasCode_rangesphnCode a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasCode" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sourceConceptID}-sphn-Code-{id}" ] .
 
 :sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasCode" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
@@ -1782,119 +1774,7 @@
     rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sourceConceptID}-sphn-Code-{termid}" ] .
 
 :sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasQuantity" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
-    rr:subjectMap [ rr:class sphn:Quantity ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
-
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasQuantity.sphn:hasUnit" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
-    rr:subjectMap [ rr:class sphn:Unit ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}" ] .
-
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasQuantity.sphn:hasUnit.sphn:hasCode" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sourceConceptID}-sphn-Code-{termid}" ] .
-
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorGradeAssessmentResult a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')]" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStringValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ] ;
-    rr:subjectMap [ rr:class sphn:TumorGradeAssessmentResult ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{id}" ] .
-
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorGradeAssessmentResult_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasCode" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{sourceConceptID}-sphn-Code-{termid}" ] .
-
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorGradeAssessmentResult_sphnhasQuantity_rangesphnQuantity a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasQuantity" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
-    rr:subjectMap [ rr:class sphn:Quantity ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
-
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorGradeAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasQuantity.sphn:hasUnit" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
-    rr:subjectMap [ rr:class sphn:Unit ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}" ] .
-
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorGradeAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasQuantity.sphn:hasUnit.sphn:hasCode" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sourceConceptID}-sphn-Code-{termid}" ] .
-
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorStageAssessmentResult a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')]" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
-        [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStringValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
-    rr:subjectMap [ rr:class sphn:TumorStageAssessmentResult ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{id}" ] .
-
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorStageAssessmentResult_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].sphn:hasCode" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{sourceConceptID}-sphn-Code-{termid}" ] .
-
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorStageAssessmentResult_sphnhasQuantity_rangesphnQuantity a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].sphn:hasQuantity" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
@@ -1908,8 +1788,8 @@
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorStageAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].sphn:hasQuantity.sphn:hasUnit" ;
+:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*].sphn:hasQuantity.sphn:hasUnit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
@@ -1917,8 +1797,8 @@
     rr:subjectMap [ rr:class sphn:Unit ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}" ] .
 
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorStageAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].sphn:hasQuantity.sphn:hasUnit.sphn:hasCode" ;
+:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*].sphn:hasQuantity.sphn:hasUnit.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
@@ -1941,14 +1821,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasRange.sphn:hasLowerLimit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -1974,14 +1854,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasRange.sphn:hasUpperLimit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -2004,23 +1884,23 @@
     rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sourceConceptID}-sphn-Code-{termid}" ] .
 
 :sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasResult_rangesphnAssessmentResult a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')]" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStringValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasStringValue ] ;
     rr:subjectMap [ rr:class sphn:AssessmentResult ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}" ] .
 
 :sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasResult_rangesphnAssessmentResult_sphnhasCode_rangesphnCode a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasCode" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
@@ -2036,7 +1916,7 @@
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sourceConceptID}-sphn-Code-{id}" ] .
 
 :sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasResult_rangesphnAssessmentResult_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasCode" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
@@ -2045,22 +1925,22 @@
     rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sourceConceptID}-sphn-Code-{termid}" ] .
 
 :sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasQuantity" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult.sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
 :sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasQuantity.sphn:hasUnit" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult.sphn:hasQuantity.sphn:hasUnit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
@@ -2069,7 +1949,7 @@
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}" ] .
 
 :sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasQuantity.sphn:hasUnit.sphn:hasCode" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult.sphn:hasQuantity.sphn:hasUnit.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
@@ -2077,193 +1957,81 @@
             rr:predicate rdf:type ] ;
     rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sourceConceptID}-sphn-Code-{termid}" ] .
 
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasResult_rangesphnTumorGradeAssessmentResult a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')]" ;
+:sphnAssessmentEvent_sphnhasPerformer_rangesphnPerformer a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasPerformer" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStringValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ] ;
-    rr:subjectMap [ rr:class sphn:TumorGradeAssessmentResult ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{id}" ] .
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ] ;
+    rr:subjectMap [ rr:class sphn:Performer ;
+            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{id}" ] .
 
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasResult_rangesphnTumorGradeAssessmentResult_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasCode" ;
+:sphnAssessmentEvent_sphnhasPerformer_rangesphnPerformer_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasPerformer.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{sourceConceptID}-sphn-Code-{termid}" ] .
+    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sourceConceptID}-sphn-Code-{termid}" ] .
 
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasResult_rangesphnTumorGradeAssessmentResult_sphnhasQuantity_rangesphnQuantity a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasQuantity" ;
+:sphnBilledDiagnosis a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:BilledDiagnosis[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rml:reference "sphn:hasRank.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
-    rr:subjectMap [ rr:class sphn:Quantity ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
-
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasResult_rangesphnTumorGradeAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasQuantity.sphn:hasUnit" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasRank ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasRecordDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Age-{sphn:hasSubjectAge.id}" ] ;
+            rr:predicate sphn:hasSubjectAge ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledDiagnosis-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ] ;
-    rr:subjectMap [ rr:class sphn:Unit ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}" ] .
+    rr:subjectMap [ rr:class sphn:BilledDiagnosis ;
+            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledDiagnosis-{id}" ] .
 
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasResult_rangesphnTumorGradeAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasQuantity.sphn:hasUnit.sphn:hasCode" ;
+:sphnBilledDiagnosis_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:BilledDiagnosis[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sourceConceptID}-sphn-Code-{termid}" ] .
+    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledDiagnosis-{sourceConceptID}-sphn-Code-{termid}" ] .
 
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasResult_rangesphnTumorStageAssessmentResult a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')]" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStringValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ] ;
-    rr:subjectMap [ rr:class sphn:TumorStageAssessmentResult ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{id}" ] .
-
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasResult_rangesphnTumorStageAssessmentResult_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].sphn:hasCode" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{sourceConceptID}-sphn-Code-{termid}" ] .
-
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasResult_rangesphnTumorStageAssessmentResult_sphnhasQuantity_rangesphnQuantity a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].sphn:hasQuantity" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
-    rr:subjectMap [ rr:class sphn:Quantity ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
-
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasResult_rangesphnTumorStageAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].sphn:hasQuantity.sphn:hasUnit" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
-    rr:subjectMap [ rr:class sphn:Unit ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}" ] .
-
-:sphnAssessmentEvent_sphnhasAssessment_rangesphnAssessment_sphnhasResult_rangesphnTumorStageAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasAssessment.sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].sphn:hasQuantity.sphn:hasUnit.sphn:hasCode" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sourceConceptID}-sphn-Code-{termid}" ] .
-
-:sphnAssessmentEvent_sphnhasPerformer_rangesphnPerformer a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasPerformer" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
-    rr:subjectMap [ rr:class sphn:Performer ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{id}" ] .
-
-:sphnAssessmentEvent_sphnhasPerformer_rangesphnPerformer_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:AssessmentEvent[*].sphn:hasPerformer.sphn:hasCode" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sourceConceptID}-sphn-Code-{termid}" ] .
-
-:sphnBilledDiagnosis a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:BilledDiagnosis[*]" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasRank.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasRank ],
-        [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasRecordDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledDiagnosis-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Age-{sphn:hasSubjectAge.id}" ] ;
-            rr:predicate sphn:hasSubjectAge ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ] ;
-    rr:subjectMap [ rr:class sphn:BilledDiagnosis ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledDiagnosis-{id}" ] .
-
-:sphnBilledDiagnosis_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:BilledDiagnosis[*].sphn:hasCode" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledDiagnosis-{sourceConceptID}-sphn-Code-{termid}" ] .
-
-:sphnBilledProcedure a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:BilledProcedure[*]" ;
+:sphnBilledProcedure a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:BilledProcedure[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
-            rr:predicate sphn:hasBodySite ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Intent-{sphn:hasIntent.id}" ] ;
             rr:predicate sphn:hasIntent ],
+        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledProcedure-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasRank.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasRank ] ;
+            rr:predicate sphn:hasRank ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
+            rr:predicate sphn:hasBodySite ] ;
     rr:subjectMap [ rr:class sphn:BilledProcedure ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledProcedure-{id}" ] .
 
@@ -2339,21 +2107,21 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasBiobankName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasBiobankName ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorSpecimen-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorSpecimen')].id}" ] ;
-            rr:predicate sphn:hasSample ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorSpecimen-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorSpecimen')].id}" ] ;
+            rr:predicate sphn:hasSample ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
             rr:predicate sphn:hasSample ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
-            rr:predicate sphn:hasSample ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
+            rr:predicate sphn:hasSample ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:Biobanksample ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Biobanksample-{id}" ] .
 
@@ -2361,24 +2129,24 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Birth[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Country-{sphn:hasCountry.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Birth-{id}-sphn-Code-{sphn:hasDeliveryModeCode.termid}" ] ;
+            rr:predicate sphn:hasDeliveryModeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Country-{sphn:hasCountry.id}" ] ;
             rr:predicate sphn:hasCountry ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasGroupSize.id}" ] ;
-            rr:predicate sphn:hasGroupSize ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GestationalAgeAtBirth-{sphn:hasGestationalAge.id}" ] ;
+            rr:predicate sphn:hasGestationalAge ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice[*].id}" ] ;
             rr:predicate sphn:hasMedicalDevice ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GestationalAgeAtBirth-{sphn:hasGestationalAge.id}" ] ;
-            rr:predicate sphn:hasGestationalAge ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasGroupSize.id}" ] ;
+            rr:predicate sphn:hasGroupSize ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BirthDate-{sphn:hasDate.id}" ] ;
-            rr:predicate sphn:hasDate ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Birth-{id}-sphn-Code-{sphn:hasDeliveryModeCode.termid}" ] ;
-            rr:predicate sphn:hasDeliveryModeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ] ;
+            rr:predicate sphn:hasDate ] ;
     rr:subjectMap [ rr:class sphn:Birth ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Birth-{id}" ] .
 
@@ -2404,21 +2172,21 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Birth[*].sphn:hasDate" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasYear" ;
-                    rr:datatype xsd:gYear ] ;
-            rr:predicate sphn:hasYear ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasMonth" ;
+                    rr:datatype xsd:gMonth ] ;
+            rr:predicate sphn:hasMonth ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rml:reference "sphn:hasMonth" ;
-                    rr:datatype xsd:gMonth ] ;
-            rr:predicate sphn:hasMonth ],
-        [ rr:objectMap [ rml:reference "sphn:hasTime" ;
-                    rr:datatype xsd:time ] ;
-            rr:predicate sphn:hasTime ],
+        [ rr:objectMap [ rml:reference "sphn:hasYear" ;
+                    rr:datatype xsd:gYear ] ;
+            rr:predicate sphn:hasYear ],
         [ rr:objectMap [ rml:reference "sphn:hasDay" ;
                     rr:datatype xsd:gDay ] ;
-            rr:predicate sphn:hasDay ] ;
+            rr:predicate sphn:hasDay ],
+        [ rr:objectMap [ rml:reference "sphn:hasTime" ;
+                    rr:datatype xsd:time ] ;
+            rr:predicate sphn:hasTime ] ;
     rr:subjectMap [ rr:class sphn:BirthDate ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BirthDate-{id}" ] .
 
@@ -2470,14 +2238,14 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
-            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ] ;
+            rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
+            rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:MedicalDevice ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}" ] .
 
@@ -2485,12 +2253,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Birth[*].sphn:hasMedicalDevice[*].sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ] ;
@@ -2516,12 +2284,12 @@
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
         [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ] ;
+            rr:predicate sphn:hasUniformResourceLocator ],
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasDescription ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -2529,15 +2297,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Birth[*].sphn:hasMedicalDevice[*].sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -2554,30 +2322,30 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BloodPressureMeasurement[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
+            rr:predicate sphn:hasPerformer ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
-            rr:predicate sphn:hasBodySite ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressure-{sphn:hasResult[*].id}" ] ;
-            rr:predicate sphn:hasResult ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
+            rr:predicate sphn:hasBodySite ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressureMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
+            rr:predicate sphn:hasMethodCode ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
-            rr:predicate sphn:hasPerformer ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressureMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
-            rr:predicate sphn:hasMethodCode ],
         [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressure-{sphn:hasResult[*].id}" ] ;
+            rr:predicate sphn:hasResult ] ;
     rr:subjectMap [ rr:class sphn:BloodPressureMeasurement ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressureMeasurement-{id}" ] .
 
@@ -2585,10 +2353,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BloodPressureMeasurement[*].sphn:hasBodySite" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasLaterality.id}" ] ;
-            rr:predicate sphn:hasLaterality ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasLaterality.id}" ] ;
+            rr:predicate sphn:hasLaterality ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:BodySite ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}" ] .
 
@@ -2627,10 +2395,10 @@
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+            rr:predicate sphn:hasProductCode ] ;
     rr:subjectMap [ rr:class sphn:Implant ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}" ] .
 
@@ -2638,12 +2406,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BloodPressureMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ] ;
@@ -2663,19 +2431,19 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BloodPressureMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasDescription ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
-    rr:subjectMap [ rr:class sphn:Software ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasUniformResourceLocator ],
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasVersion ] ;
+    rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
 :sphnBloodPressureMeasurement_sphnhasMedicalDevice_rangesphnImplant_sphnhasTypeCode_rangesphnTerminology a rr:TriplesMap ;
@@ -2693,12 +2461,12 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+            rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
             rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ] ;
     rr:subjectMap [ rr:class sphn:MedicalDevice ;
@@ -2711,12 +2479,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -2733,15 +2501,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BloodPressureMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ],
+            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
+            rr:predicate sphn:hasUniformResourceLocator ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ] ;
@@ -2755,12 +2523,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -2804,17 +2572,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BloodPressureMeasurement[*].sphn:hasResult[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasDiastolicPressure.id}" ] ;
-            rr:predicate sphn:hasDiastolicPressure ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasSystolicPressure.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasSystolicPressure.id}" ] ;
             rr:predicate sphn:hasSystolicPressure ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasDataFile.id}" ] ;
-            rr:predicate sphn:hasDataFile ],
         [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasDiastolicPressure.id}" ] ;
+            rr:predicate sphn:hasDiastolicPressure ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasMeanPressure.id}" ] ;
-            rr:predicate sphn:hasMeanPressure ] ;
+            rr:predicate sphn:hasMeanPressure ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasDataFile.id}" ] ;
+            rr:predicate sphn:hasDataFile ] ;
     rr:subjectMap [ rr:class sphn:BloodPressure ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressure-{id}" ] .
 
@@ -2822,14 +2590,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BloodPressureMeasurement[*].sphn:hasResult[*].sphn:hasDiastolicPressure" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -2855,12 +2623,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BloodPressureMeasurement[*].sphn:hasResult[*].sphn:hasMeanPressure" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
@@ -2888,14 +2656,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BloodPressureMeasurement[*].sphn:hasResult[*].sphn:hasSystolicPressure" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -2921,26 +2689,26 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyHeightMeasurement[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice.id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyHeightMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
-            rr:predicate sphn:hasMethodCode ],
-        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
             rr:predicate sphn:hasPerformer ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice.id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyHeightMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
+            rr:predicate sphn:hasMethodCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Birth-{sphn:hasAssociatedEvent.id}" ] ;
+            rr:predicate sphn:hasAssociatedEvent ],
         [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Birth-{sphn:hasAssociatedEvent.id}" ] ;
-            rr:predicate sphn:hasAssociatedEvent ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyHeight-{sphn:hasResult.id}" ] ;
             rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
     rr:subjectMap [ rr:class sphn:BodyHeightMeasurement ;
@@ -2950,16 +2718,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyHeightMeasurement[*].sphn:hasMedicalDevice" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
             rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
-            rr:predicate sphn:hasProductCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:MedicalDevice ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}" ] .
 
@@ -2967,15 +2735,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyHeightMeasurement[*].sphn:hasMedicalDevice.sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -2995,15 +2763,15 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ],
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasUniformResourceLocator ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -3066,10 +2834,10 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataDetermination-{sphn:hasDataDetermination.id}" ] ;
-            rr:predicate sphn:hasDataDetermination ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ] ;
+            rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataDetermination-{sphn:hasDataDetermination.id}" ] ;
+            rr:predicate sphn:hasDataDetermination ] ;
     rr:subjectMap [ rr:class sphn:BodyHeight ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyHeight-{id}" ] .
 
@@ -3098,11 +2866,11 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -3128,17 +2896,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyMassIndex[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rml:reference "sphn:hasDeterminationDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDeterminationDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
     rr:subjectMap [ rr:class sphn:BodyMassIndex ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyMassIndex-{id}" ] .
 
@@ -3146,14 +2914,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyMassIndex[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -3179,20 +2947,20 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyPosition[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyPosition-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyPosition-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ] ;
     rr:subjectMap [ rr:class sphn:BodyPosition ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyPosition-{id}" ] .
 
@@ -3209,20 +2977,20 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodySurfaceArea[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rml:reference "sphn:hasCalculationMethod.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasCalculationMethod ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rml:reference "sphn:hasDeterminationDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDeterminationDateTime ] ;
+            rr:predicate sphn:hasDeterminationDateTime ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCalculationMethod.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasCalculationMethod ] ;
     rr:subjectMap [ rr:class sphn:BodySurfaceArea ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySurfaceArea-{id}" ] .
 
@@ -3230,14 +2998,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodySurfaceArea[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -3263,30 +3031,30 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyTemperatureMeasurement[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
-            rr:predicate sphn:hasBodySite ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyTemperature-{sphn:hasResult[*].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyTemperatureMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyTemperatureMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
             rr:predicate sphn:hasMethodCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
-            rr:predicate sphn:hasPerformer ],
         [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
+            rr:predicate sphn:hasBodySite ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyTemperature-{sphn:hasResult[*].id}" ] ;
+            rr:predicate sphn:hasResult ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
+            rr:predicate sphn:hasPerformer ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:BodyTemperatureMeasurement ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyTemperatureMeasurement-{id}" ] .
 
@@ -3332,14 +3100,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyTemperatureMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ] ;
+            rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ] ;
     rr:subjectMap [ rr:class sphn:Implant ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}" ] .
 
@@ -3350,12 +3118,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -3372,18 +3140,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyTemperatureMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasUniformResourceLocator ],
         [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ] ;
+            rr:predicate sphn:hasDescription ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -3400,16 +3168,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyTemperatureMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
-            rr:predicate sphn:hasProductCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
             rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+            rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ] ;
+            rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:MedicalDevice ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}" ] .
 
@@ -3442,18 +3210,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyTemperatureMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ],
+            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasUniformResourceLocator ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -3464,12 +3232,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -3513,13 +3281,13 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyTemperatureMeasurement[*].sphn:hasResult[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasDataFile.id}" ] ;
             rr:predicate sphn:hasDataFile ],
-        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDateTime ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ] ;
     rr:subjectMap [ rr:class sphn:BodyTemperature ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyTemperature-{id}" ] .
 
@@ -3527,14 +3295,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyTemperatureMeasurement[*].sphn:hasResult[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -3560,28 +3328,28 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyWeightMeasurement[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyWeightMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
+            rr:predicate sphn:hasPerformer ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyWeightMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
             rr:predicate sphn:hasMethodCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyWeight-{sphn:hasResult.id}" ] ;
-            rr:predicate sphn:hasResult ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasStartDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice.id}" ] ;
             rr:predicate sphn:hasMedicalDevice ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Birth-{sphn:hasAssociatedEvent.id}" ] ;
             rr:predicate sphn:hasAssociatedEvent ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
-            rr:predicate sphn:hasPerformer ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyWeight-{sphn:hasResult.id}" ] ;
+            rr:predicate sphn:hasResult ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasEndDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ] ;
+            rr:predicate sphn:hasEndDateTime ] ;
     rr:subjectMap [ rr:class sphn:BodyWeightMeasurement ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyWeightMeasurement-{id}" ] .
 
@@ -3589,16 +3357,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyWeightMeasurement[*].sphn:hasMedicalDevice" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+            rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
-            rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ] ;
+            rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:MedicalDevice ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}" ] .
 
@@ -3606,12 +3374,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyWeightMeasurement[*].sphn:hasMedicalDevice.sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ] ;
@@ -3631,18 +3399,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyWeightMeasurement[*].sphn:hasMedicalDevice.sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ] ;
+            rr:predicate sphn:hasDescription ],
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasUniformResourceLocator ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -3650,15 +3418,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyWeightMeasurement[*].sphn:hasMedicalDevice.sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -3705,10 +3473,10 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataDetermination-{sphn:hasDataDetermination.id}" ] ;
-            rr:predicate sphn:hasDataDetermination ] ;
+            rr:predicate sphn:hasDataDetermination ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ] ;
     rr:subjectMap [ rr:class sphn:BodyWeight ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyWeight-{id}" ] .
 
@@ -3734,12 +3502,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:BodyWeightMeasurement[*].sphn:hasResult.sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
@@ -3769,17 +3537,17 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacIndex-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
             rr:predicate sphn:hasMethodCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rml:reference "sphn:hasDeterminationDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDeterminationDateTime ] ;
+            rr:predicate sphn:hasDeterminationDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ] ;
     rr:subjectMap [ rr:class sphn:CardiacIndex ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacIndex-{id}" ] .
 
@@ -3796,12 +3564,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:CardiacIndex[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
@@ -3829,28 +3597,28 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:CardiacOutputMeasurement[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasEndDateTime ],
+            rr:predicate sphn:hasStartDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
             rr:predicate sphn:hasMedicalDevice ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacOutput-{sphn:hasResult[*].id}" ] ;
             rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ],
+        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasEndDateTime ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacOutputMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
-            rr:predicate sphn:hasMethodCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
             rr:predicate sphn:hasPerformer ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacOutputMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
+            rr:predicate sphn:hasMethodCode ] ;
     rr:subjectMap [ rr:class sphn:CardiacOutputMeasurement ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacOutputMeasurement-{id}" ] .
 
@@ -3858,14 +3626,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:CardiacOutputMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ] ;
+            rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+            rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:Implant ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}" ] .
 
@@ -3898,18 +3666,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:CardiacOutputMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
+            rr:predicate sphn:hasDescription ],
         [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasUniformResourceLocator ],
         [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -3926,14 +3694,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:CardiacOutputMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
             rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:MedicalDevice ;
@@ -3968,18 +3736,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:CardiacOutputMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ] ;
+            rr:predicate sphn:hasDescription ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasUniformResourceLocator ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -4053,11 +3821,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:CardiacOutputMeasurement[*].sphn:hasResult[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ] ;
@@ -4086,30 +3854,30 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:CircumferenceMeasurement[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Birth-{sphn:hasAssociatedEvent.id}" ] ;
-            rr:predicate sphn:hasAssociatedEvent ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
+            rr:predicate sphn:hasPerformer ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CircumferenceMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
+            rr:predicate sphn:hasMethodCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
-            rr:predicate sphn:hasBodySite ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Circumference-{sphn:hasResult.id}" ] ;
             rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice.id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
-            rr:predicate sphn:hasPerformer ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CircumferenceMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
-            rr:predicate sphn:hasMethodCode ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice.id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
+            rr:predicate sphn:hasBodySite ],
         [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Birth-{sphn:hasAssociatedEvent.id}" ] ;
+            rr:predicate sphn:hasAssociatedEvent ] ;
     rr:subjectMap [ rr:class sphn:CircumferenceMeasurement ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CircumferenceMeasurement-{id}" ] .
 
@@ -4155,16 +3923,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:CircumferenceMeasurement[*].sphn:hasMedicalDevice" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
             rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ] ;
+            rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ] ;
     rr:subjectMap [ rr:class sphn:MedicalDevice ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}" ] .
 
@@ -4172,17 +3940,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:CircumferenceMeasurement[*].sphn:hasMedicalDevice.sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
-    rr:subjectMap [ rr:class sphn:Code ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
+    rr:subjectMap [ rr:class sphn:Code ;
+            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
 :sphnCircumferenceMeasurement_sphnhasMedicalDevice_rangesphnMedicalDevice_sphnhasProductCode_rangesphnTerminology a rr:TriplesMap ;
     rml:logicalSource [ rml:iterator "$.content.sphn:CircumferenceMeasurement[*].sphn:hasMedicalDevice.sphn:hasProductCode" ;
@@ -4197,18 +3965,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:CircumferenceMeasurement[*].sphn:hasMedicalDevice.sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
+            rr:predicate sphn:hasDescription ],
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasUniformResourceLocator ],
         [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -4219,12 +3987,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -4280,14 +4048,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:CircumferenceMeasurement[*].sphn:hasResult.sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -4318,10 +4086,10 @@
             rr:predicate sphn:hasEventDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CivilStatus-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
     rr:subjectMap [ rr:class sphn:CivilStatus ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CivilStatus-{id}" ] .
 
@@ -4338,20 +4106,20 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Consent[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Consent-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Consent-{id}-sphn-Code-{sphn:hasStatusCode.termid}" ] ;
-            rr:predicate sphn:hasStatusCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rml:reference "sphn:hasTemplateIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasTemplateIdentifier ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Consent-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Consent-{id}-sphn-Code-{sphn:hasStatusCode.termid}" ] ;
+            rr:predicate sphn:hasStatusCode ] ;
     rr:subjectMap [ rr:class sphn:Consent ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Consent-{id}" ] .
 
@@ -4377,26 +4145,26 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DataFile[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasUniformResourceIdentifier ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rml:reference "sphn:hasEncoding.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasEncoding ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Hash-{sphn:hasHash.id}" ] ;
+            rr:predicate sphn:hasHash ],
         [ rr:objectMap [ rml:reference "sphn:hasCreationDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasCreationDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{id}-sphn-Code-{sphn:hasFormatCode.termid}" ] ;
-            rr:predicate sphn:hasFormatCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Hash-{sphn:hasHash.id}" ] ;
-            rr:predicate sphn:hasHash ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasEncoding.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasEncoding ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasFormatCode ] ;
     rr:subjectMap [ rr:class sphn:DataFile ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{id}" ] .
 
@@ -4426,39 +4194,39 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DataProcessing[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assay-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Assay')].id}" ] ;
-            rr:predicate sphn:hasPredecessor ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAssay-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingAssay')].id}" ] ;
-            rr:predicate sphn:hasPredecessor ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sphn:hasQualityControlMetric[*].id}" ] ;
-            rr:predicate sphn:hasQualityControlMetric ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProcessing-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataProcessing')].id}" ] ;
-            rr:predicate sphn:hasPredecessor ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAnalysis-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingAnalysis')].id}" ] ;
-            rr:predicate sphn:hasPredecessor ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware.id}" ] ;
-            rr:predicate sphn:hasSoftware ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase[*].id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataFile')].id}" ] ;
             rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimeSeriesDataFile')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sphn:hasQualityControlMetric[*].id}" ] ;
+            rr:predicate sphn:hasQualityControlMetric ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimeSeriesDataFile')].id}" ] ;
             rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAssay-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingAssay')].id}" ] ;
+            rr:predicate sphn:hasPredecessor ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProcessing-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataFile')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimeSeriesDataFile')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProcessing-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProcessing-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-StandardOperatingProcedure-{sphn:hasStandardOperatingProcedure.id}" ] ;
             rr:predicate sphn:hasStandardOperatingProcedure ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProcessing-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware.id}" ] ;
+            rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProcessing-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataProcessing')].id}" ] ;
+            rr:predicate sphn:hasPredecessor ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAnalysis-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingAnalysis')].id}" ] ;
+            rr:predicate sphn:hasPredecessor ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assay-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Assay')].id}" ] ;
+            rr:predicate sphn:hasPredecessor ],
+        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
     rr:subjectMap [ rr:class sphn:DataProcessing ;
@@ -4468,15 +4236,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DataProcessing[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
+            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProcessing-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -4493,11 +4261,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DataProcessing[*].sphn:hasQualityControlMetric[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:QualityControlMetric ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}" ] .
@@ -4509,12 +4277,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -4531,14 +4299,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DataProcessing[*].sphn:hasQualityControlMetric[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -4564,12 +4332,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DataProcessing[*].sphn:hasSoftware" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasDescription ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
@@ -4583,17 +4351,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DataProcessing[*].sphn:hasStandardOperatingProcedure" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
+            rr:predicate sphn:hasDescription ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasDataFile.id}" ] ;
             rr:predicate sphn:hasDataFile ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasVersion ] ;
     rr:subjectMap [ rr:class sphn:StandardOperatingProcedure ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-StandardOperatingProcedure-{id}" ] .
 
@@ -4614,12 +4382,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProvider-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -4627,21 +4395,21 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Death[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DeathDate-{sphn:hasDate.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasReportDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasReportDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DeathDate-{sphn:hasDate.id}" ] ;
             rr:predicate sphn:hasDate ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasReportDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasReportDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Death-{id}-sphn-Code-{sphn:hasCircumstanceCode.termid}" ] ;
             rr:predicate sphn:hasCircumstanceCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Death-{id}-sphn-Code-{sphn:hasConditionCode.termid}" ] ;
-            rr:predicate sphn:hasConditionCode ] ;
+            rr:predicate sphn:hasConditionCode ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ] ;
     rr:subjectMap [ rr:class sphn:Death ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Death-{id}" ] .
 
@@ -4667,18 +4435,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Death[*].sphn:hasDate" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDay" ;
-                    rr:datatype xsd:gDay ] ;
-            rr:predicate sphn:hasDay ],
-        [ rr:objectMap [ rml:reference "sphn:hasTime" ;
-                    rr:datatype xsd:time ] ;
-            rr:predicate sphn:hasTime ],
-        [ rr:objectMap [ rml:reference "sphn:hasYear" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasYear" ;
                     rr:datatype xsd:gYear ] ;
             rr:predicate sphn:hasYear ],
         [ rr:objectMap [ rml:reference "sphn:hasMonth" ;
                     rr:datatype xsd:gMonth ] ;
-            rr:predicate sphn:hasMonth ] ;
+            rr:predicate sphn:hasMonth ],
+        [ rr:objectMap [ rml:reference "sphn:hasTime" ;
+                    rr:datatype xsd:time ] ;
+            rr:predicate sphn:hasTime ],
+        [ rr:objectMap [ rml:reference "sphn:hasDay" ;
+                    rr:datatype xsd:gDay ] ;
+            rr:predicate sphn:hasDay ] ;
     rr:subjectMap [ rr:class sphn:DeathDate ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DeathDate-{id}" ] .
 
@@ -4686,16 +4454,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Diagnosis[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Diagnosis-{id}-sphn-Code-{sphn:hasCode[*].id}" ] ;
-            rr:predicate sphn:hasCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Diagnosis-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Age-{sphn:hasSubjectAge.id}" ] ;
-            rr:predicate sphn:hasSubjectAge ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Diagnosis-{id}-sphn-Code-{sphn:hasCode[*].id}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Age-{sphn:hasSubjectAge.id}" ] ;
+            rr:predicate sphn:hasSubjectAge ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
@@ -4708,15 +4476,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Diagnosis[*].sphn:hasCode[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Diagnosis-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -4733,28 +4501,28 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugAdministrationEvent[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasDuration.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugAdministrationEvent-{id}-sphn-Code-{sphn:hasAdministrationRouteCode.termid}" ] ;
+            rr:predicate sphn:hasAdministrationRouteCode ],
+        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasEndDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasDuration.id}" ] ;
             rr:predicate sphn:hasDuration ],
+        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimePattern-{sphn:hasTimePattern.id}" ] ;
             rr:predicate sphn:hasTimePattern ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugAdministrationEvent-{id}-sphn-Code-{sphn:hasAdministrationRouteCode.termid}" ] ;
-            rr:predicate sphn:hasAdministrationRouteCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugAdministrationEvent-{id}-sphn-Code-{sphn:hasReasonToStopCode.termid}" ] ;
-            rr:predicate sphn:hasReasonToStopCode ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Drug-{sphn:hasDrug.id}" ] ;
             rr:predicate sphn:hasDrug ],
-        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasEndDateTime ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugAdministrationEvent-{id}-sphn-Code-{sphn:hasReasonToStopCode.termid}" ] ;
+            rr:predicate sphn:hasReasonToStopCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:DrugAdministrationEvent ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugAdministrationEvent-{id}" ] .
 
@@ -4771,16 +4539,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugAdministrationEvent[*].sphn:hasDrug" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasActiveIngredient[*].id}" ] ;
-            rr:predicate sphn:hasActiveIngredient ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasInactiveIngredient[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasInactiveIngredient[*].id}" ] ;
             rr:predicate sphn:hasInactiveIngredient ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{sphn:hasArticle.id}" ] ;
             rr:predicate sphn:hasArticle ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ] ;
+            rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasActiveIngredient[*].id}" ] ;
+            rr:predicate sphn:hasActiveIngredient ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:Drug ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Drug-{id}" ] .
 
@@ -4788,17 +4556,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugAdministrationEvent[*].sphn:hasDrug.sphn:hasActiveIngredient[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rml:reference "sphn:hasGenericName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasGenericName ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:Substance ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}" ] .
 
@@ -4806,15 +4574,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugAdministrationEvent[*].sphn:hasDrug.sphn:hasActiveIngredient[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -4831,14 +4599,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugAdministrationEvent[*].sphn:hasDrug.sphn:hasActiveIngredient[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -4864,15 +4632,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugAdministrationEvent[*].sphn:hasDrug.sphn:hasArticle" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{sphn:hasManufacturedDoseForm.id}" ] ;
-            rr:predicate sphn:hasManufacturedDoseForm ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{sphn:hasManufacturedDoseForm.id}" ] ;
+            rr:predicate sphn:hasManufacturedDoseForm ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:DrugArticle ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{id}" ] .
 
@@ -4880,15 +4648,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugAdministrationEvent[*].sphn:hasDrug.sphn:hasArticle.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -4910,12 +4678,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -4934,15 +4702,15 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rml:reference "sphn:hasGenericName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasGenericName ] ;
+            rr:predicate sphn:hasGenericName ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:Substance ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}" ] .
 
@@ -4950,15 +4718,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugAdministrationEvent[*].sphn:hasDrug.sphn:hasInactiveIngredient[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -4975,14 +4743,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugAdministrationEvent[*].sphn:hasDrug.sphn:hasInactiveIngredient[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -5008,14 +4776,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugAdministrationEvent[*].sphn:hasDrug.sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -5041,14 +4809,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugAdministrationEvent[*].sphn:hasDuration" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -5101,37 +4869,37 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugPrescription[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NursingDiagnosis-{sphn:hasIndicationToStart[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#NursingDiagnosis')].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologyDiagnosis-{sphn:hasIndicationToStart[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OncologyDiagnosis')].id}" ] ;
             rr:predicate sphn:hasIndicationToStart ],
-        [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasRecordDateTime ],
-        [ rr:objectMap [ rml:reference "sphn:hasFirstAdministrationDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasFirstAdministrationDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledDiagnosis-{sphn:hasIndicationToStart[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BilledDiagnosis')].id}" ] ;
             rr:predicate sphn:hasIndicationToStart ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugPrescription-{id}-sphn-Code-{sphn:hasAdministrationRouteCode.termid}" ] ;
-            rr:predicate sphn:hasAdministrationRouteCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimePattern-{sphn:hasTimePattern.id}" ] ;
-            rr:predicate sphn:hasTimePattern ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Drug-{sphn:hasDrug.id}" ] ;
-            rr:predicate sphn:hasDrug ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Intent-{sphn:hasIntent[*].id}" ] ;
+            rr:predicate sphn:hasIntent ],
         [ rr:objectMap [ rml:reference "sphn:hasLastAdministrationDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasLastAdministrationDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Diagnosis-{sphn:hasIndicationToStart[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Diagnosis')].id}" ] ;
             rr:predicate sphn:hasIndicationToStart ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Intent-{sphn:hasIntent[*].id}" ] ;
-            rr:predicate sphn:hasIntent ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologyDiagnosis-{sphn:hasIndicationToStart[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OncologyDiagnosis')].id}" ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasRecordDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimePattern-{sphn:hasTimePattern.id}" ] ;
+            rr:predicate sphn:hasTimePattern ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Drug-{sphn:hasDrug.id}" ] ;
+            rr:predicate sphn:hasDrug ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugPrescription-{id}-sphn-Code-{sphn:hasAdministrationRouteCode.termid}" ] ;
+            rr:predicate sphn:hasAdministrationRouteCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NursingDiagnosis-{sphn:hasIndicationToStart[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#NursingDiagnosis')].id}" ] ;
             rr:predicate sphn:hasIndicationToStart ],
+        [ rr:objectMap [ rml:reference "sphn:hasFirstAdministrationDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasFirstAdministrationDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasFrequency.id}" ] ;
             rr:predicate sphn:hasFrequency ] ;
     rr:subjectMap [ rr:class sphn:DrugPrescription ;
@@ -5150,16 +4918,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugPrescription[*].sphn:hasDrug" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{sphn:hasArticle.id}" ] ;
-            rr:predicate sphn:hasArticle ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasActiveIngredient[*].id}" ] ;
             rr:predicate sphn:hasActiveIngredient ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{sphn:hasArticle.id}" ] ;
+            rr:predicate sphn:hasArticle ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasInactiveIngredient[*].id}" ] ;
-            rr:predicate sphn:hasInactiveIngredient ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ] ;
+            rr:predicate sphn:hasInactiveIngredient ] ;
     rr:subjectMap [ rr:class sphn:Drug ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Drug-{id}" ] .
 
@@ -5167,15 +4935,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugPrescription[*].sphn:hasDrug.sphn:hasActiveIngredient[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rml:reference "sphn:hasGenericName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasGenericName ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Substance ;
@@ -5185,15 +4953,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugPrescription[*].sphn:hasDrug.sphn:hasActiveIngredient[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -5210,14 +4978,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugPrescription[*].sphn:hasDrug.sphn:hasActiveIngredient[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -5243,15 +5011,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugPrescription[*].sphn:hasDrug.sphn:hasArticle" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{sphn:hasManufacturedDoseForm.id}" ] ;
-            rr:predicate sphn:hasManufacturedDoseForm ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{sphn:hasManufacturedDoseForm.id}" ] ;
+            rr:predicate sphn:hasManufacturedDoseForm ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:DrugArticle ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{id}" ] .
 
@@ -5262,12 +5030,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -5286,15 +5054,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugPrescription[*].sphn:hasDrug.sphn:hasArticle.sphn:hasManufacturedDoseForm.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -5311,17 +5079,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugPrescription[*].sphn:hasDrug.sphn:hasInactiveIngredient[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rml:reference "sphn:hasGenericName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasGenericName ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Substance ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}" ] .
 
@@ -5329,15 +5097,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugPrescription[*].sphn:hasDrug.sphn:hasInactiveIngredient[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -5357,11 +5125,11 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -5387,12 +5155,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugPrescription[*].sphn:hasDrug.sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
@@ -5420,14 +5188,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:DrugPrescription[*].sphn:hasFrequency" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -5489,30 +5257,30 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:ElectrocardiographicProcedure[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Electrocardiogram-{sphn:hasOutput.id}" ] ;
-            rr:predicate sphn:hasOutput ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Intent-{sphn:hasIntent.id}" ] ;
+            rr:predicate sphn:hasIntent ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite[*].id}" ] ;
+            rr:predicate sphn:hasBodySite ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Electrocardiogram-{sphn:hasOutput.id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasNumberOfLeads.id}" ] ;
+            rr:predicate sphn:hasNumberOfLeads ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ElectrocardiographicProcedure-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite[*].id}" ] ;
-            rr:predicate sphn:hasBodySite ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasNumberOfLeads.id}" ] ;
-            rr:predicate sphn:hasNumberOfLeads ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Intent-{sphn:hasIntent.id}" ] ;
-            rr:predicate sphn:hasIntent ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PhysiologicState-{sphn:hasSubjectPhysiologicState.id}" ] ;
-            rr:predicate sphn:hasSubjectPhysiologicState ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ElectrocardiographicProcedure-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
+            rr:predicate sphn:hasSubjectPhysiologicState ] ;
     rr:subjectMap [ rr:class sphn:ElectrocardiographicProcedure ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ElectrocardiographicProcedure-{id}" ] .
 
@@ -5585,11 +5353,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:ElectrocardiographicProcedure[*].sphn:hasNumberOfLeads" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ] ;
@@ -5645,19 +5413,19 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:ExcludedDisorder[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasRecordDateTime ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ExcludedDisorder-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
-            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasRecordDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ExcludedDisorder-{id}-sphn-Code-{sphn:hasCode[*].id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ExcludedDisorder-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:ExcludedDisorder ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ExcludedDisorder-{id}" ] .
 
@@ -5690,31 +5458,31 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Exposure[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasDuration.id}" ] ;
-            rr:predicate sphn:hasDuration ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Exposure-{id}-sphn-Code-{sphn:hasAgentCode.termid}" ] ;
+            rr:predicate sphn:hasAgentCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Exposure-{id}-sphn-Code-{sphn:hasDegreeCode.termid}" ] ;
+            rr:predicate sphn:hasDegreeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Exposure-{id}-sphn-Code-{sphn:hasRouteCode[*].termid}" ] ;
             rr:predicate sphn:hasRouteCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
-        [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasRecordDateTime ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Exposure-{id}-sphn-Code-{sphn:hasDegreeCode.termid}" ] ;
-            rr:predicate sphn:hasDegreeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Exposure-{id}-sphn-Code-{sphn:hasAgentCode.termid}" ] ;
-            rr:predicate sphn:hasAgentCode ],
+        [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasRecordDateTime ],
         [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasDuration.id}" ] ;
+            rr:predicate sphn:hasDuration ] ;
     rr:subjectMap [ rr:class sphn:Exposure ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Exposure-{id}" ] .
 
@@ -5743,11 +5511,11 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -5773,14 +5541,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Exposure[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -5818,19 +5586,19 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FluidInputOutput-{sphn:hasFluidInputOutput[*].id}" ] ;
-            rr:predicate sphn:hasFluidInputOutput ],
+        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasEndDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FluidInputOutput-{sphn:hasFluidInputOutput[*].id}" ] ;
+            rr:predicate sphn:hasFluidInputOutput ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasEndDateTime ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ] ;
     rr:subjectMap [ rr:class sphn:FluidBalance ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FluidBalance-{id}" ] .
 
@@ -5838,14 +5606,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:FluidBalance[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -5871,20 +5639,20 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:FluidInputOutput[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasSubstance.id}" ] ;
-            rr:predicate sphn:hasSubstance ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasSubstance.id}" ] ;
+            rr:predicate sphn:hasSubstance ] ;
     rr:subjectMap [ rr:class sphn:FluidInputOutput ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FluidInputOutput-{id}" ] .
 
@@ -5892,15 +5660,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:FluidInputOutput[*].sphn:hasSubstance" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rml:reference "sphn:hasGenericName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasGenericName ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ] ;
     rr:subjectMap [ rr:class sphn:Substance ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}" ] .
 
@@ -5917,14 +5685,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:FluidInputOutput[*].sphn:hasSubstance.sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -5950,17 +5718,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:FollowUp[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDateTime ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VitalStatus-{sphn:hasResult.id}" ] ;
+            rr:predicate sphn:hasResult ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VitalStatus-{sphn:hasResult.id}" ] ;
-            rr:predicate sphn:hasResult ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FollowUp-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasDateTime ] ;
     rr:subjectMap [ rr:class sphn:FollowUp ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FollowUp-{id}" ] .
 
@@ -5977,10 +5745,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:FollowUp[*].sphn:hasResult" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VitalStatus-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Death-{sphn:hasDeath.id}" ] ;
-            rr:predicate sphn:hasDeath ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Death-{sphn:hasDeath.id}" ] ;
+            rr:predicate sphn:hasDeath ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VitalStatus-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:VitalStatus ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VitalStatus-{id}" ] .
 
@@ -5997,14 +5765,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:GestationalAgeAtBirth[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
     rr:subjectMap [ rr:class sphn:GestationalAgeAtBirth ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GestationalAgeAtBirth-{id}" ] .
 
@@ -6015,11 +5783,11 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -6045,29 +5813,29 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:HealthcareEncounter[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TherapeuticArea-{sphn:hasTherapeuticArea.id}" ] ;
+            rr:predicate sphn:hasTherapeuticArea ],
+        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
+        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{sphn:hasTargetLocation.id}" ] ;
-            rr:predicate sphn:hasTargetLocation ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{sphn:hasOriginLocation.id}" ] ;
             rr:predicate sphn:hasOriginLocation ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{sphn:hasCurrentLocation.id}" ] ;
             rr:predicate sphn:hasCurrentLocation ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TherapeuticArea-{sphn:hasTherapeuticArea.id}" ] ;
-            rr:predicate sphn:hasTherapeuticArea ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{sphn:hasTargetLocation.id}" ] ;
+            rr:predicate sphn:hasTargetLocation ] ;
     rr:subjectMap [ rr:class sphn:HealthcareEncounter ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HealthcareEncounter-{id}" ] .
 
@@ -6075,11 +5843,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:HealthcareEncounter[*].sphn:hasCurrentLocation" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasExact" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rml:reference "sphn:hasExact" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasExact ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ] ;
+            rr:predicate sphn:hasExact ] ;
     rr:subjectMap [ rr:class sphn:Location ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{id}" ] .
 
@@ -6096,11 +5864,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:HealthcareEncounter[*].sphn:hasOriginLocation" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasExact" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rml:reference "sphn:hasExact" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasExact ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ] ;
+            rr:predicate sphn:hasExact ] ;
     rr:subjectMap [ rr:class sphn:Location ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{id}" ] .
 
@@ -6117,11 +5885,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:HealthcareEncounter[*].sphn:hasTargetLocation" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasExact" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rml:reference "sphn:hasExact" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasExact ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ] ;
+            rr:predicate sphn:hasExact ] ;
     rr:subjectMap [ rr:class sphn:Location ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{id}" ] .
 
@@ -6150,34 +5918,34 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:HeartRateMeasurement[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
-            rr:predicate sphn:hasBodySite ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
-            rr:predicate sphn:hasPerformer ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRateMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
-            rr:predicate sphn:hasMethodCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasEndDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRate-{sphn:hasResult[*].id}" ] ;
-            rr:predicate sphn:hasResult ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PhysiologicState-{sphn:hasSubjectPhysiologicState.id}" ] ;
+            rr:predicate sphn:hasSubjectPhysiologicState ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRate-{sphn:hasResult[*].id}" ] ;
+            rr:predicate sphn:hasResult ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
             rr:predicate sphn:hasMedicalDevice ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
+            rr:predicate sphn:hasPerformer ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PhysiologicState-{sphn:hasSubjectPhysiologicState.id}" ] ;
-            rr:predicate sphn:hasSubjectPhysiologicState ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
-    rr:subjectMap [ rr:class sphn:HeartRateMeasurement ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRateMeasurement-{id}" ] .
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
+            rr:predicate sphn:hasBodySite ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRateMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
+            rr:predicate sphn:hasMethodCode ],
+        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasEndDateTime ] ;
+    rr:subjectMap [ rr:class sphn:HeartRateMeasurement ;
+            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRateMeasurement-{id}" ] .
 
 :sphnHeartRateMeasurement_sphnhasBodySite_rangesphnBodySite a rr:TriplesMap ;
     rml:logicalSource [ rml:iterator "$.content.sphn:HeartRateMeasurement[*].sphn:hasBodySite" ;
@@ -6221,14 +5989,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:HeartRateMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+            rr:predicate sphn:hasProductCode ] ;
     rr:subjectMap [ rr:class sphn:Implant ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}" ] .
 
@@ -6236,12 +6004,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:HeartRateMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ] ;
@@ -6261,7 +6029,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:HeartRateMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasDescription ],
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasUniformResourceLocator ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
@@ -6269,10 +6040,7 @@
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ] ;
+            rr:predicate sphn:hasVersion ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -6289,16 +6057,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:HeartRateMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ] ;
     rr:subjectMap [ rr:class sphn:MedicalDevice ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}" ] .
 
@@ -6306,12 +6074,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:HeartRateMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ] ;
@@ -6331,18 +6099,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:HeartRateMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasUniformResourceLocator ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasDescription ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -6353,12 +6121,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -6402,12 +6170,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:HeartRateMeasurement[*].sphn:hasResult[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRate-{id}-sphn-Code-{sphn:hasRegularityCode.termid}" ] ;
-            rr:predicate sphn:hasRegularityCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasDataFile.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasDataFile.id}" ] ;
             rr:predicate sphn:hasDataFile ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRate-{id}-sphn-Code-{sphn:hasRegularityCode.termid}" ] ;
+            rr:predicate sphn:hasRegularityCode ],
         [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDateTime ] ;
@@ -6418,11 +6186,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:HeartRateMeasurement[*].sphn:hasResult[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ] ;
@@ -6478,20 +6246,20 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:HomeAddress[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SwissSocioEconomicPosition-{sphn:hasSwissSocioEconomicPosition[*].id}" ] ;
-            rr:predicate sphn:hasSwissSocioEconomicPosition ],
-        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Country-{sphn:hasCountry.id}" ] ;
+            rr:predicate sphn:hasCountry ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Country-{sphn:hasCountry.id}" ] ;
-            rr:predicate sphn:hasCountry ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SwissSocioEconomicPosition-{sphn:hasSwissSocioEconomicPosition[*].id}" ] ;
+            rr:predicate sphn:hasSwissSocioEconomicPosition ] ;
     rr:subjectMap [ rr:class sphn:HomeAddress ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HomeAddress-{id}" ] .
 
@@ -6565,24 +6333,24 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:ImagingProcedure[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasEndDateTime ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ImagingProcedure-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Intent-{sphn:hasIntent.id}" ] ;
             rr:predicate sphn:hasIntent ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite[*].id}" ] ;
-            rr:predicate sphn:hasBodySite ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ImagingProcedure-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
-            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ] ;
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite[*].id}" ] ;
+            rr:predicate sphn:hasBodySite ],
+        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasEndDateTime ] ;
     rr:subjectMap [ rr:class sphn:ImagingProcedure ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ImagingProcedure-{id}" ] .
 
@@ -6655,7 +6423,13 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:ImplantPresence[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasEndDateTime ],
+        [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasRecordDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
@@ -6664,14 +6438,8 @@
         [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasRecordDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
             rr:predicate sphn:hasBodySite ],
-        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasEndDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice.id}" ] ;
             rr:predicate sphn:hasMedicalDevice ] ;
     rr:subjectMap [ rr:class sphn:ImplantPresence ;
@@ -6681,10 +6449,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:ImplantPresence[*].sphn:hasBodySite" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasLaterality.id}" ] ;
-            rr:predicate sphn:hasLaterality ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasLaterality.id}" ] ;
+            rr:predicate sphn:hasLaterality ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:BodySite ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}" ] .
 
@@ -6734,15 +6502,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:ImplantPresence[*].sphn:hasMedicalDevice.sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -6759,18 +6527,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:ImplantPresence[*].sphn:hasMedicalDevice.sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasUniformResourceLocator ],
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasDescription ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -6787,21 +6555,21 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:InsuranceStatus[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
+        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCoverageType.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasCoverageType ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ] ;
     rr:subjectMap [ rr:class sphn:InsuranceStatus ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-InsuranceStatus-{id}" ] .
 
@@ -6809,733 +6577,733 @@
     rml:logicalSource [ rml:iterator "$.supporting_concepts.sphn:Interpretation[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Performer')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicTransposition-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTransposition')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessment-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessment')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacIndex-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CardiacIndex')].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceLabTest-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyBiomoleculePresenceLabTest')].id}" ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasOutput[*].valueset_iri" ;
+                    rr:termType rr:IRI ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodySite')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceInterpretation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceInterpretation')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenAdministrationEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenAdministrationEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyHeight-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyHeight')].id}" ] ;
             rr:predicate sphn:hasInput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyWeightMeasurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyWeightMeasurement')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyTemperature-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyTemperature')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SourceSystem')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicInsertion-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInsertion')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ImagingProcedure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ImagingProcedure')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabResult')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DrugArticle')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodySite')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Country-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Country')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SubjectPseudoIdentifier-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SubjectPseudoIdentifier')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Result-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Result')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Protein')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Discharge-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Discharge')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rml:reference "sphn:hasOutput[*].valueset_iri" ;
-                    rr:termType rr:IRI ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicTranslocation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTranslocation')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingInstrument-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingInstrument')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-StandardOperatingProcedure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#StandardOperatingProcedure')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Admission-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Admission')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabTest-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabTest')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceSequence')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#QualityControlMetric')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAnalysis-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingAnalysis')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledDiagnosis-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BilledDiagnosis')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SubjectPseudoIdentifier-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SubjectPseudoIdentifier')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Admission-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Admission')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevicePresence-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevicePresence')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicInversion-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInversion')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityLabTest-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AntimicrobialSusceptibilityLabTest')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantDescriptor-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#VariantDescriptor')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAnalysis-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingAnalysis')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySurfaceArea-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodySurfaceArea')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Interpretation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Interpretation')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugPrescription-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DrugPrescription')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledProcedure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BilledProcedure')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ElectrocardiographicProcedure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ElectrocardiographicProcedure')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SemanticMapping-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SemanticMapping')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-InsuranceStatus-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#InsuranceStatus')].id}" ] ;
             rr:predicate sphn:hasInput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AdministrativeCase')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PhysiologicState-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#PhysiologicState')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FluidBalance-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FluidBalance')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Organism')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceRange-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TherapeuticArea-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TherapeuticArea')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugAdministrationEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DrugAdministrationEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Drug-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Drug')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assay-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Assay')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DeathDate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DeathDate')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeSex-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AdministrativeSex')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologySurgery-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OncologySurgery')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Organism')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityLabTestEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AntimicrobialSusceptibilityLabTestEvent')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CopyNumberVariation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CopyNumberVariation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PhysiologicState-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#PhysiologicState')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SemanticMapping-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SemanticMapping')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProcessing-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataProcessing')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Exposure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Exposure')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transplant-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Transplant')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyLabTest-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyMicroscopyLabTest')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Software')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledDiagnosis-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BilledDiagnosis')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityLabTestEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AntimicrobialSusceptibilityLabTestEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AntimicrobialSusceptibilityResult')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenAdministrationEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenAdministrationEvent')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SingleNucleotideVariation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SingleNucleotideVariation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Interpretation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Interpretation')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalProcedure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalProcedure')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentEvent')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Death-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Death')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenAdministrationEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenAdministrationEvent')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicInversion-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInversion')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Result-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Result')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Intent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Intent')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AntimicrobialSusceptibilityResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Diagnosis-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Diagnosis')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingInstrument-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingInstrument')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AllergyEpisode-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AllergyEpisode')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LibraryPreparation')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationLabTest-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicroorganismIdentificationLabTest')].id}" ] ;
             rr:predicate sphn:hasInput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ImplantPresence-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ImplantPresence')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Country-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Country')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ProblemCondition-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ProblemCondition')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CivilStatus-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CivilStatus')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SwissSocioEconomicPosition-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SwissSocioEconomicPosition')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataRelease-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataRelease')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HeartRate')].id}" ] ;
             rr:predicate sphn:hasInput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabAnalyzer')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#PharmaceuticalDoseForm')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevicePresence-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevicePresence')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDelins-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDelins')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ResuscitationDirective-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ResuscitationDirective')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantNotation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#VariantNotation')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BirthDate-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BirthDate')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SwissSocioEconomicPosition-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SwissSocioEconomicPosition')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacOutput-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CardiacOutput')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdverseEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AdverseEvent')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FluidBalance-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FluidBalance')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceInterpretationResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceInterpretationResult')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SingleNucleotideVariation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SingleNucleotideVariation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Transcript')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProcessing-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataProcessing')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BirthDate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BirthDate')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CareHandling-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CareHandling')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VitalStatus-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#VitalStatus')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Consent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Consent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Software')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Measurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Measurement')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimePattern-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimePattern')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HealthcarePrimaryInformationSystem-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HealthcarePrimaryInformationSystem')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Measurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Measurement')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyMicroscopyResult')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AdministrativeCase')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingRun-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingRun')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceValue-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceValue')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyWeightMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyWeightMeasurement')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Software')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyHeight-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyHeight')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyMassIndex-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyMassIndex')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicroorganismIdentificationResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyLabTest-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyMicroscopyLabTest')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentEvent')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProvider-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataProvider')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TherapeuticArea-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TherapeuticArea')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicVariation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicVariation')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergen-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Allergen')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingRun-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingRun')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProvider-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataProvider')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Circumference-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Circumference')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDelins-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDelins')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GestationalAgeAtBirth-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GestationalAgeAtBirth')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyHeight-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyHeight')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Birth-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Birth')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NutritionIntake-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#NutritionIntake')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceLabTestEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyBiomoleculePresenceLabTestEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyMassIndex-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyMassIndex')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyPosition-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyPosition')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeSex-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AdministrativeSex')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacOutputMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CardiacOutputMeasurement')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceInterpretation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceInterpretation')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyMicroscopyResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentEvent')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Result-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Result')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FractionOfInspiredOxygen-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FractionOfInspiredOxygen')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimeSeriesDataFile')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FluidInputOutput-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FluidInputOutput')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationLabTest-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicroorganismIdentificationLabTest')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentEvent')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdverseEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AdverseEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-StandardOperatingProcedure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#StandardOperatingProcedure')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CopyNumberVariation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CopyNumberVariation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Chromosome-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Chromosome')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAssay-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingAssay')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SwissSocioEconomicPosition-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SwissSocioEconomicPosition')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Gene')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyLabTestEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyMicroscopyLabTestEvent')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataFile')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SemanticMapping-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SemanticMapping')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Biobanksample-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Biobanksample')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalProcedure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalProcedure')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabResult')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transplant-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Transplant')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Hash-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Hash')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicroorganismIdentificationResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Result-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Result')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DrugArticle')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantDescriptor-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#VariantDescriptor')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProcessing-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataProcessing')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationLabTestEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicroorganismIdentificationLabTestEvent')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabResult')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assessment-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Assessment')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BirthDate-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BirthDate')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRateMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HeartRateMeasurement')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataDetermination-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataDetermination')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevicePresence-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevicePresence')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rml:reference "sphn:hasInput[*].valueset_iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CircumferenceMeasurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CircumferenceMeasurement')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Range')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ProblemCondition-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ProblemCondition')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorSpecimen-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorSpecimen')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdverseEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AdverseEvent')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceInterpretation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceInterpretation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Death-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Death')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Measurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Measurement')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRateMeasurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#RespiratoryRateMeasurement')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Nationality-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Nationality')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyMicroscopyResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FluidInputOutput-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FluidInputOutput')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicInsertion-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInsertion')].id}" ] ;
             rr:predicate sphn:hasOutput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceLabTest-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyBiomoleculePresenceLabTest')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Birth-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Birth')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProcessing-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataProcessing')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyHeight-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyHeight')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityLabTest-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AntimicrobialSusceptibilityLabTest')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Discharge-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Discharge')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologyDiagnosis-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OncologyDiagnosis')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CircumferenceMeasurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CircumferenceMeasurement')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Protein')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Transcript')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDuplication-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDuplication')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessment-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessment')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenePanel-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenePanel')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Chromosome-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Chromosome')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRateMeasurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HeartRateMeasurement')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NursingDiagnosis-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#NursingDiagnosis')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimePattern-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimePattern')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VitalStatus-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#VitalStatus')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyLabTestEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyMicroscopyLabTestEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Age-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Age')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledDiagnosis-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BilledDiagnosis')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAnalysis-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingAnalysis')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenePanel-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenePanel')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ProblemCondition-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ProblemCondition')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressureMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BloodPressureMeasurement')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceData-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SourceData')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Organism')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Protein')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FluidInputOutput-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FluidInputOutput')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacOutput-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CardiacOutput')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeSex-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AdministrativeSex')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataDetermination-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataDetermination')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TransplantPresence-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TransplantPresence')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CareHandling-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CareHandling')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityLabTestEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AntimicrobialSusceptibilityLabTestEvent')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TobaccoExposure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TobaccoExposure')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevicePresence-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevicePresence')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GeneFusion-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRateMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#RespiratoryRateMeasurement')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Death-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Death')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Electrocardiogram-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Electrocardiogram')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyTemperature-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyTemperature')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantNotation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#VariantNotation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HealthcareEncounter-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HealthcareEncounter')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyHeightMeasurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyHeightMeasurement')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalProcedure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalProcedure')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Biobanksample-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Biobanksample')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FollowUp-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FollowUp')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ImagingProcedure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ImagingProcedure')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assay-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Assay')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyLabTest-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyMicroscopyLabTest')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PhysiologicState-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#PhysiologicState')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugAdministrationEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DrugAdministrationEvent')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingInstrument-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingInstrument')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CareHandling-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CareHandling')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Circumference-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Circumference')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceInterpretationResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceInterpretationResult')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CivilStatus-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CivilStatus')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataRelease-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataRelease')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rml:reference "sphn:hasStandardGuideline" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStandardGuideline ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyTemperatureMeasurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyTemperatureMeasurement')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TransplantPresence-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TransplantPresence')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyTemperatureMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyTemperatureMeasurement')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ExcludedDisorder-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ExcludedDisorder')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Admission-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Admission')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sphn:hasInput[*].sourceConceptType}-{sphn:hasInput[*].sourceConceptID}-sphn-Code-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Code')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabTest-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabTest')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sphn:hasInput[*].sourceConceptType}-{sphn:hasInput[*].sourceConceptID}-sphn-Code-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Terminology')].termid}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturationMeasurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenSaturationMeasurement')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-InsuranceStatus-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#InsuranceStatus')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ResuscitationDirective-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ResuscitationDirective')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyHeightMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyHeightMeasurement')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyWeight-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyWeight')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Quantity')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#PharmaceuticalDoseForm')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRateMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HeartRateMeasurement')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationLabTestEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicroorganismIdentificationLabTestEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#NucleotideSequence')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DrugArticle')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingInstrument-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingInstrument')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Intent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Intent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GeneFusion-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SampleProcessing-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SampleProcessing')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingRun-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingRun')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceData-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SourceData')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NutritionIntake-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#NutritionIntake')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Transcript')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HealthcarePrimaryInformationSystem-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HealthcarePrimaryInformationSystem')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Laterality')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRateMeasurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#RespiratoryRateMeasurement')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyLabTestEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyMicroscopyLabTestEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GestationalAgeAtBirth-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GestationalAgeAtBirth')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicInsertion-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInsertion')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Range')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RadiotherapyProcedure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#RadiotherapyProcedure')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergen-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Allergen')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRate-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HeartRate')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessment-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessment')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDeletion-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDeletion')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugPrescription-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DrugPrescription')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Discharge-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Discharge')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BloodPressure')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Hash-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Hash')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ImagingProcedure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ImagingProcedure')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NursingDiagnosis-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#NursingDiagnosis')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GeneFusion-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySurfaceArea-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodySurfaceArea')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAssay-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingAssay')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergy-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Allergy')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantDescriptor-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#VariantDescriptor')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Interpretation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Interpretation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentEvent')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentComponent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SingleNucleotideVariation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SingleNucleotideVariation')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ProblemCondition-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ProblemCondition')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CivilStatus-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CivilStatus')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologySurgery-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OncologySurgery')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabAnalyzer')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentComponent')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProvider-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataProvider')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentEvent')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyBiomoleculePresenceResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Substance')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProvider-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataProvider')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ImplantPresence-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ImplantPresence')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugPrescription-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DrugPrescription')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Laterality')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CircumferenceMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CircumferenceMeasurement')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicVariation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicVariation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Range')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceInterpretationResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceInterpretationResult')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacIndex-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CardiacIndex')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ExcludedDisorder-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ExcludedDisorder')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GestationalAgeAtBirth-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GestationalAgeAtBirth')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TherapeuticArea-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TherapeuticArea')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Chromosome-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Chromosome')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OrganSupport-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OrganSupport')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorSpecimen-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorSpecimen')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SourceSystem')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicInversion-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInversion')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyWeight-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyWeight')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Substance')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Age-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Age')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FractionOfInspiredOxygen-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FractionOfInspiredOxygen')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TherapeuticArea-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TherapeuticArea')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceSequence')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Circumference-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Circumference')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Diagnosis-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Diagnosis')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenePanel-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenePanel')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergy-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Allergy')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodySite')].id}" ] ;
-            rr:predicate sphn:hasInput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergy-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Allergy')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentComponent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Substance')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Drug-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Drug')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyMassIndex-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyMassIndex')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Gene')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SubjectPseudoIdentifier-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SubjectPseudoIdentifier')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assessment-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Assessment')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ExcludedDisorder-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ExcludedDisorder')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RadiotherapyProcedure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#RadiotherapyProcedure')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Birth-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Birth')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BloodPressure')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityLabTest-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AntimicrobialSusceptibilityLabTest')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledProcedure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BilledProcedure')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Department-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Department')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataRelease-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataRelease')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ResuscitationDirective-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ResuscitationDirective')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Quantity')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ImagingProcedure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ImagingProcedure')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyLabTest-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyMicroscopyLabTest')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabTestEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabTestEvent')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationLabTestEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicroorganismIdentificationLabTestEvent')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#QualityControlMetric')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Organism')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ExcludedDisorder-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ExcludedDisorder')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Drug-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Drug')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyPosition-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyPosition')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicTranslocation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTranslocation')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transplant-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Transplant')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SourceSystem')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugPrescription-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DrugPrescription')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceRange-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRateMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#RespiratoryRateMeasurement')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyBiomoleculePresenceResult')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenAdministrationEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenAdministrationEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AllergyEpisode-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AllergyEpisode')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceData-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SourceData')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacOutput-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CardiacOutput')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Exposure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Exposure')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyWeight-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyWeight')].id}" ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasInput[*].valueset_iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicTransposition-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTransposition')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugAdministrationEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DrugAdministrationEvent')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimePattern-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimePattern')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TobaccoExposure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TobaccoExposure')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDuplication-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDuplication')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicInversion-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInversion')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Age-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Age')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#PharmaceuticalDoseForm')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NutritionIntake-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#NutritionIntake')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LibraryPreparation')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Diagnosis-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Diagnosis')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorSpecimen-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorSpecimen')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FractionOfInspiredOxygen-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FractionOfInspiredOxygen')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TobaccoExposure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TobaccoExposure')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HealthcareEncounter-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HealthcareEncounter')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CivilStatus-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CivilStatus')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Unit')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HeartRate')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VitalStatus-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#VitalStatus')].id}" ] ;
             rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rml:reference "sphn:hasStandardGuideline" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasStandardGuideline ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Circumference-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Circumference')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressureMeasurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BloodPressureMeasurement')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HealthcarePrimaryInformationSystem-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HealthcarePrimaryInformationSystem')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AntimicrobialSusceptibilityResult')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyHeightMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyHeightMeasurement')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LibraryPreparation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataDetermination-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataDetermination')].id}" ] ;
             rr:predicate sphn:hasInput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-StandardOperatingProcedure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#StandardOperatingProcedure')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AllergyEpisode-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AllergyEpisode')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySurfaceArea-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodySurfaceArea')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HealthcarePrimaryInformationSystem-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HealthcarePrimaryInformationSystem')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyWeightMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyWeightMeasurement')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Unit')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceValue-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceValue')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ImplantPresence-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ImplantPresence')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HomeAddress-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HomeAddress')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressureMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BloodPressureMeasurement')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenSaturation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataDetermination-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataDetermination')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ElectrocardiographicProcedure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ElectrocardiographicProcedure')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BirthDate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BirthDate')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyTemperature-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyTemperature')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SampleProcessing-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SampleProcessing')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assessment-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Assessment')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OrganSupport-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OrganSupport')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Location')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceSequence')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacOutput-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CardiacOutput')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HomeAddress-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HomeAddress')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Age-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Age')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Consent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Consent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sphn:hasInput[*].sourceConceptType}-{sphn:hasInput[*].sourceConceptID}-sphn-Code-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Terminology')].termid}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicTransposition-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTransposition')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyPosition-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyPosition')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CopyNumberVariation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CopyNumberVariation')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicVariation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicVariation')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceValue-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceValue')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DeathDate-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DeathDate')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Consent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Consent')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sphn:hasInput[*].sourceConceptType}-{sphn:hasInput[*].sourceConceptID}-sphn-Code-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Code')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Quantity')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Measurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Measurement')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Country-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Country')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdverseEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AdverseEvent')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Software')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Transcript')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacOutputMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CardiacOutputMeasurement')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VitalStatus-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#VitalStatus')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantNotation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#VariantNotation')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimeSeriesDataFile')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologySurgery-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OncologySurgery')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HomeAddress-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HomeAddress')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDelins-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDelins')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentEvent')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-InsuranceStatus-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#InsuranceStatus')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyWeight-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyWeight')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyBiomoleculePresenceResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#NucleotideSequence')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Intent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Intent')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacOutputMeasurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CardiacOutputMeasurement')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimeSeriesDataFile')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataFile')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SubjectPseudoIdentifier-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SubjectPseudoIdentifier')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacIndex-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CardiacIndex')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SampleProcessing-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SampleProcessing')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceRange-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Hash-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Hash')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HealthcareEncounter-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HealthcareEncounter')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ElectrocardiographicProcedure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ElectrocardiographicProcedure')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sphn:hasOutput[*].sourceConceptType}-{sphn:hasOutput[*].sourceConceptID}-sphn-Code-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Terminology')].termid}" ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyLabTestEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyMicroscopyLabTestEvent')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NursingDiagnosis-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#NursingDiagnosis')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sphn:hasOutput[*].sourceConceptType}-{sphn:hasOutput[*].sourceConceptID}-sphn-Code-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Code')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GestationalAgeAtBirth-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GestationalAgeAtBirth')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Protein')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Quantity')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessment-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessment')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacOutputMeasurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CardiacOutputMeasurement')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ResuscitationDirective-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ResuscitationDirective')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRate-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HeartRate')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceLabTestEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyBiomoleculePresenceLabTestEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Laterality')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologyDiagnosis-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OncologyDiagnosis')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OrganSupport-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OrganSupport')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Biobanksample-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Biobanksample')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodySite')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacIndex-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CardiacIndex')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessment-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessment')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Diagnosis-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Diagnosis')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDeletion-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDeletion')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabTestEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabTestEvent')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Department-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Department')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BloodPressure')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Interpretation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Interpretation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FluidBalance-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FluidBalance')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceLabTestEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyBiomoleculePresenceLabTestEvent')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#QualityControlMetric')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PharmaceuticalDoseForm-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#PharmaceuticalDoseForm')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DeathDate-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DeathDate')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Performer')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Range')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyHeightMeasurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyHeightMeasurement')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HomeAddress-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HomeAddress')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyPosition-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyPosition')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAssay-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingAssay')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SingleNucleotideVariation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SingleNucleotideVariation')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabTestEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabTestEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceData-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SourceData')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TransplantPresence-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TransplantPresence')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimePattern-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimePattern')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantDescriptor-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#VariantDescriptor')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationLabTestEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicroorganismIdentificationLabTestEvent')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyTemperatureMeasurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyTemperatureMeasurement')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenSaturation')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationLabTest-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicroorganismIdentificationLabTest')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentComponent')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDeletion-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDeletion')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NursingDiagnosis-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#NursingDiagnosis')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDelins-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDelins')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturationMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenSaturationMeasurement')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CircumferenceMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CircumferenceMeasurement')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDeletion-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDeletion')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceRange-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CareHandling-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CareHandling')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessment-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessment')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugAdministrationEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DrugAdministrationEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#NucleotideSequence')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Nationality-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Nationality')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FractionOfInspiredOxygen-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FractionOfInspiredOxygen')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRate-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#RespiratoryRate')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Location')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assessment-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Assessment')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDuplication-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDuplication')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SampleProcessing-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SampleProcessing')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FollowUp-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FollowUp')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Performer')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LibraryPreparation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenSaturation')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TransplantPresence-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TransplantPresence')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SourceSystem')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityLabTestEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AntimicrobialSusceptibilityLabTestEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FluidBalance-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FluidBalance')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceValue-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceValue')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FluidInputOutput-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FluidInputOutput')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FollowUp-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FollowUp')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledProcedure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BilledProcedure')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#RespiratoryRate')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Performer')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabTestEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabTestEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#QualityControlMetric')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Electrocardiogram-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Electrocardiogram')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Exposure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Exposure')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BloodPressure')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledProcedure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BilledProcedure')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessment-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessment')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transplant-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Transplant')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Biobanksample-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Biobanksample')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeSex-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AdministrativeSex')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HealthcareEncounter-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HealthcareEncounter')].id}" ] ;
             rr:predicate sphn:hasOutput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Allergen-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Allergen')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Hash-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Hash')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Gene')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicTransposition-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTransposition')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Location')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Department-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Department')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDuplication-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDuplication')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceLabTestEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyBiomoleculePresenceLabTestEvent')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologySurgery-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OncologySurgery')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicInsertion-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInsertion')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sphn:hasOutput[*].sourceConceptType}-{sphn:hasOutput[*].sourceConceptID}-sphn-Code-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Terminology')].termid}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GeneFusion-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Consent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Consent')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceInterpretationResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceInterpretationResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataFile')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Discharge-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Discharge')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Exposure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Exposure')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ImplantPresence-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ImplantPresence')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicVariation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicVariation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Electrocardiogram-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Electrocardiogram')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturationMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenSaturationMeasurement')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DeathDate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DeathDate')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessment-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessment')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Laterality')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyMassIndex-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyMassIndex')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-InsuranceStatus-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#InsuranceStatus')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenePanel-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenePanel')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Chromosome-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Chromosome')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceLabTest-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyBiomoleculePresenceLabTest')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Electrocardiogram-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Electrocardiogram')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicTranslocation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTranslocation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyTemperature-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyTemperature')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAnalysis-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingAnalysis')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Birth-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Birth')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DrugArticle-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DrugArticle')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentEvent-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentEvent')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Unit')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationLabTest-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicroorganismIdentificationLabTest')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-PhysiologicState-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#PhysiologicState')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SwissSocioEconomicPosition-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SwissSocioEconomicPosition')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#RespiratoryRate')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabTest-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabTest')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BilledDiagnosis-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BilledDiagnosis')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FollowUp-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FollowUp')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Nationality-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Nationality')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TobaccoExposure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TobaccoExposure')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assay-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Assay')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Intent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Intent')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceSequence')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ElectrocardiographicProcedure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ElectrocardiographicProcedure')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturationMeasurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenSaturationMeasurement')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRateMeasurement-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HeartRateMeasurement')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RadiotherapyProcedure-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#RadiotherapyProcedure')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Department-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Department')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Location-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Location')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SemanticMapping-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SemanticMapping')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Country-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Country')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Admission-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Admission')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#NucleotideSequence')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicroorganismIdentificationResult')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AntimicrobialSusceptibilityResult')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentEvent-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentEvent')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceInterpretation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceInterpretation')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenSaturation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicTranslocation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTranslocation')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Drug-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Drug')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySurfaceArea-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodySurfaceArea')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Nationality-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Nationality')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AllergyEpisode-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AllergyEpisode')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologyDiagnosis-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OncologyDiagnosis')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAssay-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingAssay')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AdministrativeCase')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicroorganismIdentificationResult')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRate-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#RespiratoryRate')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabTest-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabTest')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantNotation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#VariantNotation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyMicroscopyResult')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NutritionIntake-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#NutritionIntake')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Unit')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityLabTest-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AntimicrobialSusceptibilityLabTest')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Substance')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalProcedure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalProcedure')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologyDiagnosis-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OncologyDiagnosis')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabAnalyzer')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingRun-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingRun')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyTemperatureMeasurement-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyTemperatureMeasurement')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataFile')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataRelease-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataRelease')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CopyNumberVariation-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CopyNumberVariation')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimeSeriesDataFile')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Gene')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sphn:hasOutput[*].sourceConceptType}-{sphn:hasOutput[*].sourceConceptID}-sphn-Code-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Code')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorSpecimen-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorSpecimen')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RadiotherapyProcedure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#RadiotherapyProcedure')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OrganSupport-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OrganSupport')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Death-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Death')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceResult-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyBiomoleculePresenceResult')].id}" ] ;
             rr:predicate sphn:hasOutput ] ;
     rr:subjectMap [ rr:class sphn:Interpretation ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Interpretation-{id}" ] .
@@ -7544,12 +7312,12 @@
     rml:logicalSource [ rml:iterator "$.supporting_concepts.sphn:Interpretation[*].sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Code')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ] ;
@@ -7569,12 +7337,12 @@
     rml:logicalSource [ rml:iterator "$.supporting_concepts.sphn:Interpretation[*].sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Code')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ] ;
@@ -7594,41 +7362,41 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Isolate[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
+            rr:predicate sphn:hasOrganism ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
-            rr:predicate sphn:hasOrganism ],
-        [ rr:objectMap [ rml:reference "sphn:hasPrimaryContainer.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasPrimaryContainer ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
-            rr:predicate sphn:hasBodySite ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
             rr:predicate sphn:hasMedicalDevice ],
         [ rr:objectMap [ rml:reference "sphn:hasFixationType.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasFixationType ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabAnalyzer')].id}" ] ;
             rr:predicate sphn:hasMedicalDevice ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
+            rr:predicate sphn:hasBodySite ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{id}-sphn-Code-{sphn:hasMaterialTypeCode[*].termid}" ] ;
+            rr:predicate sphn:hasMaterialTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rml:reference "sphn:hasPrimaryContainer.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasPrimaryContainer ],
         [ rr:objectMap [ rml:reference "sphn:hasCollectionDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasCollectionDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')].id}" ] ;
             rr:predicate sphn:hasMedicalDevice ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{id}-sphn-Code-{sphn:hasMaterialTypeCode[*].termid}" ] ;
-            rr:predicate sphn:hasMaterialTypeCode ],
         [ rr:objectMap [ rml:reference "sphn:hasSharedIdentifier" ;
                     rr:datatype xsd:anyURI ] ;
-            rr:predicate sphn:hasSharedIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabAnalyzer')].id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ] ;
+            rr:predicate sphn:hasSharedIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Isolate ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{id}" ] .
 
@@ -7636,10 +7404,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Isolate[*].sphn:hasBodySite" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasLaterality.id}" ] ;
-            rr:predicate sphn:hasLaterality ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasLaterality.id}" ] ;
+            rr:predicate sphn:hasLaterality ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:BodySite ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}" ] .
 
@@ -7687,10 +7455,10 @@
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
-            rr:predicate sphn:hasProductCode ] ;
+            rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:AccessDevice ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}" ] .
 
@@ -7698,15 +7466,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Isolate[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')].sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -7726,15 +7494,15 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasUniformResourceLocator ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasVersion ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -7769,12 +7537,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -7819,16 +7587,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Isolate[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabAnalyzer')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
-            rr:predicate sphn:hasTypeCode ] ;
+            rr:predicate sphn:hasProductCode ] ;
     rr:subjectMap [ rr:class sphn:LabAnalyzer ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}" ] .
 
@@ -7861,18 +7629,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Isolate[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabAnalyzer')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasDescription ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ] ;
+            rr:predicate sphn:hasUniformResourceLocator ],
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasVersion ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -7880,15 +7648,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Isolate[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabAnalyzer')].sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -7909,12 +7677,12 @@
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
-            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ] ;
+            rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
+            rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:MedicalDevice ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}" ] .
 
@@ -7922,12 +7690,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Isolate[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ] ;
@@ -7947,18 +7715,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Isolate[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasUniformResourceLocator ],
         [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ] ;
+            rr:predicate sphn:hasDescription ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -7966,15 +7734,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Isolate[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -7991,9 +7759,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Isolate[*].sphn:hasOrganism" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Organism ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}" ] .
@@ -8027,26 +7795,26 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LabTestEvent[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasReportDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasReportDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorSpecimen-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorSpecimen')].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
             rr:predicate sphn:hasSample ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDateTime ],
+        [ rr:objectMap [ rml:reference "sphn:hasReportDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasReportDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
+            rr:predicate sphn:hasSample ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorSpecimen-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorSpecimen')].id}" ] ;
+            rr:predicate sphn:hasSample ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabTest-{sphn:hasLabTest[*].id}" ] ;
             rr:predicate sphn:hasLabTest ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
-            rr:predicate sphn:hasSample ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
-            rr:predicate sphn:hasSample ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:LabTestEvent ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabTestEvent-{id}" ] .
 
@@ -8054,14 +7822,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LabTestEvent[*].sphn:hasLabTest[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabResult-{sphn:hasResult[*].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasTestKit.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasTestKit.id}" ] ;
             rr:predicate sphn:hasTestKit ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasInstrument.id}" ] ;
             rr:predicate sphn:hasInstrument ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabTest-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabResult-{sphn:hasResult[*].id}" ] ;
+            rr:predicate sphn:hasResult ] ;
     rr:subjectMap [ rr:class sphn:LabTest ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabTest-{id}" ] .
 
@@ -8078,16 +7846,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LabTestEvent[*].sphn:hasLabTest[*].sphn:hasInstrument" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
             rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
-            rr:predicate sphn:hasProductCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:LabAnalyzer ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}" ] .
 
@@ -8095,15 +7863,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LabTestEvent[*].sphn:hasLabTest[*].sphn:hasInstrument.sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -8120,18 +7888,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LabTestEvent[*].sphn:hasLabTest[*].sphn:hasInstrument.sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasUniformResourceLocator ],
         [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ] ;
+            rr:predicate sphn:hasDescription ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -8139,15 +7907,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LabTestEvent[*].sphn:hasLabTest[*].sphn:hasInstrument.sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -8164,17 +7932,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceValue-{sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceValue')].id}" ] ;
-            rr:predicate sphn:hasNumericalReference ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabResult-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabResult-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasStringValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceRange-{sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')].id}" ] ;
-            rr:predicate sphn:hasNumericalReference ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceRange-{sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')].id}" ] ;
+            rr:predicate sphn:hasNumericalReference ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceValue-{sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceValue')].id}" ] ;
+            rr:predicate sphn:hasNumericalReference ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:LabResult ;
@@ -8220,11 +7988,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')].sphn:hasLowerLimit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ] ;
@@ -8295,14 +8063,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceValue')].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -8328,11 +8096,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ] ;
@@ -8363,13 +8131,13 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:LabAnalyzer ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}" ] .
@@ -8378,15 +8146,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LabTestEvent[*].sphn:hasLabTest[*].sphn:hasTestKit.sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -8403,18 +8171,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LabTestEvent[*].sphn:hasLabTest[*].sphn:hasTestKit.sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ],
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+            rr:predicate sphn:hasUniformResourceLocator ],
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasVersion ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -8425,12 +8193,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -8447,49 +8215,49 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
-            rr:predicate sphn:hasInput ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-StandardOperatingProcedure-{sphn:hasStandardOperatingProcedure.id}" ] ;
+            rr:predicate sphn:hasStandardOperatingProcedure ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sphn:hasQualityControlMetric[*].id}" ] ;
+            rr:predicate sphn:hasQualityControlMetric ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenePanel-{sphn:hasGenePanel.id}" ] ;
+            rr:predicate sphn:hasGenePanel ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LibraryPreparation')].id}" ] ;
+            rr:predicate sphn:hasPredecessor ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{id}-sphn-Code-{sphn:hasTargetEnrichmentKitCode.termid}" ] ;
             rr:predicate sphn:hasTargetEnrichmentKitCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{id}-sphn-Code-{sphn:hasTargetEnrichmentKitCode.id}" ] ;
-            rr:predicate sphn:hasTargetEnrichmentKitCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase[*].id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LibraryPreparation')].id}" ] ;
-            rr:predicate sphn:hasPredecessor ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{id}-sphn-Code-{sphn:hasKitCode.id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{id}-sphn-Code-{sphn:hasKitCode.termid}" ] ;
             rr:predicate sphn:hasKitCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenePanel-{sphn:hasGenePanel.id}" ] ;
-            rr:predicate sphn:hasGenePanel ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SampleProcessing-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SampleProcessing')].id}" ] ;
             rr:predicate sphn:hasPredecessor ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasIntendedInsertSize.id}" ] ;
+            rr:predicate sphn:hasIntendedInsertSize ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorSpecimen-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorSpecimen')].id}" ] ;
-            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{id}-sphn-Code-{sphn:hasTargetEnrichmentKitCode.id}" ] ;
+            rr:predicate sphn:hasTargetEnrichmentKitCode ],
+        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sphn:hasQualityControlMetric[*].id}" ] ;
-            rr:predicate sphn:hasQualityControlMetric ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasIntendedInsertSize.id}" ] ;
-            rr:predicate sphn:hasIntendedInsertSize ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-StandardOperatingProcedure-{sphn:hasStandardOperatingProcedure.id}" ] ;
-            rr:predicate sphn:hasStandardOperatingProcedure ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{id}-sphn-Code-{sphn:hasKitCode.termid}" ] ;
-            rr:predicate sphn:hasKitCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{id}-sphn-Code-{sphn:hasKitCode.id}" ] ;
+            rr:predicate sphn:hasKitCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorSpecimen-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorSpecimen')].id}" ] ;
+            rr:predicate sphn:hasInput ] ;
     rr:subjectMap [ rr:class sphn:LibraryPreparation ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{id}" ] .
 
@@ -8497,15 +8265,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -8522,10 +8290,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*].sphn:hasGenePanel" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasDataFile[*].id}" ] ;
-            rr:predicate sphn:hasDataFile ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{sphn:hasFocusGene[*].id}" ] ;
-            rr:predicate sphn:hasFocusGene ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{sphn:hasFocusGene[*].id}" ] ;
+            rr:predicate sphn:hasFocusGene ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasDataFile[*].id}" ] ;
+            rr:predicate sphn:hasDataFile ] ;
     rr:subjectMap [ rr:class sphn:GenePanel ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenePanel-{id}" ] .
 
@@ -8533,16 +8301,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*].sphn:hasGenePanel.sphn:hasFocusGene[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{sphn:hasTranscript[*].id}" ] ;
-            rr:predicate sphn:hasTranscript ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasProtein[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasProtein[*].id}" ] ;
             rr:predicate sphn:hasProtein ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{sphn:hasTranscript[*].id}" ] ;
+            rr:predicate sphn:hasTranscript ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
+            rr:predicate sphn:hasOrganism ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
-            rr:predicate sphn:hasOrganism ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Gene ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}" ] .
 
@@ -8575,9 +8343,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*].sphn:hasGenePanel.sphn:hasFocusGene[*].sphn:hasOrganism" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Organism ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}" ] .
@@ -8586,12 +8354,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*].sphn:hasGenePanel.sphn:hasFocusGene[*].sphn:hasOrganism.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ] ;
@@ -8627,12 +8395,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -8685,14 +8453,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*].sphn:hasGenePanel.sphn:hasFocusGene[*].sphn:hasTranscript[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasProtein.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasProtein.id}" ] ;
             rr:predicate sphn:hasProtein ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
+            rr:predicate sphn:hasOrganism ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
-            rr:predicate sphn:hasOrganism ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Transcript ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{id}" ] .
 
@@ -8700,15 +8468,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*].sphn:hasGenePanel.sphn:hasFocusGene[*].sphn:hasTranscript[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -8725,9 +8493,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*].sphn:hasGenePanel.sphn:hasFocusGene[*].sphn:hasTranscript[*].sphn:hasOrganism" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Organism ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}" ] .
@@ -8736,15 +8504,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*].sphn:hasGenePanel.sphn:hasFocusGene[*].sphn:hasTranscript[*].sphn:hasOrganism.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -8761,12 +8529,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*].sphn:hasGenePanel.sphn:hasFocusGene[*].sphn:hasTranscript[*].sphn:hasProtein" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
+            rr:predicate sphn:hasOrganism ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
-            rr:predicate sphn:hasOrganism ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Protein ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}" ] .
 
@@ -8799,9 +8567,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*].sphn:hasGenePanel.sphn:hasFocusGene[*].sphn:hasTranscript[*].sphn:hasProtein.sphn:hasOrganism" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Organism ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}" ] .
@@ -8813,12 +8581,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -8835,12 +8603,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*].sphn:hasIntendedInsertSize" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
@@ -8868,15 +8636,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*].sphn:hasKitCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -8906,12 +8674,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*].sphn:hasQualityControlMetric[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ] ;
@@ -8931,12 +8699,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*].sphn:hasQualityControlMetric[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
@@ -8964,17 +8732,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:LibraryPreparation[*].sphn:hasStandardOperatingProcedure" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasDataFile.id}" ] ;
-            rr:predicate sphn:hasDataFile ] ;
+            rr:predicate sphn:hasDataFile ],
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasDescription ] ;
     rr:subjectMap [ rr:class sphn:StandardOperatingProcedure ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-StandardOperatingProcedure-{id}" ] .
 
@@ -9007,54 +8775,54 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FractionOfInspiredOxygen-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FractionOfInspiredOxygen')].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacOutput-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CardiacOutput')].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressure-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BloodPressure')].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Result-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Result')].id}" ] ;
             rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturation-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenSaturation')].id}" ] ;
             rr:predicate sphn:hasResult ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyWeight-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyWeight')].id}" ] ;
             rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRate-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HeartRate')].id}" ] ;
-            rr:predicate sphn:hasResult ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyTemperature-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyTemperature')].id}" ] ;
             rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
             rr:predicate sphn:hasMedicalDevice ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturation-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenSaturation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
+            rr:predicate sphn:hasPerformer ],
+        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasEndDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FractionOfInspiredOxygen-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FractionOfInspiredOxygen')].id}" ] ;
             rr:predicate sphn:hasResult ],
+        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyHeight-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyHeight')].id}" ] ;
             rr:predicate sphn:hasResult ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Circumference-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Circumference')].id}" ] ;
             rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Measurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
-            rr:predicate sphn:hasMethodCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].id}" ] ;
+            rr:predicate sphn:hasResult ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRate-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#RespiratoryRate')].id}" ] ;
             rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Result-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Result')].id}" ] ;
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRate-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HeartRate')].id}" ] ;
             rr:predicate sphn:hasResult ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].id}" ] ;
             rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
-            rr:predicate sphn:hasPerformer ],
-        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasEndDateTime ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacOutput-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CardiacOutput')].id}" ] ;
+            rr:predicate sphn:hasResult ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressure-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BloodPressure')].id}" ] ;
+            rr:predicate sphn:hasResult ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Measurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
+            rr:predicate sphn:hasMethodCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].id}" ] ;
+            rr:predicate sphn:hasResult ] ;
     rr:subjectMap [ rr:class sphn:Measurement ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Measurement-{id}" ] .
 
@@ -9062,13 +8830,13 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ] ;
     rr:subjectMap [ rr:class sphn:Implant ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}" ] .
@@ -9080,12 +8848,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -9102,18 +8870,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ],
+            rr:predicate sphn:hasDescription ],
         [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+            rr:predicate sphn:hasUniformResourceLocator ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -9130,14 +8898,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
             rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:MedicalDevice ;
@@ -9147,12 +8915,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ] ;
@@ -9172,12 +8940,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasUniformResourceLocator ],
@@ -9191,15 +8959,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -9245,13 +9013,13 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStringValue ] ;
+            rr:predicate sphn:hasStringValue ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:AssessmentResult ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}" ] .
 
@@ -9259,12 +9027,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ] ;
@@ -9284,14 +9052,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -9317,15 +9085,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BloodPressure')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasSystolicPressure.id}" ] ;
-            rr:predicate sphn:hasSystolicPressure ],
-        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasDataFile.id}" ] ;
             rr:predicate sphn:hasDataFile ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasMeanPressure.id}" ] ;
             rr:predicate sphn:hasMeanPressure ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasSystolicPressure.id}" ] ;
+            rr:predicate sphn:hasSystolicPressure ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasDiastolicPressure.id}" ] ;
             rr:predicate sphn:hasDiastolicPressure ] ;
     rr:subjectMap [ rr:class sphn:BloodPressure ;
@@ -9368,14 +9136,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BloodPressure')].sphn:hasMeanPressure" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -9401,11 +9169,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BloodPressure')].sphn:hasSystolicPressure" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ] ;
@@ -9436,11 +9204,11 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataDetermination-{sphn:hasDataDetermination.id}" ] ;
+            rr:predicate sphn:hasDataDetermination ],
         [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataDetermination-{sphn:hasDataDetermination.id}" ] ;
-            rr:predicate sphn:hasDataDetermination ] ;
+            rr:predicate sphn:hasDateTime ] ;
     rr:subjectMap [ rr:class sphn:BodyHeight ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyHeight-{id}" ] .
 
@@ -9466,11 +9234,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyHeight')].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ] ;
@@ -9515,12 +9283,12 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -9580,12 +9348,12 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -9627,12 +9395,12 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -9715,14 +9483,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FractionOfInspiredOxygen')].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -9748,15 +9516,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HeartRate')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasDataFile.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRate-{id}-sphn-Code-{sphn:hasRegularityCode.termid}" ] ;
+            rr:predicate sphn:hasRegularityCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasDataFile.id}" ] ;
             rr:predicate sphn:hasDataFile ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRate-{id}-sphn-Code-{sphn:hasRegularityCode.termid}" ] ;
-            rr:predicate sphn:hasRegularityCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ] ;
     rr:subjectMap [ rr:class sphn:HeartRate ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRate-{id}" ] .
 
@@ -9764,14 +9532,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HeartRate')].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -9806,13 +9574,13 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenSaturation')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasDataFile.id}" ] ;
             rr:predicate sphn:hasDataFile ],
-        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDateTime ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ] ;
     rr:subjectMap [ rr:class sphn:OxygenSaturation ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturation-{id}" ] .
 
@@ -9820,11 +9588,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenSaturation')].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ] ;
@@ -9853,15 +9621,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#RespiratoryRate')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataDetermination-{sphn:hasDataDetermination.id}" ] ;
+            rr:predicate sphn:hasDataDetermination ],
+        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasDataFile.id}" ] ;
-            rr:predicate sphn:hasDataFile ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataDetermination-{sphn:hasDataDetermination.id}" ] ;
-            rr:predicate sphn:hasDataDetermination ] ;
+            rr:predicate sphn:hasDataFile ] ;
     rr:subjectMap [ rr:class sphn:RespiratoryRate ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRate-{id}" ] .
 
@@ -9890,11 +9658,11 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -9927,13 +9695,13 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasStringValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:TumorGradeAssessmentResult ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{id}" ] .
 
@@ -9950,12 +9718,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Measurement[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
@@ -10039,26 +9807,26 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MedicalProcedure[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalProcedure-{id}-sphn-Code-{sphn:hasCode[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalProcedure-{id}-sphn-Code-{sphn:hasCode[*].id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasEndDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite[*].id}" ] ;
             rr:predicate sphn:hasBodySite ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalProcedure-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
+            rr:predicate sphn:hasEndDateTime ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Intent-{sphn:hasIntent.id}" ] ;
             rr:predicate sphn:hasIntent ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalProcedure-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasStartDateTime ] ;
     rr:subjectMap [ rr:class sphn:MedicalProcedure ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalProcedure-{id}" ] .
 
@@ -10066,10 +9834,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MedicalProcedure[*].sphn:hasBodySite[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasLaterality.id}" ] ;
-            rr:predicate sphn:hasLaterality ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasLaterality.id}" ] ;
+            rr:predicate sphn:hasLaterality ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:BodySite ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}" ] .
 
@@ -10104,15 +9872,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MedicalProcedure[*].sphn:hasCode[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalProcedure-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -10149,14 +9917,14 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasSample.id}" ] ;
-            rr:predicate sphn:hasSample ],
         [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDateTime ],
         [ rr:objectMap [ rml:reference "sphn:hasReportDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasReportDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasSample.id}" ] ;
+            rr:predicate sphn:hasSample ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
@@ -10170,18 +9938,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{sphn:hasTargetMolecule[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Gene')].id}" ] ;
-            rr:predicate sphn:hasTargetMolecule ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceLabTest-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasTestKit.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasTestKit.id}" ] ;
             rr:predicate sphn:hasTestKit ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasInstrument.id}" ] ;
-            rr:predicate sphn:hasInstrument ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{sphn:hasTargetMolecule[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Gene')].id}" ] ;
+            rr:predicate sphn:hasTargetMolecule ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceResult-{sphn:hasResult[*].id}" ] ;
             rr:predicate sphn:hasResult ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasInstrument.id}" ] ;
+            rr:predicate sphn:hasInstrument ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasTargetMolecule[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Protein')].id}" ] ;
-            rr:predicate sphn:hasTargetMolecule ] ;
+            rr:predicate sphn:hasTargetMolecule ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceLabTest-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:MicrobiologyBiomoleculePresenceLabTest ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceLabTest-{id}" ] .
 
@@ -10200,13 +9968,13 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:LabAnalyzer ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}" ] .
@@ -10215,12 +9983,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasInstrument.sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ] ;
@@ -10240,18 +10008,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasInstrument.sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasUniformResourceLocator ],
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasDescription ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasVersion ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -10259,12 +10027,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasInstrument.sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ] ;
@@ -10284,13 +10052,13 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
-        [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasStringValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceValue-{sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceValue')].id}" ] ;
             rr:predicate sphn:hasNumericalReference ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceRange-{sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')].id}" ] ;
@@ -10322,14 +10090,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')].sphn:hasLowerLimit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -10357,12 +10125,12 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -10397,14 +10165,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceValue')].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -10430,14 +10198,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -10463,16 +10231,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTargetMolecule[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Gene')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{sphn:hasTranscript[*].id}" ] ;
-            rr:predicate sphn:hasTranscript ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{sphn:hasTranscript[*].id}" ] ;
+            rr:predicate sphn:hasTranscript ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
             rr:predicate sphn:hasOrganism ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasProtein[*].id}" ] ;
-            rr:predicate sphn:hasProtein ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ] ;
+            rr:predicate sphn:hasProtein ] ;
     rr:subjectMap [ rr:class sphn:Gene ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}" ] .
 
@@ -10480,15 +10248,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTargetMolecule[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Gene')].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -10554,15 +10322,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTargetMolecule[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Gene')].sphn:hasProtein[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
+            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -10590,12 +10358,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTargetMolecule[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Gene')].sphn:hasProtein[*].sphn:hasOrganism.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ] ;
@@ -10619,10 +10387,10 @@
             rr:predicate sphn:hasOrganism ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasProtein.id}" ] ;
-            rr:predicate sphn:hasProtein ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasProtein.id}" ] ;
+            rr:predicate sphn:hasProtein ] ;
     rr:subjectMap [ rr:class sphn:Transcript ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{id}" ] .
 
@@ -10630,15 +10398,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTargetMolecule[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Gene')].sphn:hasTranscript[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -10655,9 +10423,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTargetMolecule[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Gene')].sphn:hasTranscript[*].sphn:hasOrganism" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Organism ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}" ] .
@@ -10691,10 +10459,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTargetMolecule[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Gene')].sphn:hasTranscript[*].sphn:hasProtein" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
             rr:predicate sphn:hasOrganism ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Protein ;
@@ -10704,15 +10472,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTargetMolecule[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Gene')].sphn:hasTranscript[*].sphn:hasProtein.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -10729,9 +10497,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTargetMolecule[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Gene')].sphn:hasTranscript[*].sphn:hasProtein.sphn:hasOrganism" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Organism ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}" ] .
@@ -10740,15 +10508,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTargetMolecule[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Gene')].sphn:hasTranscript[*].sphn:hasProtein.sphn:hasOrganism.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -10765,12 +10533,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTargetMolecule[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Protein')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
-            rr:predicate sphn:hasOrganism ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
+            rr:predicate sphn:hasOrganism ] ;
     rr:subjectMap [ rr:class sphn:Protein ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}" ] .
 
@@ -10778,12 +10546,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTargetMolecule[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Protein')].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ] ;
@@ -10814,15 +10582,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTargetMolecule[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Protein')].sphn:hasOrganism.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -10839,16 +10607,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTestKit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
-            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
+            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
-            rr:predicate sphn:hasProductCode ] ;
+            rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:LabAnalyzer ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}" ] .
 
@@ -10856,15 +10624,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTestKit.sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -10881,18 +10649,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTestKit.sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
+            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasUniformResourceLocator ],
         [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -10900,15 +10668,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyBiomoleculePresenceLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTestKit.sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -10925,24 +10693,24 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyMicroscopyLabTestEvent[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyLabTest-{sphn:hasLabTest[*].id}" ] ;
+            rr:predicate sphn:hasLabTest ],
         [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
             rr:predicate sphn:hasSample ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rml:reference "sphn:hasReportDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasReportDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
-            rr:predicate sphn:hasSample ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyLabTest-{sphn:hasLabTest[*].id}" ] ;
-            rr:predicate sphn:hasLabTest ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
+            rr:predicate sphn:hasSample ] ;
     rr:subjectMap [ rr:class sphn:MicrobiologyMicroscopyLabTestEvent ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyLabTestEvent-{id}" ] .
 
@@ -10950,16 +10718,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyMicroscopyLabTestEvent[*].sphn:hasLabTest[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyLabTest-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyResult-{sphn:hasResult[*].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyLabTest-{id}-sphn-Code-{sphn:hasStainingMethodCode.termid}" ] ;
-            rr:predicate sphn:hasStainingMethodCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasTestKit.id}" ] ;
+            rr:predicate sphn:hasTestKit ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasInstrument.id}" ] ;
             rr:predicate sphn:hasInstrument ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasTestKit.id}" ] ;
-            rr:predicate sphn:hasTestKit ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyLabTest-{id}-sphn-Code-{sphn:hasStainingMethodCode.termid}" ] ;
+            rr:predicate sphn:hasStainingMethodCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyLabTest-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyResult-{sphn:hasResult[*].id}" ] ;
+            rr:predicate sphn:hasResult ] ;
     rr:subjectMap [ rr:class sphn:MicrobiologyMicroscopyLabTest ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyLabTest-{id}" ] .
 
@@ -10976,16 +10744,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyMicroscopyLabTestEvent[*].sphn:hasLabTest[*].sphn:hasInstrument" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
-            rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ] ;
+            rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:LabAnalyzer ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}" ] .
 
@@ -10993,15 +10761,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyMicroscopyLabTestEvent[*].sphn:hasLabTest[*].sphn:hasInstrument.sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -11018,18 +10786,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyMicroscopyLabTestEvent[*].sphn:hasLabTest[*].sphn:hasInstrument.sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
+            rr:predicate sphn:hasVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasDescription ],
         [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasUniformResourceLocator ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -11037,15 +10805,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyMicroscopyLabTestEvent[*].sphn:hasLabTest[*].sphn:hasInstrument.sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -11062,25 +10830,25 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyMicroscopyLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyResult-{id}-sphn-Code-{sphn:hasCellCountEstimateCode.termid}" ] ;
-            rr:predicate sphn:hasCellCountEstimateCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyResult-{id}-sphn-Code-{sphn:hasStainingResultCode.termid}" ] ;
-            rr:predicate sphn:hasStainingResultCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceRange-{sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')].id}" ] ;
+            rr:predicate sphn:hasNumericalReference ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceValue-{sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceValue')].id}" ] ;
             rr:predicate sphn:hasNumericalReference ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rml:reference "sphn:hasCellOrganization.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasCellOrganization ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceRange-{sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')].id}" ] ;
-            rr:predicate sphn:hasNumericalReference ],
-        [ rr:objectMap [ rml:reference "sphn:hasCellMorphology.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasCellMorphology ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStringValue ] ;
+            rr:predicate sphn:hasStringValue ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyResult-{id}-sphn-Code-{sphn:hasStainingResultCode.termid}" ] ;
+            rr:predicate sphn:hasStainingResultCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyResult-{id}-sphn-Code-{sphn:hasCellCountEstimateCode.termid}" ] ;
+            rr:predicate sphn:hasCellCountEstimateCode ],
+        [ rr:objectMap [ rml:reference "sphn:hasCellMorphology.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasCellMorphology ] ;
     rr:subjectMap [ rr:class sphn:MicrobiologyMicroscopyResult ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyResult-{id}" ] .
 
@@ -11097,10 +10865,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyMicroscopyLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasUpperLimit.id}" ] ;
-            rr:predicate sphn:hasUpperLimit ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasLowerLimit.id}" ] ;
-            rr:predicate sphn:hasLowerLimit ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasLowerLimit.id}" ] ;
+            rr:predicate sphn:hasLowerLimit ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasUpperLimit.id}" ] ;
+            rr:predicate sphn:hasUpperLimit ] ;
     rr:subjectMap [ rr:class sphn:ReferenceRange ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceRange-{id}" ] .
 
@@ -11141,14 +10909,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyMicroscopyLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')].sphn:hasUpperLimit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -11216,14 +10984,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyMicroscopyLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -11267,16 +11035,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyMicroscopyLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTestKit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
-            rr:predicate sphn:hasTypeCode ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+            rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ] ;
     rr:subjectMap [ rr:class sphn:LabAnalyzer ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}" ] .
 
@@ -11287,12 +11055,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -11312,15 +11080,15 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
+            rr:predicate sphn:hasUniformResourceLocator ],
         [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ] ;
+            rr:predicate sphn:hasVersion ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -11328,15 +11096,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicrobiologyMicroscopyLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTestKit.sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -11353,24 +11121,24 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasReportDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasReportDateTime ],
         [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationLabTest-{sphn:hasLabTest[*].id}" ] ;
             rr:predicate sphn:hasLabTest ],
-        [ rr:objectMap [ rml:reference "sphn:hasReportDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasReportDateTime ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
             rr:predicate sphn:hasSample ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasSample[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
-            rr:predicate sphn:hasSample ] ;
+            rr:predicate sphn:hasSample ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ] ;
     rr:subjectMap [ rr:class sphn:MicroorganismIdentificationLabTestEvent ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationLabTestEvent-{id}" ] .
 
@@ -11378,14 +11146,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasTestKit.id}" ] ;
-            rr:predicate sphn:hasTestKit ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationLabTest-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationLabTest-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasInstrument.id}" ] ;
             rr:predicate sphn:hasInstrument ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationResult-{sphn:hasResult[*].id}" ] ;
-            rr:predicate sphn:hasResult ] ;
+            rr:predicate sphn:hasResult ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasTestKit.id}" ] ;
+            rr:predicate sphn:hasTestKit ] ;
     rr:subjectMap [ rr:class sphn:MicroorganismIdentificationLabTest ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationLabTest-{id}" ] .
 
@@ -11402,16 +11170,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasInstrument" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
             rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ] ;
     rr:subjectMap [ rr:class sphn:LabAnalyzer ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}" ] .
 
@@ -11419,15 +11187,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasInstrument.sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -11444,18 +11212,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasInstrument.sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ] ;
+            rr:predicate sphn:hasDescription ],
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasUniformResourceLocator ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -11463,15 +11231,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasInstrument.sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -11488,30 +11256,32 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationResult-{id}-sphn-Code-{sphn:hasPresenceCode.termid}" ] ;
-            rr:predicate sphn:hasPresenceCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasTimeToPositivity.id}" ] ;
-            rr:predicate sphn:hasTimeToPositivity ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceValue-{sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceValue')].id}" ] ;
-            rr:predicate sphn:hasNumericalReference ],
-        [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasStringValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceRange-{sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')].id}" ] ;
-            rr:predicate sphn:hasNumericalReference ] ;
+            rr:predicate sphn:hasNumericalReference ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
+            rr:predicate sphn:hasOrganism ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceValue-{sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceValue')].id}" ] ;
+            rr:predicate sphn:hasNumericalReference ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationResult-{id}-sphn-Code-{sphn:hasPresenceCode.termid}" ] ;
+            rr:predicate sphn:hasPresenceCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasTimeToPositivity.id}" ] ;
+            rr:predicate sphn:hasTimeToPositivity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ] ;
     rr:subjectMap [ rr:class sphn:MicroorganismIdentificationResult ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationResult-{id}" ] .
 
 :sphnMicroorganismIdentificationLabTestEvent_sphnhasLabTest_rangesphnMicroorganismIdentificationLabTest_sphnhasResult_rangesphnMicroorganismIdentificationResult_sphnhasNumericalReference_rangesphnReferenceRange a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')]" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasUpperLimit.id}" ] ;
-            rr:predicate sphn:hasUpperLimit ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasLowerLimit.id}" ] ;
-            rr:predicate sphn:hasLowerLimit ] ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')]" ;
+            rml:referenceFormulation ql:JSONPath ;
+            rml:source "patient_data_input.json" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasLowerLimit.id}" ] ;
+            rr:predicate sphn:hasLowerLimit ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasUpperLimit.id}" ] ;
+            rr:predicate sphn:hasUpperLimit ] ;
     rr:subjectMap [ rr:class sphn:ReferenceRange ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceRange-{id}" ] .
 
@@ -11552,14 +11322,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceRange')].sphn:hasUpperLimit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -11594,14 +11364,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasNumericalReference[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceValue')].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -11623,6 +11393,42 @@
             rr:predicate rdf:type ] ;
     rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sourceConceptID}-sphn-Code-{termid}" ] .
 
+:sphnMicroorganismIdentificationLabTestEvent_sphnhasLabTest_rangesphnMicroorganismIdentificationLabTest_sphnhasResult_rangesphnMicroorganismIdentificationResult_sphnhasOrganism_rangesphnOrganism a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasOrganism" ;
+            rml:referenceFormulation ql:JSONPath ;
+            rml:source "patient_data_input.json" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ] ;
+    rr:subjectMap [ rr:class sphn:Organism ;
+            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}" ] .
+
+:sphnMicroorganismIdentificationLabTestEvent_sphnhasLabTest_rangesphnMicroorganismIdentificationLabTest_sphnhasResult_rangesphnMicroorganismIdentificationResult_sphnhasOrganism_rangesphnOrganism_sphnhasCode_rangesphnCode a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasOrganism.sphn:hasCode" ;
+            rml:referenceFormulation ql:JSONPath ;
+            rml:source "patient_data_input.json" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
+    rr:subjectMap [ rr:class sphn:Code ;
+            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sourceConceptID}-sphn-Code-{id}" ] .
+
+:sphnMicroorganismIdentificationLabTestEvent_sphnhasLabTest_rangesphnMicroorganismIdentificationLabTest_sphnhasResult_rangesphnMicroorganismIdentificationResult_sphnhasOrganism_rangesphnOrganism_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasOrganism.sphn:hasCode" ;
+            rml:referenceFormulation ql:JSONPath ;
+            rml:source "patient_data_input.json" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate rdf:type ] ;
+    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sourceConceptID}-sphn-Code-{termid}" ] .
+
 :sphnMicroorganismIdentificationLabTestEvent_sphnhasLabTest_rangesphnMicroorganismIdentificationLabTest_sphnhasResult_rangesphnMicroorganismIdentificationResult_sphnhasPresenceCode_rangesphnTerminology a rr:TriplesMap ;
     rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasPresenceCode" ;
             rml:referenceFormulation ql:JSONPath ;
@@ -11638,12 +11444,12 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -11669,12 +11475,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasResult[*].sphn:hasTimeToPositivity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
@@ -11702,16 +11508,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTestKit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
+            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
-            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+            rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ] ;
     rr:subjectMap [ rr:class sphn:LabAnalyzer ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}" ] .
 
@@ -11719,15 +11525,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTestKit.sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -11744,18 +11550,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTestKit.sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
+            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasUniformResourceLocator ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ] ;
+            rr:predicate sphn:hasDescription ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -11763,15 +11569,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:MicroorganismIdentificationLabTestEvent[*].sphn:hasLabTest[*].sphn:hasTestKit.sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -11794,11 +11600,11 @@
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Nationality-{id}-sphn-Code-{sphn:hasAcquistionCode.termid}" ] ;
+            rr:predicate sphn:hasAcquistionCode ],
         [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasRecordDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Nationality-{id}-sphn-Code-{sphn:hasAcquistionCode.termid}" ] ;
-            rr:predicate sphn:hasAcquistionCode ] ;
+            rr:predicate sphn:hasRecordDateTime ] ;
     rr:subjectMap [ rr:class sphn:Nationality ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Nationality-{id}" ] .
 
@@ -11833,19 +11639,19 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:NursingDiagnosis[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasRecordDateTime ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Age-{sphn:hasSubjectAge.id}" ] ;
-            rr:predicate sphn:hasSubjectAge ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NursingDiagnosis-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Age-{sphn:hasSubjectAge.id}" ] ;
+            rr:predicate sphn:hasSubjectAge ] ;
     rr:subjectMap [ rr:class sphn:NursingDiagnosis ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NursingDiagnosis-{id}" ] .
 
@@ -11853,12 +11659,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:NursingDiagnosis[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ] ;
@@ -11869,24 +11675,24 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:NutritionIntake[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasEnergyQuantity.id}" ] ;
-            rr:predicate sphn:hasEnergyQuantity ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasStartDateTime ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NutritionIntake-{id}-sphn-Code-{sphn:hasModeCode.termid}" ] ;
-            rr:predicate sphn:hasModeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasSubstance[*].id}" ] ;
+            rr:predicate sphn:hasSubstance ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasEnergyQuantity.id}" ] ;
+            rr:predicate sphn:hasEnergyQuantity ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sphn:hasSubstance[*].id}" ] ;
-            rr:predicate sphn:hasSubstance ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NutritionIntake-{id}-sphn-Code-{sphn:hasModeCode.termid}" ] ;
+            rr:predicate sphn:hasModeCode ] ;
     rr:subjectMap [ rr:class sphn:NutritionIntake ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NutritionIntake-{id}" ] .
 
@@ -11897,11 +11703,11 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -11936,17 +11742,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:NutritionIntake[*].sphn:hasSubstance[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rml:reference "sphn:hasGenericName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasGenericName ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Substance ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{id}" ] .
 
@@ -11957,12 +11763,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Substance-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -12012,26 +11818,26 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OncologyDiagnosis[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasRecordDateTime ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologyDiagnosis-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Age-{sphn:hasSubjectAge.id}" ] ;
-            rr:predicate sphn:hasSubjectAge ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologyDiagnosis-{id}-sphn-Code-{sphn:hasCode[*].id}" ] ;
-            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasRecordDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
             rr:predicate sphn:hasBodySite ],
         [ rr:objectMap [ rml:reference "sphn:hasIncidenceDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasIncidenceDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologyDiagnosis-{id}-sphn-Code-{sphn:hasCode[*].id}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Age-{sphn:hasSubjectAge.id}" ] ;
+            rr:predicate sphn:hasSubjectAge ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologyDiagnosis-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
+            rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:OncologyDiagnosis ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologyDiagnosis-{id}" ] .
 
@@ -12102,25 +11908,25 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OncologySurgery[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Intent-{sphn:hasIntent.id}" ] ;
-            rr:predicate sphn:hasIntent ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite[*].id}" ] ;
             rr:predicate sphn:hasBodySite ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologySurgery-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologySurgery-{id}-sphn-Code-{sphn:hasCode[*].id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologySurgery-{id}-sphn-Code-{sphn:hasCode[*].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Intent-{sphn:hasIntent.id}" ] ;
+            rr:predicate sphn:hasIntent ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologySurgery-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:OncologySurgery ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologySurgery-{id}" ] .
@@ -12129,10 +11935,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OncologySurgery[*].sphn:hasBodySite[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasLaterality.id}" ] ;
-            rr:predicate sphn:hasLaterality ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasLaterality.id}" ] ;
+            rr:predicate sphn:hasLaterality ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:BodySite ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}" ] .
 
@@ -12170,12 +11976,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OncologySurgery-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -12210,24 +12016,24 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OrganSupport[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OrganSupport-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite[*].id}" ] ;
+            rr:predicate sphn:hasBodySite ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasStartDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Intent-{sphn:hasIntent.id}" ] ;
-            rr:predicate sphn:hasIntent ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite[*].id}" ] ;
-            rr:predicate sphn:hasBodySite ],
+            rr:predicate sphn:hasIntent ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OrganSupport-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:OrganSupport ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OrganSupport-{id}" ] .
 
@@ -12300,24 +12106,24 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OxygenAdministrationEvent[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasFlowRate.id}" ] ;
-            rr:predicate sphn:hasFlowRate ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice.id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FractionOfInspiredOxygen-{sphn:hasFractionOfInspiredOxygen.id}" ] ;
             rr:predicate sphn:hasFractionOfInspiredOxygen ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice.id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
+        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasFlowRate.id}" ] ;
+            rr:predicate sphn:hasFlowRate ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
     rr:subjectMap [ rr:class sphn:OxygenAdministrationEvent ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenAdministrationEvent-{id}" ] .
 
@@ -12328,11 +12134,11 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -12358,11 +12164,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OxygenAdministrationEvent[*].sphn:hasFractionOfInspiredOxygen" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
-        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDateTime ] ;
+            rr:predicate sphn:hasDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ] ;
     rr:subjectMap [ rr:class sphn:FractionOfInspiredOxygen ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FractionOfInspiredOxygen-{id}" ] .
 
@@ -12370,14 +12176,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OxygenAdministrationEvent[*].sphn:hasFractionOfInspiredOxygen.sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -12403,14 +12209,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OxygenAdministrationEvent[*].sphn:hasMedicalDevice" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+            rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ] ;
     rr:subjectMap [ rr:class sphn:MedicalDevice ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}" ] .
 
@@ -12443,12 +12249,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OxygenAdministrationEvent[*].sphn:hasMedicalDevice.sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasDescription ],
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasUniformResourceLocator ],
         [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
@@ -12471,30 +12277,30 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OxygenSaturationMeasurement[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
+            rr:predicate sphn:hasPerformer ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
             rr:predicate sphn:hasMedicalDevice ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturation-{sphn:hasResult[*].id}" ] ;
+            rr:predicate sphn:hasResult ],
         [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
-            rr:predicate sphn:hasBodySite ],
-        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasEndDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturationMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
             rr:predicate sphn:hasMethodCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturation-{sphn:hasResult[*].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
-            rr:predicate sphn:hasPerformer ] ;
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasEndDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
+            rr:predicate sphn:hasBodySite ] ;
     rr:subjectMap [ rr:class sphn:OxygenSaturationMeasurement ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturationMeasurement-{id}" ] .
 
@@ -12502,10 +12308,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OxygenSaturationMeasurement[*].sphn:hasBodySite" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasLaterality.id}" ] ;
-            rr:predicate sphn:hasLaterality ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasLaterality.id}" ] ;
+            rr:predicate sphn:hasLaterality ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:BodySite ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}" ] .
 
@@ -12540,14 +12346,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OxygenSaturationMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ] ;
     rr:subjectMap [ rr:class sphn:Implant ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}" ] .
 
@@ -12558,12 +12364,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -12580,18 +12386,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OxygenSaturationMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ] ;
+            rr:predicate sphn:hasUniformResourceLocator ],
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasDescription ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -12608,16 +12414,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OxygenSaturationMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
-            rr:predicate sphn:hasTypeCode ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ] ;
     rr:subjectMap [ rr:class sphn:MedicalDevice ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}" ] .
 
@@ -12625,15 +12431,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OxygenSaturationMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -12650,18 +12456,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OxygenSaturationMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasUniformResourceLocator ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ] ;
+            rr:predicate sphn:hasVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasDescription ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -12669,15 +12475,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OxygenSaturationMeasurement[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -12721,13 +12527,13 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OxygenSaturationMeasurement[*].sphn:hasResult[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasDataFile.id}" ] ;
+            rr:predicate sphn:hasDataFile ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasDataFile.id}" ] ;
-            rr:predicate sphn:hasDataFile ] ;
+            rr:predicate sphn:hasDateTime ] ;
     rr:subjectMap [ rr:class sphn:OxygenSaturation ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturation-{id}" ] .
 
@@ -12735,14 +12541,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:OxygenSaturationMeasurement[*].sphn:hasResult[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -12768,27 +12574,27 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:ProblemCondition[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasRecordDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ProblemCondition-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasStringValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ProblemCondition-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ProblemCondition-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rml:reference "sphn:hasOnsetDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasOnsetDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ProblemCondition-{id}-sphn-Code-{sphn:hasRelativeTemporalityCode.termid}" ] ;
+            rr:predicate sphn:hasRelativeTemporalityCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ProblemCondition-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ProblemCondition-{id}-sphn-Code-{sphn:hasRelativeTemporalityCode.termid}" ] ;
-            rr:predicate sphn:hasRelativeTemporalityCode ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasOnsetDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasOnsetDateTime ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
     rr:subjectMap [ rr:class sphn:ProblemCondition ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ProblemCondition-{id}" ] .
 
@@ -12796,15 +12602,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:ProblemCondition[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
+            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ProblemCondition-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -12830,28 +12636,28 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:RadiotherapyProcedure[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite[*].id}" ] ;
-            rr:predicate sphn:hasBodySite ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RadiotherapyProcedure-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RadiotherapyProcedure-{id}-sphn-Code-{sphn:hasCode[*].termid}" ] ;
             rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasFractionsNumber.id}" ] ;
+            rr:predicate sphn:hasFractionsNumber ],
         [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasStartDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Intent-{sphn:hasIntent.id}" ] ;
+            rr:predicate sphn:hasIntent ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasRadiationQuantity.id}" ] ;
             rr:predicate sphn:hasRadiationQuantity ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasFractionsNumber.id}" ] ;
-            rr:predicate sphn:hasFractionsNumber ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Intent-{sphn:hasIntent.id}" ] ;
-            rr:predicate sphn:hasIntent ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite[*].id}" ] ;
+            rr:predicate sphn:hasBodySite ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasEndDateTime ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasEndDateTime ] ;
     rr:subjectMap [ rr:class sphn:RadiotherapyProcedure ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RadiotherapyProcedure-{id}" ] .
 
@@ -12906,14 +12712,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:RadiotherapyProcedure[*].sphn:hasFractionsNumber" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -12959,12 +12765,12 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -12990,55 +12796,55 @@
     rml:logicalSource [ rml:iterator "$.supporting_concepts.sphn:ReferenceInterpretation[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceInterpretationResult-{sphn:hasOutput.id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#RespiratoryRate')].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyBiomoleculePresenceResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Circumference-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Circumference')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AntimicrobialSusceptibilityResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HeartRate')].id}" ] ;
             rr:predicate sphn:hasInput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyHeight-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyHeight')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceInterpretationResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceInterpretationResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FractionOfInspiredOxygen-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FractionOfInspiredOxygen')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenSaturation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BloodPressure')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HeartRate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#HeartRate')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyBiomoleculePresenceResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyBiomoleculePresenceResult')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicroorganismIdentificationResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceInterpretationResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ReferenceInterpretationResult')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyWeight-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyWeight')].id}" ] ;
             rr:predicate sphn:hasInput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicrobiologyMicroscopyResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicrobiologyMicroscopyResult')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-FractionOfInspiredOxygen-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#FractionOfInspiredOxygen')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabResult')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Result-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Result')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-OxygenSaturation-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#OxygenSaturation')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Circumference-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Circumference')].id}" ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasStandardGuideline" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasStandardGuideline ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AntimicrobialSusceptibilityResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AntimicrobialSusceptibilityResult')].id}" ] ;
             rr:predicate sphn:hasInput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceInterpretationResult-{sphn:hasOutput.id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BloodPressure-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BloodPressure')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceInterpretationResult-{sphn:hasOutput.id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#RespiratoryRate')].id}" ] ;
             rr:predicate sphn:hasInput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyTemperature-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyTemperature')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacOutput-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CardiacOutput')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Result-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Result')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CardiacOutput-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CardiacOutput')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rml:reference "sphn:hasStandardGuideline" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStandardGuideline ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodyWeight-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#BodyWeight')].id}" ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MicroorganismIdentificationResult-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MicroorganismIdentificationResult')].id}" ] ;
             rr:predicate sphn:hasInput ] ;
     rr:subjectMap [ rr:class sphn:ReferenceInterpretation ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceInterpretation-{id}" ] .
@@ -13065,26 +12871,26 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:RespiratoryRateMeasurement[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRate-{sphn:hasResult[*].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRateMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
-            rr:predicate sphn:hasMethodCode ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice.id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
-            rr:predicate sphn:hasPerformer ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRateMeasurement-{id}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
+            rr:predicate sphn:hasMethodCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
+            rr:predicate sphn:hasPerformer ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice.id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRate-{sphn:hasResult[*].id}" ] ;
+            rr:predicate sphn:hasResult ] ;
     rr:subjectMap [ rr:class sphn:RespiratoryRateMeasurement ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-RespiratoryRateMeasurement-{id}" ] .
 
@@ -13094,10 +12900,10 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
             rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
@@ -13109,15 +12915,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:RespiratoryRateMeasurement[*].sphn:hasMedicalDevice.sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -13134,18 +12940,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:RespiratoryRateMeasurement[*].sphn:hasMedicalDevice.sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasUniformResourceLocator ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasDescription ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -13153,15 +12959,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:RespiratoryRateMeasurement[*].sphn:hasMedicalDevice.sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -13205,13 +13011,13 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:RespiratoryRateMeasurement[*].sphn:hasResult[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataDetermination-{sphn:hasDataDetermination.id}" ] ;
+            rr:predicate sphn:hasDataDetermination ],
+        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataDetermination-{sphn:hasDataDetermination.id}" ] ;
-            rr:predicate sphn:hasDataDetermination ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasDataFile.id}" ] ;
             rr:predicate sphn:hasDataFile ] ;
     rr:subjectMap [ rr:class sphn:RespiratoryRate ;
@@ -13242,11 +13048,11 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -13272,17 +13078,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:ResuscitationDirective[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ResuscitationDirective-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ResuscitationDirective-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasRecordDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
     rr:subjectMap [ rr:class sphn:ResuscitationDirective ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ResuscitationDirective-{id}" ] .
 
@@ -13299,39 +13105,39 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Sample[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCollectionDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasCollectionDateTime ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rml:reference "sphn:hasCollectionDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasCollectionDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{id}-sphn-Code-{sphn:hasMaterialTypeCode[*].termid}" ] ;
-            rr:predicate sphn:hasMaterialTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
-            rr:predicate sphn:hasBodySite ],
-        [ rr:objectMap [ rml:reference "sphn:hasFixationType.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasFixationType ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
             rr:predicate sphn:hasMedicalDevice ],
         [ rr:objectMap [ rml:reference "sphn:hasPrimaryContainer.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasPrimaryContainer ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')].id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
+        [ rr:objectMap [ rml:reference "sphn:hasFixationType.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasFixationType ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabAnalyzer')].id}" ] ;
             rr:predicate sphn:hasMedicalDevice ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
         [ rr:objectMap [ rml:reference "sphn:hasSharedIdentifier" ;
                     rr:datatype xsd:anyURI ] ;
             rr:predicate sphn:hasSharedIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{id}-sphn-Code-{sphn:hasMaterialTypeCode[*].termid}" ] ;
+            rr:predicate sphn:hasMaterialTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
+            rr:predicate sphn:hasBodySite ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Sample ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{id}" ] .
 
@@ -13339,37 +13145,37 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SampleProcessing[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-StandardOperatingProcedure-{sphn:hasStandardOperatingProcedure.id}" ] ;
-            rr:predicate sphn:hasStandardOperatingProcedure ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SampleProcessing-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorSpecimen-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorSpecimen')].id}" ] ;
             rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-StandardOperatingProcedure-{sphn:hasStandardOperatingProcedure.id}" ] ;
+            rr:predicate sphn:hasStandardOperatingProcedure ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
             rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LibraryPreparation')].id}" ] ;
-            rr:predicate sphn:hasPredecessor ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase[*].id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sphn:hasQualityControlMetric[*].id}" ] ;
+            rr:predicate sphn:hasQualityControlMetric ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
+            rr:predicate sphn:hasInput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SampleProcessing-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SampleProcessing')].id}" ] ;
             rr:predicate sphn:hasPredecessor ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SampleProcessing-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SampleProcessing-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LibraryPreparation')].id}" ] ;
+            rr:predicate sphn:hasPredecessor ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Sample')].id}" ] ;
             rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase[*].id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sphn:hasQualityControlMetric[*].id}" ] ;
-            rr:predicate sphn:hasQualityControlMetric ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Isolate-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Isolate')].id}" ] ;
-            rr:predicate sphn:hasInput ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ] ;
     rr:subjectMap [ rr:class sphn:SampleProcessing ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SampleProcessing-{id}" ] .
 
@@ -13377,15 +13183,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SampleProcessing[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SampleProcessing-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -13402,11 +13208,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SampleProcessing[*].sphn:hasQualityControlMetric[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:QualityControlMetric ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}" ] .
@@ -13418,12 +13224,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -13473,17 +13279,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SampleProcessing[*].sphn:hasStandardOperatingProcedure" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasDescription ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasDataFile.id}" ] ;
             rr:predicate sphn:hasDataFile ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ] ;
+            rr:predicate sphn:hasVersion ] ;
     rr:subjectMap [ rr:class sphn:StandardOperatingProcedure ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-StandardOperatingProcedure-{id}" ] .
 
@@ -13538,12 +13344,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Sample[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
-            rr:predicate sphn:hasProductCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ] ;
     rr:subjectMap [ rr:class sphn:AccessDevice ;
@@ -13553,12 +13359,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Sample[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')].sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ] ;
@@ -13578,18 +13384,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Sample[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+            rr:predicate sphn:hasDescription ],
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ],
+            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ] ;
+            rr:predicate sphn:hasUniformResourceLocator ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -13606,14 +13412,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Sample[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
-            rr:predicate sphn:hasProductCode ] ;
+            rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+            rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:Implant ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}" ] .
 
@@ -13646,18 +13452,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Sample[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ] ;
+            rr:predicate sphn:hasUniformResourceLocator ],
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasDescription ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -13674,16 +13480,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Sample[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabAnalyzer')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
-            rr:predicate sphn:hasProductCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
+            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
-            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+            rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ] ;
     rr:subjectMap [ rr:class sphn:LabAnalyzer ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}" ] .
 
@@ -13716,18 +13522,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Sample[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabAnalyzer')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ],
+            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ] ;
+            rr:predicate sphn:hasDescription ],
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasUniformResourceLocator ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -13735,15 +13541,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Sample[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabAnalyzer')].sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -13762,14 +13568,14 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
-            rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
             rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ] ;
+            rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ] ;
     rr:subjectMap [ rr:class sphn:MedicalDevice ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}" ] .
 
@@ -13777,12 +13583,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Sample[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ] ;
@@ -13802,18 +13608,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:Sample[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
+            rr:predicate sphn:hasUniformResourceLocator ],
         [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ] ;
+            rr:predicate sphn:hasDescription ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -13846,26 +13652,26 @@
     rml:logicalSource [ rml:iterator "$.supporting_concepts.sphn:SemanticMapping[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sphn:hasOutputCode.sourceConceptType}-{sphn:hasOutputCode.sourceConceptID}-sphn-Code-{sphn:hasOutputCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceData-{sphn:hasSourceData[*].id}" ] ;
+            rr:predicate sphn:hasSourceData ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sphn:hasOutputCode.sourceConceptType}-{sphn:hasOutputCode.sourceConceptID}-sphn-Code-{sphn:hasOutputCode.termid}" ] ;
             rr:predicate sphn:hasOutputCode ],
-        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sphn:hasOutputCode.sourceConceptType}-{sphn:hasOutputCode.sourceConceptID}-sphn-Code-{sphn:hasOutputCode.id}" ] ;
+            rr:predicate sphn:hasOutputCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceData-{sphn:hasSourceData[*].id}" ] ;
             rr:predicate sphn:hasSourceData ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rml:reference "sphn:hasPurpose.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasPurpose ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceData-{sphn:hasSourceData[*].id}" ] ;
-            rr:predicate sphn:hasSourceData ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sphn:hasOutputCode.sourceConceptType}-{sphn:hasOutputCode.sourceConceptID}-sphn-Code-{sphn:hasOutputCode.termid}" ] ;
-            rr:predicate sphn:hasOutputCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sphn:hasMethodCode.sourceConceptType}-{sphn:hasMethodCode.sourceConceptID}-sphn-Code-{sphn:hasMethodCode.termid}" ] ;
             rr:predicate sphn:hasMethodCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasDateTime ] ;
     rr:subjectMap [ rr:class sphn:SemanticMapping ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SemanticMapping-{id}" ] .
 
@@ -13882,15 +13688,15 @@
     rml:logicalSource [ rml:iterator "$.supporting_concepts.sphn:SemanticMapping[*].sphn:hasOutputCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sourceConceptType}-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -13907,43 +13713,43 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SequencingAnalysis[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAnalysis-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAssay-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingAssay')].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProcessing-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataProcessing')].id}" ] ;
             rr:predicate sphn:hasPredecessor ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
-            rr:predicate sphn:hasReferenceSequence ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimeSeriesDataFile')].id}" ] ;
-            rr:predicate sphn:hasOutput ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimeSeriesDataFile')].id}" ] ;
-            rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProcessing-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataProcessing')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimeSeriesDataFile')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataFile')].id}" ] ;
+            rr:predicate sphn:hasOutput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAssay-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingAssay')].id}" ] ;
             rr:predicate sphn:hasPredecessor ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataFile')].id}" ] ;
             rr:predicate sphn:hasInput ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAnalysis-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware.id}" ] ;
             rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sphn:hasQualityControlMetric[*].id}" ] ;
+            rr:predicate sphn:hasQualityControlMetric ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase[*].id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAnalysis-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
+            rr:predicate sphn:hasReferenceSequence ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{sphn:hasInput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TimeSeriesDataFile')].id}" ] ;
+            rr:predicate sphn:hasInput ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assay-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Assay')].id}" ] ;
+            rr:predicate sphn:hasPredecessor ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-StandardOperatingProcedure-{sphn:hasStandardOperatingProcedure.id}" ] ;
             rr:predicate sphn:hasStandardOperatingProcedure ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAnalysis-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAnalysis-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SequencingAnalysis')].id}" ] ;
             rr:predicate sphn:hasPredecessor ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sphn:hasQualityControlMetric[*].id}" ] ;
-            rr:predicate sphn:hasQualityControlMetric ],
         [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Assay-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Assay')].id}" ] ;
-            rr:predicate sphn:hasPredecessor ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasOutput[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#DataFile')].id}" ] ;
-            rr:predicate sphn:hasOutput ] ;
+            rr:predicate sphn:hasStartDateTime ] ;
     rr:subjectMap [ rr:class sphn:SequencingAnalysis ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAnalysis-{id}" ] .
 
@@ -13976,12 +13782,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SequencingAnalysis[*].sphn:hasQualityControlMetric[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ] ;
+            rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:QualityControlMetric ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}" ] .
 
@@ -13992,12 +13798,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -14058,15 +13864,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SequencingAnalysis[*].sphn:hasReferenceSequence.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -14083,18 +13889,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SequencingAnalysis[*].sphn:hasSoftware" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasUniformResourceLocator ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ] ;
+            rr:predicate sphn:hasVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasDescription ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -14102,11 +13908,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SequencingAnalysis[*].sphn:hasStandardOperatingProcedure" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasDataFile.id}" ] ;
-            rr:predicate sphn:hasDataFile ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasDescription ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasDataFile.id}" ] ;
+            rr:predicate sphn:hasDataFile ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
@@ -14120,42 +13926,42 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SequencingAssay[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SampleProcessing-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SampleProcessing')].id}" ] ;
-            rr:predicate sphn:hasPredecessor ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasDataFile[*].id}" ] ;
-            rr:predicate sphn:hasDataFile ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasSample[*].id}" ] ;
-            rr:predicate sphn:hasSample ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAssay-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-StandardOperatingProcedure-{sphn:hasStandardOperatingProcedure.id}" ] ;
-            rr:predicate sphn:hasStandardOperatingProcedure ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingInstrument-{sphn:hasSequencingInstrument.id}" ] ;
-            rr:predicate sphn:hasSequencingInstrument ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAssay-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Sample-{sphn:hasSample[*].id}" ] ;
+            rr:predicate sphn:hasSample ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase[*].id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingRun-{sphn:hasSequencingRun[*].id}" ] ;
-            rr:predicate sphn:hasSequencingRun ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{sphn:hasLibraryPreparation.id}" ] ;
-            rr:predicate sphn:hasLibraryPreparation ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasDataFile[*].id}" ] ;
+            rr:predicate sphn:hasDataFile ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasIntendedReadDepth.id}" ] ;
             rr:predicate sphn:hasIntendedReadDepth ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingInstrument-{sphn:hasSequencingInstrument.id}" ] ;
+            rr:predicate sphn:hasSequencingInstrument ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasIntendedReadLength.id}" ] ;
+            rr:predicate sphn:hasIntendedReadLength ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LibraryPreparation')].id}" ] ;
             rr:predicate sphn:hasPredecessor ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingRun-{sphn:hasSequencingRun[*].id}" ] ;
+            rr:predicate sphn:hasSequencingRun ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-StandardOperatingProcedure-{sphn:hasStandardOperatingProcedure.id}" ] ;
+            rr:predicate sphn:hasStandardOperatingProcedure ],
         [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasIntendedReadLength.id}" ] ;
-            rr:predicate sphn:hasIntendedReadLength ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAssay-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SampleProcessing-{sphn:hasPredecessor[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SampleProcessing')].id}" ] ;
+            rr:predicate sphn:hasPredecessor ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LibraryPreparation-{sphn:hasLibraryPreparation.id}" ] ;
+            rr:predicate sphn:hasLibraryPreparation ] ;
     rr:subjectMap [ rr:class sphn:SequencingAssay ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingAssay-{id}" ] .
 
@@ -14191,11 +13997,11 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -14223,12 +14029,12 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -14268,12 +14074,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingInstrument-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -14290,24 +14096,24 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SequencingAssay[*].sphn:hasSequencingRun[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasAverageInsertSize.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasAverageInsertSize.id}" ] ;
             rr:predicate sphn:hasAverageInsertSize ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasReadCount.id}" ] ;
-            rr:predicate sphn:hasReadCount ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasAverageReadLength.id}" ] ;
             rr:predicate sphn:hasAverageReadLength ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasDataFile[*].id}" ] ;
             rr:predicate sphn:hasDataFile ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sphn:hasQualityControlMetric[*].id}" ] ;
+            rr:predicate sphn:hasQualityControlMetric ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasReadCount.id}" ] ;
+            rr:predicate sphn:hasReadCount ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasMeanReadDepth.id}" ] ;
             rr:predicate sphn:hasMeanReadDepth ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{sphn:hasQualityControlMetric[*].id}" ] ;
-            rr:predicate sphn:hasQualityControlMetric ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:SequencingRun ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SequencingRun-{id}" ] .
 
@@ -14315,12 +14121,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SequencingAssay[*].sphn:hasSequencingRun[*].sphn:hasAverageInsertSize" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
@@ -14351,11 +14157,11 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -14381,11 +14187,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SequencingAssay[*].sphn:hasSequencingRun[*].sphn:hasMeanReadDepth" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ] ;
@@ -14414,12 +14220,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SequencingAssay[*].sphn:hasSequencingRun[*].sphn:hasQualityControlMetric[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+            rr:predicate sphn:hasQuantity ] ;
     rr:subjectMap [ rr:class sphn:QualityControlMetric ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-QualityControlMetric-{id}" ] .
 
@@ -14427,12 +14233,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SequencingAssay[*].sphn:hasSequencingRun[*].sphn:hasQualityControlMetric[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ] ;
@@ -14452,14 +14258,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SequencingAssay[*].sphn:hasSequencingRun[*].sphn:hasQualityControlMetric[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -14485,12 +14291,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SequencingAssay[*].sphn:hasSequencingRun[*].sphn:hasReadCount" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
@@ -14518,14 +14324,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SequencingAssay[*].sphn:hasStandardOperatingProcedure" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasDataFile.id}" ] ;
-            rr:predicate sphn:hasDataFile ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataFile-{sphn:hasDataFile.id}" ] ;
+            rr:predicate sphn:hasDataFile ],
         [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasDescription ] ;
@@ -14536,17 +14342,17 @@
     rml:logicalSource [ rml:iterator "$.supporting_concepts.sphn:SourceData[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sphn:hasCode.sourceConceptType}-{sphn:hasCode.sourceConceptID}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sphn:hasCode.sourceConceptType}-{sphn:hasCode.sourceConceptID}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sphn:hasCode.sourceConceptType}-{sphn:hasCode.sourceConceptID}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStringValue ] ;
+            rr:predicate sphn:hasStringValue ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:SourceData ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceData-{id}" ] .
 
@@ -14554,15 +14360,15 @@
     rml:logicalSource [ rml:iterator "$.supporting_concepts.sphn:SourceData[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-{sourceConceptType}-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -14579,14 +14385,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:SourceSystem[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCategory.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasCategory ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HealthcarePrimaryInformationSystem-{sphn:hasPrimarySystem.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-HealthcarePrimaryInformationSystem-{sphn:hasPrimarySystem.id}" ] ;
             rr:predicate sphn:hasPrimarySystem ],
         [ rr:objectMap [ rml:reference "sphn:hasPurpose.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasPurpose ],
+        [ rr:objectMap [ rml:reference "sphn:hasCategory.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasCategory ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ] ;
@@ -14618,28 +14424,28 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TimeSeriesDataFile[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Hash-{sphn:hasHash.id}" ] ;
-            rr:predicate sphn:hasHash ],
-        [ rr:objectMap [ rml:reference "sphn:hasCreationDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasCreationDateTime ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rml:reference "sphn:hasEncoding.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasEncoding ],
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasUniformResourceIdentifier ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasEntryCount.id}" ] ;
             rr:predicate sphn:hasEntryCount ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rml:reference "sphn:hasEncoding.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasEncoding ],
+        [ rr:objectMap [ rml:reference "sphn:hasCreationDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasCreationDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{id}-sphn-Code-{sphn:hasFormatCode.termid}" ] ;
             rr:predicate sphn:hasFormatCode ],
-        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceIdentifier ] ;
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Hash-{sphn:hasHash.id}" ] ;
+            rr:predicate sphn:hasHash ] ;
     rr:subjectMap [ rr:class sphn:TimeSeriesDataFile ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TimeSeriesDataFile-{id}" ] .
 
@@ -14650,11 +14456,11 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -14689,12 +14495,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TimeSeriesDataFile[*].sphn:hasHash" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasAlgorithm.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasAlgorithm ],
-        [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStringValue ] ;
+            rr:predicate sphn:hasStringValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasAlgorithm.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasAlgorithm ] ;
     rr:subjectMap [ rr:class sphn:Hash ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Hash-{id}" ] .
 
@@ -14702,33 +14508,33 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TobaccoExposure[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TobaccoExposure-{id}-sphn-Code-{sphn:hasAgentCode.termid}" ] ;
-            rr:predicate sphn:hasAgentCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TobaccoExposure-{id}-sphn-Code-{sphn:hasRouteCode[*].termid}" ] ;
-            rr:predicate sphn:hasRouteCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TobaccoExposure-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasDuration.id}" ] ;
+            rr:predicate sphn:hasDuration ],
         [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasRecordDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TobaccoExposure-{id}-sphn-Code-{sphn:hasDegreeCode.termid}" ] ;
-            rr:predicate sphn:hasDegreeCode ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasDuration.id}" ] ;
-            rr:predicate sphn:hasDuration ],
         [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasEndDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TobaccoExposure-{id}-sphn-Code-{sphn:hasDegreeCode.termid}" ] ;
+            rr:predicate sphn:hasDegreeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasStartDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TobaccoExposure-{id}-sphn-Code-{sphn:hasAgentCode.termid}" ] ;
+            rr:predicate sphn:hasAgentCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TobaccoExposure-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TobaccoExposure-{id}-sphn-Code-{sphn:hasRouteCode[*].termid}" ] ;
+            rr:predicate sphn:hasRouteCode ] ;
     rr:subjectMap [ rr:class sphn:TobaccoExposure ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TobaccoExposure-{id}" ] .
 
@@ -14789,12 +14595,12 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+            rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -14838,25 +14644,25 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TransplantPresence[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasEndDateTime ],
-        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasStartDateTime ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transplant-{sphn:hasTransplant.id}" ] ;
+            rr:predicate sphn:hasTransplant ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transplant-{sphn:hasTransplant.id}" ] ;
-            rr:predicate sphn:hasTransplant ],
-        [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
+        [ rr:objectMap [ rml:reference "sphn:hasStartDateTime" ;
                     rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasRecordDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
+            rr:predicate sphn:hasStartDateTime ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
             rr:predicate sphn:hasBodySite ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rml:reference "sphn:hasRecordDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasRecordDateTime ],
+        [ rr:objectMap [ rml:reference "sphn:hasEndDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasEndDateTime ] ;
     rr:subjectMap [ rr:class sphn:TransplantPresence ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TransplantPresence-{id}" ] .
 
@@ -14864,10 +14670,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TransplantPresence[*].sphn:hasBodySite" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasLaterality.id}" ] ;
-            rr:predicate sphn:hasLaterality ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Laterality-{sphn:hasLaterality.id}" ] ;
+            rr:predicate sphn:hasLaterality ] ;
     rr:subjectMap [ rr:class sphn:BodySite ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{id}" ] .
 
@@ -14931,19 +14737,19 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessment-{sphn:hasAssessment.id}" ] ;
+            rr:predicate sphn:hasAssessment ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
             rr:predicate sphn:hasPerformer ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessment-{sphn:hasAssessment.id}" ] ;
-            rr:predicate sphn:hasAssessment ],
+        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasDateTime ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDateTime ] ;
+            rr:predicate sphn:hasSourceSystem ] ;
     rr:subjectMap [ rr:class sphn:TumorGradeAssessmentEvent ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentEvent-{id}" ] .
 
@@ -14951,13 +14757,13 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{sphn:hasComponent[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessment-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{sphn:hasComponent[*].id}" ] ;
             rr:predicate sphn:hasComponent ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessment-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{sphn:hasRange.id}" ] ;
             rr:predicate sphn:hasRange ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{sphn:hasResult.id}" ] ;
@@ -14978,19 +14784,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{sphn:hasRange.id}" ] ;
+            rr:predicate sphn:hasRange ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{sphn:hasRange.id}" ] ;
-            rr:predicate sphn:hasRange ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sphn:hasResult[*].id}" ] ;
+            rr:predicate sphn:hasResult ] ;
     rr:subjectMap [ rr:class sphn:AssessmentComponent ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{id}" ] .
 
@@ -15018,14 +14820,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange.sphn:hasLowerLimit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -15081,31 +14883,31 @@
     rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sourceConceptID}-sphn-Code-{termid}" ] .
 
 :sphnTumorGradeAssessmentEvent_sphnhasAssessment_rangesphnTumorGradeAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')]" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
         [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStringValue ] ;
+            rr:predicate sphn:hasStringValue ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:AssessmentResult ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}" ] .
 
 :sphnTumorGradeAssessmentEvent_sphnhasAssessment_rangesphnTumorGradeAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasCode_rangesphnCode a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasCode" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ] ;
@@ -15113,7 +14915,7 @@
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sourceConceptID}-sphn-Code-{id}" ] .
 
 :sphnTumorGradeAssessmentEvent_sphnhasAssessment_rangesphnTumorGradeAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasCode" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
@@ -15122,7 +14924,7 @@
     rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sourceConceptID}-sphn-Code-{termid}" ] .
 
 :sphnTumorGradeAssessmentEvent_sphnhasAssessment_rangesphnTumorGradeAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasQuantity" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
@@ -15137,7 +14939,7 @@
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
 :sphnTumorGradeAssessmentEvent_sphnhasAssessment_rangesphnTumorGradeAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasQuantity.sphn:hasUnit" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*].sphn:hasQuantity.sphn:hasUnit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
@@ -15146,119 +14948,7 @@
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}" ] .
 
 :sphnTumorGradeAssessmentEvent_sphnhasAssessment_rangesphnTumorGradeAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasQuantity.sphn:hasUnit.sphn:hasCode" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sourceConceptID}-sphn-Code-{termid}" ] .
-
-:sphnTumorGradeAssessmentEvent_sphnhasAssessment_rangesphnTumorGradeAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorGradeAssessmentResult a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')]" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
-        [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStringValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
-    rr:subjectMap [ rr:class sphn:TumorGradeAssessmentResult ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{id}" ] .
-
-:sphnTumorGradeAssessmentEvent_sphnhasAssessment_rangesphnTumorGradeAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorGradeAssessmentResult_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasCode" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{sourceConceptID}-sphn-Code-{termid}" ] .
-
-:sphnTumorGradeAssessmentEvent_sphnhasAssessment_rangesphnTumorGradeAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorGradeAssessmentResult_sphnhasQuantity_rangesphnQuantity a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasQuantity" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
-    rr:subjectMap [ rr:class sphn:Quantity ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
-
-:sphnTumorGradeAssessmentEvent_sphnhasAssessment_rangesphnTumorGradeAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorGradeAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasQuantity.sphn:hasUnit" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
-    rr:subjectMap [ rr:class sphn:Unit ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}" ] .
-
-:sphnTumorGradeAssessmentEvent_sphnhasAssessment_rangesphnTumorGradeAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorGradeAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasQuantity.sphn:hasUnit.sphn:hasCode" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sourceConceptID}-sphn-Code-{termid}" ] .
-
-:sphnTumorGradeAssessmentEvent_sphnhasAssessment_rangesphnTumorGradeAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorStageAssessmentResult a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')]" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStringValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ] ;
-    rr:subjectMap [ rr:class sphn:TumorStageAssessmentResult ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{id}" ] .
-
-:sphnTumorGradeAssessmentEvent_sphnhasAssessment_rangesphnTumorGradeAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorStageAssessmentResult_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].sphn:hasCode" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{sourceConceptID}-sphn-Code-{termid}" ] .
-
-:sphnTumorGradeAssessmentEvent_sphnhasAssessment_rangesphnTumorGradeAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorStageAssessmentResult_sphnhasQuantity_rangesphnQuantity a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].sphn:hasQuantity" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
-    rr:subjectMap [ rr:class sphn:Quantity ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
-
-:sphnTumorGradeAssessmentEvent_sphnhasAssessment_rangesphnTumorGradeAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorStageAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].sphn:hasQuantity.sphn:hasUnit" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
-    rr:subjectMap [ rr:class sphn:Unit ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}" ] .
-
-:sphnTumorGradeAssessmentEvent_sphnhasAssessment_rangesphnTumorGradeAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorStageAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].sphn:hasQuantity.sphn:hasUnit.sphn:hasCode" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*].sphn:hasQuantity.sphn:hasUnit.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
@@ -15270,10 +14960,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasRange" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasUpperLimit.id}" ] ;
-            rr:predicate sphn:hasUpperLimit ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasLowerLimit.id}" ] ;
-            rr:predicate sphn:hasLowerLimit ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasLowerLimit.id}" ] ;
+            rr:predicate sphn:hasLowerLimit ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasUpperLimit.id}" ] ;
+            rr:predicate sphn:hasUpperLimit ] ;
     rr:subjectMap [ rr:class sphn:Range ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{id}" ] .
 
@@ -15281,14 +14971,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasRange.sphn:hasLowerLimit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -15314,14 +15004,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasRange.sphn:hasUpperLimit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -15349,11 +15039,11 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStringValue ] ;
+            rr:predicate sphn:hasStringValue ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:TumorGradeAssessmentResult ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{id}" ] .
 
@@ -15370,14 +15060,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorGradeAssessmentEvent[*].sphn:hasAssessment.sphn:hasResult.sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -15421,41 +15111,41 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorSpecimen[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasPrimaryContainer.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasPrimaryContainer ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].id}" ] ;
             rr:predicate sphn:hasMedicalDevice ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
             rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rml:reference "sphn:hasSharedIdentifier" ;
-                    rr:datatype xsd:anyURI ] ;
-            rr:predicate sphn:hasSharedIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
+            rr:predicate sphn:hasMedicalDevice ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabAnalyzer')].id}" ] ;
             rr:predicate sphn:hasMedicalDevice ],
         [ rr:objectMap [ rml:reference "sphn:hasCollectionDateTime" ;
                     rr:datatype xsd:dateTime ] ;
             rr:predicate sphn:hasCollectionDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasTumorPurity.id}" ] ;
-            rr:predicate sphn:hasTumorPurity ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorSpecimen-{id}-sphn-Code-{sphn:hasMaterialTypeCode[*].termid}" ] ;
             rr:predicate sphn:hasMaterialTypeCode ],
+        [ rr:objectMap [ rml:reference "sphn:hasPrimaryContainer.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasPrimaryContainer ],
         [ rr:objectMap [ rml:reference "sphn:hasFixationType.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasFixationType ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-BodySite-{sphn:hasBodySite.id}" ] ;
             rr:predicate sphn:hasBodySite ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabAnalyzer')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasTumorPurity.id}" ] ;
+            rr:predicate sphn:hasTumorPurity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')].id}" ] ;
             rr:predicate sphn:hasMedicalDevice ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].id}" ] ;
-            rr:predicate sphn:hasMedicalDevice ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasSharedIdentifier" ;
+                    rr:datatype xsd:anyURI ] ;
+            rr:predicate sphn:hasSharedIdentifier ] ;
     rr:subjectMap [ rr:class sphn:TumorSpecimen ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorSpecimen-{id}" ] .
 
@@ -15510,12 +15200,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorSpecimen[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
-            rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AccessDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ] ;
     rr:subjectMap [ rr:class sphn:AccessDevice ;
@@ -15525,12 +15215,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorSpecimen[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')].sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ] ;
@@ -15549,19 +15239,19 @@
 :sphnTumorSpecimen_sphnhasMedicalDevice_rangesphnAccessDevice_sphnhasSoftware_rangesphnSoftware a rr:TriplesMap ;
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorSpecimen[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AccessDevice')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ],
-        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
+            rml:source "patient_data_input.json" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasDescription ],
+            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ] ;
+            rr:predicate sphn:hasDescription ],
+        [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasUniformResourceLocator ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -15578,12 +15268,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorSpecimen[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Implant-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ] ;
     rr:subjectMap [ rr:class sphn:Implant ;
@@ -15593,12 +15283,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorSpecimen[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#Implant')].sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ] ;
@@ -15646,16 +15336,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorSpecimen[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabAnalyzer')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
-            rr:predicate sphn:hasSoftware ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
             rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
             rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+            rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+            rr:predicate sphn:hasSoftware ] ;
     rr:subjectMap [ rr:class sphn:LabAnalyzer ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{id}" ] .
 
@@ -15691,15 +15381,15 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasUniformResourceLocator ] ;
+            rr:predicate sphn:hasUniformResourceLocator ],
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasVersion ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -15707,15 +15397,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorSpecimen[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#LabAnalyzer')].sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-LabAnalyzer-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -15732,16 +15422,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorSpecimen[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
+            rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
+            rr:predicate sphn:hasProductCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{sphn:hasSoftware[*].id}" ] ;
             rr:predicate sphn:hasSoftware ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.id}" ] ;
             rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.id}" ] ;
-            rr:predicate sphn:hasProductCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}-sphn-Code-{sphn:hasProductCode.termid}" ] ;
-            rr:predicate sphn:hasProductCode ] ;
+            rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:MedicalDevice ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{id}" ] .
 
@@ -15749,15 +15439,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorSpecimen[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasProductCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -15774,18 +15464,18 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorSpecimen[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasSoftware[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasVersion ],
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasUniformResourceLocator" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasUniformResourceLocator ],
         [ rr:objectMap [ rml:reference "sphn:hasDescription" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasDescription ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+        [ rr:objectMap [ rml:reference "sphn:hasVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasVersion ] ;
     rr:subjectMap [ rr:class sphn:Software ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Software-{id}" ] .
 
@@ -15793,15 +15483,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorSpecimen[*].sphn:hasMedicalDevice[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#MedicalDevice')].sphn:hasTypeCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-MedicalDevice-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -15818,14 +15508,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorSpecimen[*].sphn:hasTumorPurity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -15851,19 +15541,19 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
-                    rr:datatype xsd:dateTime ] ;
-            rr:predicate sphn:hasDateTime ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
+            rr:predicate sphn:hasPerformer ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
             rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessment-{sphn:hasAssessment.id}" ] ;
+            rr:predicate sphn:hasAssessment ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
             rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Performer-{sphn:hasPerformer.id}" ] ;
-            rr:predicate sphn:hasPerformer ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessment-{sphn:hasAssessment.id}" ] ;
-            rr:predicate sphn:hasAssessment ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rml:reference "sphn:hasDateTime" ;
+                    rr:datatype xsd:dateTime ] ;
+            rr:predicate sphn:hasDateTime ] ;
     rr:subjectMap [ rr:class sphn:TumorStageAssessmentEvent ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentEvent-{id}" ] .
 
@@ -15871,17 +15561,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{sphn:hasResult.id}" ] ;
-            rr:predicate sphn:hasResult ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{sphn:hasRange.id}" ] ;
+            rr:predicate sphn:hasRange ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessment-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{sphn:hasRange.id}" ] ;
-            rr:predicate sphn:hasRange ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{sphn:hasComponent[*].id}" ] ;
-            rr:predicate sphn:hasComponent ] ;
+            rr:predicate sphn:hasComponent ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{sphn:hasResult.id}" ] ;
+            rr:predicate sphn:hasResult ] ;
     rr:subjectMap [ rr:class sphn:TumorStageAssessment ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessment-{id}" ] .
 
@@ -15895,169 +15585,58 @@
     rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessment-{sourceConceptID}-sphn-Code-{termid}" ] .
 
 :sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*]" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{sphn:hasRange.id}" ] ;
-            rr:predicate sphn:hasRange ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].id}" ] ;
-            rr:predicate sphn:hasResult ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
-    rr:subjectMap [ rr:class sphn:AssessmentComponent ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{id}" ] .
-
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasCode" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{sourceConceptID}-sphn-Code-{termid}" ] .
-
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasRange_rangesphnRange a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasLowerLimit.id}" ] ;
-            rr:predicate sphn:hasLowerLimit ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasUpperLimit.id}" ] ;
-            rr:predicate sphn:hasUpperLimit ] ;
-    rr:subjectMap [ rr:class sphn:Range ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{id}" ] .
-
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasRange_rangesphnRange_sphnhasLowerLimit_rangesphnQuantity a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange.sphn:hasLowerLimit" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
-    rr:subjectMap [ rr:class sphn:Quantity ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
-
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasRange_rangesphnRange_sphnhasLowerLimit_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange.sphn:hasLowerLimit.sphn:hasUnit" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
-    rr:subjectMap [ rr:class sphn:Unit ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}" ] .
-
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasRange_rangesphnRange_sphnhasLowerLimit_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange.sphn:hasLowerLimit.sphn:hasUnit.sphn:hasCode" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sourceConceptID}-sphn-Code-{termid}" ] .
-
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasRange_rangesphnRange_sphnhasUpperLimit_rangesphnQuantity a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange.sphn:hasUpperLimit" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
-    rr:subjectMap [ rr:class sphn:Quantity ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
-
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasRange_rangesphnRange_sphnhasUpperLimit_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange.sphn:hasUpperLimit.sphn:hasUnit" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
-    rr:subjectMap [ rr:class sphn:Unit ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}" ] .
-
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasRange_rangesphnRange_sphnhasUpperLimit_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange.sphn:hasUpperLimit.sphn:hasUnit.sphn:hasCode" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sourceConceptID}-sphn-Code-{termid}" ] .
-
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')]" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStringValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ] ;
-    rr:subjectMap [ rr:class sphn:AssessmentResult ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}" ] .
-
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasCode_rangesphnCode a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasCode" ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sphn:hasResult[*].id}" ] ;
+            rr:predicate sphn:hasResult ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
-    rr:subjectMap [ rr:class sphn:Code ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sourceConceptID}-sphn-Code-{id}" ] .
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{sphn:hasRange.id}" ] ;
+            rr:predicate sphn:hasRange ] ;
+    rr:subjectMap [ rr:class sphn:AssessmentComponent ;
+            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{id}" ] .
 
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasCode" ;
+:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sourceConceptID}-sphn-Code-{termid}" ] .
+    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentComponent-{sourceConceptID}-sphn-Code-{termid}" ] .
 
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasQuantity" ;
+:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasRange_rangesphnRange a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange" ;
+            rml:referenceFormulation ql:JSONPath ;
+            rml:source "patient_data_input.json" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasUpperLimit.id}" ] ;
+            rr:predicate sphn:hasUpperLimit ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasLowerLimit.id}" ] ;
+            rr:predicate sphn:hasLowerLimit ] ;
+    rr:subjectMap [ rr:class sphn:Range ;
+            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{id}" ] .
+
+:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasRange_rangesphnRange_sphnhasLowerLimit_rangesphnQuantity a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange.sphn:hasLowerLimit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasQuantity.sphn:hasUnit" ;
+:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasRange_rangesphnRange_sphnhasLowerLimit_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange.sphn:hasLowerLimit.sphn:hasUnit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
@@ -16065,8 +15644,8 @@
     rr:subjectMap [ rr:class sphn:Unit ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}" ] .
 
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#AssessmentResult')].sphn:hasQuantity.sphn:hasUnit.sphn:hasCode" ;
+:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasRange_rangesphnRange_sphnhasLowerLimit_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange.sphn:hasLowerLimit.sphn:hasUnit.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
@@ -16074,46 +15653,23 @@
             rr:predicate rdf:type ] ;
     rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sourceConceptID}-sphn-Code-{termid}" ] .
 
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorGradeAssessmentResult a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')]" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
-            rr:predicate sphn:hasQuantity ],
-        [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStringValue ] ;
-    rr:subjectMap [ rr:class sphn:TumorGradeAssessmentResult ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{id}" ] .
-
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorGradeAssessmentResult_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasCode" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorGradeAssessmentResult-{sourceConceptID}-sphn-Code-{termid}" ] .
-
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorGradeAssessmentResult_sphnhasQuantity_rangesphnQuantity a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasQuantity" ;
+:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasRange_rangesphnRange_sphnhasUpperLimit_rangesphnQuantity a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange.sphn:hasUpperLimit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorGradeAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasQuantity.sphn:hasUnit" ;
+:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasRange_rangesphnRange_sphnhasUpperLimit_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange.sphn:hasUpperLimit.sphn:hasUnit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
@@ -16121,8 +15677,8 @@
     rr:subjectMap [ rr:class sphn:Unit ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}" ] .
 
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorGradeAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorGradeAssessmentResult')].sphn:hasQuantity.sphn:hasUnit.sphn:hasCode" ;
+:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasRange_rangesphnRange_sphnhasUpperLimit_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasRange.sphn:hasUpperLimit.sphn:hasUnit.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
@@ -16130,31 +15686,49 @@
             rr:predicate rdf:type ] ;
     rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sourceConceptID}-sphn-Code-{termid}" ] .
 
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorStageAssessmentResult a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')]" ;
+:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasQuantity.id}" ] ;
             rr:predicate sphn:hasQuantity ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rml:reference "sphn:hasStringValue" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasStringValue ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
-    rr:subjectMap [ rr:class sphn:TumorStageAssessmentResult ;
-            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{id}" ] .
+            rr:predicate sphn:hasStringValue ] ;
+    rr:subjectMap [ rr:class sphn:AssessmentResult ;
+            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{id}" ] .
+
+:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasCode_rangesphnCode a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*].sphn:hasCode" ;
+            rml:referenceFormulation ql:JSONPath ;
+            rml:source "patient_data_input.json" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
+    rr:subjectMap [ rr:class sphn:Code ;
+            rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sourceConceptID}-sphn-Code-{id}" ] .
 
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorStageAssessmentResult_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].sphn:hasCode" ;
+:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate rdf:type ] ;
-    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-TumorStageAssessmentResult-{sourceConceptID}-sphn-Code-{termid}" ] .
+    rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AssessmentResult-{sourceConceptID}-sphn-Code-{termid}" ] .
 
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorStageAssessmentResult_sphnhasQuantity_rangesphnQuantity a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].sphn:hasQuantity" ;
+:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*].sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
@@ -16168,8 +15742,8 @@
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorStageAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].sphn:hasQuantity.sphn:hasUnit" ;
+:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*].sphn:hasQuantity.sphn:hasUnit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
@@ -16177,8 +15751,8 @@
     rr:subjectMap [ rr:class sphn:Unit ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{id}" ] .
 
-:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnTumorStageAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#TumorStageAssessmentResult')].sphn:hasQuantity.sphn:hasUnit.sphn:hasCode" ;
+:sphnTumorStageAssessmentEvent_sphnhasAssessment_rangesphnTumorStageAssessment_sphnhasComponent_rangesphnAssessmentComponent_sphnhasResult_rangesphnAssessmentResult_sphnhasQuantity_rangesphnQuantity_sphnhasUnit_rangesphnUnit_sphnhasCode_rangesphnTerminology a rr:TriplesMap ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasComponent[*].sphn:hasResult[*].sphn:hasQuantity.sphn:hasUnit.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "iri" ;
@@ -16190,10 +15764,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasRange" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasUpperLimit.id}" ] ;
-            rr:predicate sphn:hasUpperLimit ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasLowerLimit.id}" ] ;
-            rr:predicate sphn:hasLowerLimit ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasLowerLimit.id}" ] ;
+            rr:predicate sphn:hasLowerLimit ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasUpperLimit.id}" ] ;
+            rr:predicate sphn:hasUpperLimit ] ;
     rr:subjectMap [ rr:class sphn:Range ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Range-{id}" ] .
 
@@ -16201,14 +15775,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasRange.sphn:hasLowerLimit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -16234,14 +15808,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasRange.sphn:hasUpperLimit" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -16290,14 +15864,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:TumorStageAssessmentEvent[*].sphn:hasAssessment.sphn:hasResult.sphn:hasQuantity" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -16341,49 +15915,49 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
-            rr:predicate sphn:hasAdministrativeCase ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
-            rr:predicate sphn:hasSubjectPseudoIdentifier ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicInsertion-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInsertion')].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{sphn:hasGene[*].id}" ] ;
+            rr:predicate sphn:hasGene ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CopyNumberVariation-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CopyNumberVariation')].id}" ] ;
             rr:predicate sphn:hasGenomicVariation ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
-            rr:predicate sphn:hasSourceSystem ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDelins-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDelins')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantDescriptor-{id}-sphn-Code-{sphn:hasAlleleOriginCode.termid}" ] ;
+            rr:predicate sphn:hasAlleleOriginCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicTransposition-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTransposition')].id}" ] ;
             rr:predicate sphn:hasGenomicVariation ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GeneFusion-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantDescriptor-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SingleNucleotideVariation-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SingleNucleotideVariation')].id}" ] ;
             rr:predicate sphn:hasGenomicVariation ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantNotation-{sphn:hasNotation[*].id}" ] ;
-            rr:predicate sphn:hasNotation ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDuplication-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDuplication')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantDescriptor-{id}-sphn-Code-{sphn:hasZygosityCode.termid}" ] ;
+            rr:predicate sphn:hasZygosityCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDeletion-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDeletion')].id}" ] ;
+            rr:predicate sphn:hasGenomicVariation ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDelins-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDelins')].id}" ] ;
             rr:predicate sphn:hasGenomicVariation ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantDescriptor-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantDescriptor-{id}-sphn-Code-{sphn:hasZygosityCode.termid}" ] ;
-            rr:predicate sphn:hasZygosityCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantDescriptor-{id}-sphn-Code-{sphn:hasAlleleOriginCode.termid}" ] ;
-            rr:predicate sphn:hasAlleleOriginCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicVariation-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicVariation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SourceSystem-{sphn:hasSourceSystem[*].id}" ] ;
+            rr:predicate sphn:hasSourceSystem ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDuplication-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDuplication')].id}" ] ;
             rr:predicate sphn:hasGenomicVariation ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SingleNucleotideVariation-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SingleNucleotideVariation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicInsertion-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInsertion')].id}" ] ;
+            rr:predicate sphn:hasGenomicVariation ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-AdministrativeCase-{sphn:hasAdministrativeCase.id}" ] ;
+            rr:predicate sphn:hasAdministrativeCase ],
+        [ rr:objectMap [ rr:parentTriplesMap :sphnSubjectPseudoIdentifier ] ;
+            rr:predicate sphn:hasSubjectPseudoIdentifier ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicVariation-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicVariation')].id}" ] ;
             rr:predicate sphn:hasGenomicVariation ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantDescriptor-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{sphn:hasGene[*].id}" ] ;
-            rr:predicate sphn:hasGene ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicTranslocation-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTranslocation')].id}" ] ;
-            rr:predicate sphn:hasGenomicVariation ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantDescriptor-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:parentTriplesMap :sphnDataProvider ] ;
             rr:predicate sphn:hasDataProvider ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDeletion-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDeletion')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantNotation-{sphn:hasNotation[*].id}" ] ;
+            rr:predicate sphn:hasNotation ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicTranslocation-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTranslocation')].id}" ] ;
             rr:predicate sphn:hasGenomicVariation ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicInversion-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInversion')].id}" ] ;
             rr:predicate sphn:hasGenomicVariation ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicTransposition-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTransposition')].id}" ] ;
-            rr:predicate sphn:hasGenomicVariation ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CopyNumberVariation-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CopyNumberVariation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GeneFusion-{sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].id}" ] ;
             rr:predicate sphn:hasGenomicVariation ] ;
     rr:subjectMap [ rr:class sphn:VariantDescriptor ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantDescriptor-{id}" ] .
@@ -16404,12 +15978,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-VariantDescriptor-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -16426,16 +16000,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGene[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{sphn:hasTranscript[*].id}" ] ;
-            rr:predicate sphn:hasTranscript ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
-            rr:predicate sphn:hasOrganism ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasProtein[*].id}" ] ;
             rr:predicate sphn:hasProtein ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
+            rr:predicate sphn:hasOrganism ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{sphn:hasTranscript[*].id}" ] ;
+            rr:predicate sphn:hasTranscript ] ;
     rr:subjectMap [ rr:class sphn:Gene ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}" ] .
 
@@ -16443,15 +16017,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGene[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -16468,9 +16042,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGene[*].sphn:hasOrganism" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Organism ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}" ] .
@@ -16479,15 +16053,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGene[*].sphn:hasOrganism.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -16504,10 +16078,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGene[*].sphn:hasProtein[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
-            rr:predicate sphn:hasOrganism ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
+            rr:predicate sphn:hasOrganism ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Protein ;
@@ -16520,12 +16094,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -16542,9 +16116,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGene[*].sphn:hasProtein[*].sphn:hasOrganism" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Organism ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}" ] .
@@ -16553,15 +16127,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGene[*].sphn:hasProtein[*].sphn:hasOrganism.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -16578,10 +16152,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGene[*].sphn:hasTranscript[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
-            rr:predicate sphn:hasOrganism ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
+            rr:predicate sphn:hasOrganism ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasProtein.id}" ] ;
             rr:predicate sphn:hasProtein ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
@@ -16593,15 +16167,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGene[*].sphn:hasTranscript[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -16618,9 +16192,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGene[*].sphn:hasTranscript[*].sphn:hasOrganism" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Organism ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}" ] .
@@ -16629,12 +16203,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGene[*].sphn:hasTranscript[*].sphn:hasOrganism.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ] ;
@@ -16654,12 +16228,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGene[*].sphn:hasTranscript[*].sphn:hasProtein" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
+            rr:predicate sphn:hasOrganism ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
-            rr:predicate sphn:hasOrganism ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Protein ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}" ] .
 
@@ -16667,15 +16241,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGene[*].sphn:hasTranscript[*].sphn:hasProtein.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -16692,9 +16266,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGene[*].sphn:hasTranscript[*].sphn:hasProtein.sphn:hasOrganism" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Organism ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}" ] .
@@ -16703,15 +16277,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGene[*].sphn:hasTranscript[*].sphn:hasProtein.sphn:hasOrganism.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -16728,14 +16302,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CopyNumberVariation')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasTotalCopyNumber.id}" ] ;
-            rr:predicate sphn:hasTotalCopyNumber ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
             rr:predicate sphn:hasFeatureLocation ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CopyNumberVariation-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
-            rr:predicate sphn:hasTypeCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
-            rr:predicate sphn:hasFeatureLocation ] ;
+            rr:predicate sphn:hasFeatureLocation ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasTotalCopyNumber.id}" ] ;
+            rr:predicate sphn:hasTotalCopyNumber ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CopyNumberVariation-{id}-sphn-Code-{sphn:hasTypeCode.termid}" ] ;
+            rr:predicate sphn:hasTypeCode ] ;
     rr:subjectMap [ rr:class sphn:CopyNumberVariation ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-CopyNumberVariation-{id}" ] .
 
@@ -16743,12 +16317,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CopyNumberVariation')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Chromosome-{sphn:hasChromosome.id}" ] ;
-            rr:predicate sphn:hasChromosome ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasEndCytobandCode.id}" ] ;
+            rr:predicate sphn:hasEndCytobandCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasStartCytobandCode.id}" ] ;
             rr:predicate sphn:hasStartCytobandCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasEndCytobandCode.id}" ] ;
-            rr:predicate sphn:hasEndCytobandCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Chromosome-{sphn:hasChromosome.id}" ] ;
+            rr:predicate sphn:hasChromosome ] ;
     rr:subjectMap [ rr:class sphn:ChromosomalLocation ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}" ] .
 
@@ -16774,12 +16348,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CopyNumberVariation')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].sphn:hasEndCytobandCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ] ;
@@ -16790,15 +16364,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CopyNumberVariation')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].sphn:hasStartCytobandCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
+            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -16806,17 +16380,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CopyNumberVariation')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
-            rr:predicate sphn:hasReferenceSequence ],
-        [ rr:objectMap [ rml:reference "sphn:hasStart" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasStart ],
+            rr:predicate sphn:hasEnd ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
+            rr:predicate sphn:hasReferenceSequence ],
         [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasCoordinateConvention ],
-        [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
+        [ rr:objectMap [ rml:reference "sphn:hasStart" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasEnd ] ;
+            rr:predicate sphn:hasStart ] ;
     rr:subjectMap [ rr:class sphn:GenomicPosition ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{id}" ] .
 
@@ -16835,12 +16409,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CopyNumberVariation')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].sphn:hasReferenceSequence.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ] ;
@@ -16860,14 +16434,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#CopyNumberVariation')].sphn:hasTotalCopyNumber" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -16902,14 +16476,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
-            rr:predicate sphn:hasFeatureLocation ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GeneFusion-{id}-sphn-Code-{sphn:hasRegulatoryFeature[*].termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GeneFusion-{id}-sphn-Code-{sphn:hasRegulatoryFeature[*].termid}" ] ;
             rr:predicate sphn:hasRegulatoryFeature ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
             rr:predicate sphn:hasFeatureLocation ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{sphn:hasGene[*].id}" ] ;
-            rr:predicate sphn:hasGene ] ;
+            rr:predicate sphn:hasGene ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
+            rr:predicate sphn:hasFeatureLocation ] ;
     rr:subjectMap [ rr:class sphn:GeneFusion ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GeneFusion-{id}" ] .
 
@@ -16948,15 +16522,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].sphn:hasEndCytobandCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -16967,12 +16541,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -16980,17 +16554,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasEnd ],
-        [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasCoordinateConvention ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
-            rr:predicate sphn:hasReferenceSequence ],
+        [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasEnd ],
         [ rr:objectMap [ rml:reference "sphn:hasStart" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasStart ] ;
+            rr:predicate sphn:hasStart ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
+            rr:predicate sphn:hasReferenceSequence ] ;
     rr:subjectMap [ rr:class sphn:GenomicPosition ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{id}" ] .
 
@@ -16998,9 +16572,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].sphn:hasReferenceSequence" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:ReferenceSequence ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}" ] .
@@ -17009,15 +16583,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].sphn:hasReferenceSequence.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -17034,16 +16608,16 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasGene[*]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
-            rr:predicate sphn:hasOrganism ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{sphn:hasTranscript[*].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{sphn:hasTranscript[*].id}" ] ;
             rr:predicate sphn:hasTranscript ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasProtein[*].id}" ] ;
+            rr:predicate sphn:hasProtein ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasProtein[*].id}" ] ;
-            rr:predicate sphn:hasProtein ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
+            rr:predicate sphn:hasOrganism ] ;
     rr:subjectMap [ rr:class sphn:Gene ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{id}" ] .
 
@@ -17051,15 +16625,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasGene[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Gene-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -17076,9 +16650,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasGene[*].sphn:hasOrganism" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Organism ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}" ] .
@@ -17087,12 +16661,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasGene[*].sphn:hasOrganism.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ] ;
@@ -17114,9 +16688,9 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
             rr:predicate sphn:hasOrganism ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Protein ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}" ] .
@@ -17125,15 +16699,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasGene[*].sphn:hasProtein[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -17150,9 +16724,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasGene[*].sphn:hasProtein[*].sphn:hasOrganism" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Organism ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}" ] .
@@ -17161,15 +16735,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasGene[*].sphn:hasProtein[*].sphn:hasOrganism.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -17183,17 +16757,17 @@
     rr:subjectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sourceConceptID}-sphn-Code-{termid}" ] .
 
 :sphnVariantDescriptor_sphnhasGenomicVariation_rangesphnGeneFusion_sphnhasGene_rangesphnGene_sphnhasTranscript_rangesphnTranscript a rr:TriplesMap ;
-    rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasGene[*].sphn:hasTranscript[*]" ;
-            rml:referenceFormulation ql:JSONPath ;
-            rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
-            rr:predicate sphn:hasOrganism ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasProtein.id}" ] ;
+    rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasGene[*].sphn:hasTranscript[*]" ;
+            rml:referenceFormulation ql:JSONPath ;
+            rml:source "patient_data_input.json" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{sphn:hasProtein.id}" ] ;
             rr:predicate sphn:hasProtein ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
-            rr:predicate sphn:hasCode ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
+            rr:predicate sphn:hasOrganism ] ;
     rr:subjectMap [ rr:class sphn:Transcript ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Transcript-{id}" ] .
 
@@ -17201,12 +16775,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasGene[*].sphn:hasTranscript[*].sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ] ;
@@ -17237,15 +16811,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasGene[*].sphn:hasTranscript[*].sphn:hasOrganism.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -17262,12 +16836,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasGene[*].sphn:hasTranscript[*].sphn:hasProtein" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
-            rr:predicate sphn:hasCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
+            rr:predicate sphn:hasOrganism ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{sphn:hasOrganism.id}" ] ;
-            rr:predicate sphn:hasOrganism ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+            rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Protein ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Protein-{id}" ] .
 
@@ -17300,9 +16874,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GeneFusion')].sphn:hasGene[*].sphn:hasTranscript[*].sphn:hasProtein.sphn:hasOrganism" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:Organism ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Organism-{id}" ] .
@@ -17347,10 +16921,10 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
             rr:predicate sphn:hasFeatureLocation ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
-            rr:predicate sphn:hasFeatureLocation ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{sphn:hasDeletedSequence.id}" ] ;
-            rr:predicate sphn:hasDeletedSequence ] ;
+            rr:predicate sphn:hasDeletedSequence ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
+            rr:predicate sphn:hasFeatureLocation ] ;
     rr:subjectMap [ rr:class sphn:GenomicDeletion ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicDeletion-{id}" ] .
 
@@ -17358,13 +16932,13 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDeletion')].sphn:hasDeletedSequence" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasLiteralSequence" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasLiteralSequence ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.id}" ] ;
             rr:predicate sphn:hasDerivedSequence ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasSequenceLength.id}" ] ;
             rr:predicate sphn:hasSequenceLength ],
+        [ rr:objectMap [ rml:reference "sphn:hasLiteralSequence" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasLiteralSequence ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.termid}" ] ;
             rr:predicate sphn:hasDerivedSequence ] ;
     rr:subjectMap [ rr:class sphn:NucleotideSequence ;
@@ -17374,15 +16948,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDeletion')].sphn:hasDeletedSequence.sphn:hasDerivedSequence" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
+            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -17399,14 +16973,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDeletion')].sphn:hasDeletedSequence.sphn:hasSequenceLength" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ] ;
+            rr:predicate sphn:hasUnit ],
+        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasValue ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -17432,12 +17006,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDeletion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasStartCytobandCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Chromosome-{sphn:hasChromosome.id}" ] ;
+            rr:predicate sphn:hasChromosome ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasStartCytobandCode.id}" ] ;
             rr:predicate sphn:hasStartCytobandCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasEndCytobandCode.id}" ] ;
-            rr:predicate sphn:hasEndCytobandCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Chromosome-{sphn:hasChromosome.id}" ] ;
-            rr:predicate sphn:hasChromosome ] ;
+            rr:predicate sphn:hasEndCytobandCode ] ;
     rr:subjectMap [ rr:class sphn:ChromosomalLocation ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}" ] .
 
@@ -17463,15 +17037,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDeletion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].sphn:hasEndCytobandCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -17479,12 +17053,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDeletion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].sphn:hasStartCytobandCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ] ;
@@ -17495,14 +17069,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDeletion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStart" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasStart ],
+        [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasCoordinateConvention ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
             rr:predicate sphn:hasReferenceSequence ],
-        [ rr:objectMap [ rml:reference "sphn:hasStart" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasStart ],
         [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasEnd ] ;
@@ -17524,15 +17098,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDeletion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].sphn:hasReferenceSequence.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -17549,10 +17123,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDelins')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasGenomicPosition.id}" ] ;
-            rr:predicate sphn:hasGenomicPosition ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{sphn:hasDeletedSequence.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{sphn:hasDeletedSequence.id}" ] ;
             rr:predicate sphn:hasDeletedSequence ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasGenomicPosition.id}" ] ;
+            rr:predicate sphn:hasGenomicPosition ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{sphn:hasInsertedSequence.id}" ] ;
             rr:predicate sphn:hasInsertedSequence ] ;
     rr:subjectMap [ rr:class sphn:GenomicDelins ;
@@ -17562,15 +17136,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDelins')].sphn:hasDeletedSequence" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.id}" ] ;
-            rr:predicate sphn:hasDerivedSequence ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.termid}" ] ;
             rr:predicate sphn:hasDerivedSequence ],
         [ rr:objectMap [ rml:reference "sphn:hasLiteralSequence" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasLiteralSequence ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasSequenceLength.id}" ] ;
-            rr:predicate sphn:hasSequenceLength ] ;
+            rr:predicate sphn:hasSequenceLength ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.id}" ] ;
+            rr:predicate sphn:hasDerivedSequence ] ;
     rr:subjectMap [ rr:class sphn:NucleotideSequence ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}" ] .
 
@@ -17581,12 +17155,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -17603,14 +17177,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDelins')].sphn:hasDeletedSequence.sphn:hasSequenceLength" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
-        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -17636,17 +17210,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDelins')].sphn:hasGenomicPosition" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
-            rr:predicate sphn:hasReferenceSequence ],
-        [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStart" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasEnd ],
+            rr:predicate sphn:hasStart ],
         [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasCoordinateConvention ],
-        [ rr:objectMap [ rml:reference "sphn:hasStart" ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
+            rr:predicate sphn:hasReferenceSequence ],
+        [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasStart ] ;
+            rr:predicate sphn:hasEnd ] ;
     rr:subjectMap [ rr:class sphn:GenomicPosition ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{id}" ] .
 
@@ -17692,13 +17266,13 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasSequenceLength.id}" ] ;
             rr:predicate sphn:hasSequenceLength ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.id}" ] ;
-            rr:predicate sphn:hasDerivedSequence ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.termid}" ] ;
             rr:predicate sphn:hasDerivedSequence ],
         [ rr:objectMap [ rml:reference "sphn:hasLiteralSequence" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasLiteralSequence ] ;
+            rr:predicate sphn:hasLiteralSequence ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.id}" ] ;
+            rr:predicate sphn:hasDerivedSequence ] ;
     rr:subjectMap [ rr:class sphn:NucleotideSequence ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}" ] .
 
@@ -17706,12 +17280,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDelins')].sphn:hasInsertedSequence.sphn:hasDerivedSequence" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ] ;
@@ -17731,11 +17305,11 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDelins')].sphn:hasInsertedSequence.sphn:hasSequenceLength" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
-            rr:predicate sphn:hasUnit ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+            rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasComparator ] ;
@@ -17764,9 +17338,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDuplication')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
             rr:predicate sphn:hasFeatureLocation ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
             rr:predicate sphn:hasFeatureLocation ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{sphn:hasNucleotideSequence.id}" ] ;
             rr:predicate sphn:hasNucleotideSequence ] ;
@@ -17777,12 +17351,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDuplication')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Chromosome-{sphn:hasChromosome.id}" ] ;
-            rr:predicate sphn:hasChromosome ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasEndCytobandCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasEndCytobandCode.id}" ] ;
             rr:predicate sphn:hasEndCytobandCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasStartCytobandCode.id}" ] ;
-            rr:predicate sphn:hasStartCytobandCode ] ;
+            rr:predicate sphn:hasStartCytobandCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Chromosome-{sphn:hasChromosome.id}" ] ;
+            rr:predicate sphn:hasChromosome ] ;
     rr:subjectMap [ rr:class sphn:ChromosomalLocation ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}" ] .
 
@@ -17824,15 +17398,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDuplication')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].sphn:hasStartCytobandCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -17840,17 +17414,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDuplication')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
-            rr:predicate sphn:hasReferenceSequence ],
-        [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasCoordinateConvention ],
-        [ rr:objectMap [ rml:reference "sphn:hasStart" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasStart" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasStart ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
+            rr:predicate sphn:hasReferenceSequence ],
         [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasEnd ] ;
+            rr:predicate sphn:hasEnd ],
+        [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasCoordinateConvention ] ;
     rr:subjectMap [ rr:class sphn:GenomicPosition ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{id}" ] .
 
@@ -17858,9 +17432,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDuplication')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].sphn:hasReferenceSequence" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:ReferenceSequence ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}" ] .
@@ -17869,15 +17443,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDuplication')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].sphn:hasReferenceSequence.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -17894,14 +17468,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDuplication')].sphn:hasNucleotideSequence" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasLiteralSequence" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasSequenceLength.id}" ] ;
+            rr:predicate sphn:hasSequenceLength ],
+        [ rr:objectMap [ rml:reference "sphn:hasLiteralSequence" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasLiteralSequence ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasSequenceLength.id}" ] ;
-            rr:predicate sphn:hasSequenceLength ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.termid}" ] ;
-            rr:predicate sphn:hasDerivedSequence ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.id}" ] ;
+            rr:predicate sphn:hasDerivedSequence ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.termid}" ] ;
             rr:predicate sphn:hasDerivedSequence ] ;
     rr:subjectMap [ rr:class sphn:NucleotideSequence ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}" ] .
@@ -17910,12 +17484,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicDuplication')].sphn:hasNucleotideSequence.sphn:hasDerivedSequence" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ] ;
@@ -17968,10 +17542,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInsertion')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{sphn:hasInsertedSequence.id}" ] ;
-            rr:predicate sphn:hasInsertedSequence ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
             rr:predicate sphn:hasFeatureLocation ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{sphn:hasInsertedSequence.id}" ] ;
+            rr:predicate sphn:hasInsertedSequence ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
             rr:predicate sphn:hasFeatureLocation ] ;
     rr:subjectMap [ rr:class sphn:GenomicInsertion ;
@@ -17981,12 +17555,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInsertion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasEndCytobandCode.id}" ] ;
-            rr:predicate sphn:hasEndCytobandCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasStartCytobandCode.id}" ] ;
+            rr:predicate sphn:hasStartCytobandCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Chromosome-{sphn:hasChromosome.id}" ] ;
             rr:predicate sphn:hasChromosome ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasStartCytobandCode.id}" ] ;
-            rr:predicate sphn:hasStartCytobandCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasEndCytobandCode.id}" ] ;
+            rr:predicate sphn:hasEndCytobandCode ] ;
     rr:subjectMap [ rr:class sphn:ChromosomalLocation ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}" ] .
 
@@ -18015,12 +17589,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -18028,15 +17602,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInsertion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].sphn:hasStartCytobandCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -18044,7 +17618,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInsertion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
+            rr:predicate sphn:hasReferenceSequence ],
+        [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasCoordinateConvention ],
         [ rr:objectMap [ rml:reference "sphn:hasStart" ;
@@ -18052,9 +17628,7 @@
             rr:predicate sphn:hasStart ],
         [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasEnd ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
-            rr:predicate sphn:hasReferenceSequence ] ;
+            rr:predicate sphn:hasEnd ] ;
     rr:subjectMap [ rr:class sphn:GenomicPosition ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{id}" ] .
 
@@ -18062,9 +17636,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInsertion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].sphn:hasReferenceSequence" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:ReferenceSequence ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}" ] .
@@ -18073,12 +17647,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInsertion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].sphn:hasReferenceSequence.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ] ;
@@ -18098,15 +17672,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInsertion')].sphn:hasInsertedSequence" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasLiteralSequence" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.id}" ] ;
+            rr:predicate sphn:hasDerivedSequence ],
+        [ rr:objectMap [ rml:reference "sphn:hasLiteralSequence" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasLiteralSequence ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.id}" ] ;
-            rr:predicate sphn:hasDerivedSequence ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.termid}" ] ;
-            rr:predicate sphn:hasDerivedSequence ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasSequenceLength.id}" ] ;
-            rr:predicate sphn:hasSequenceLength ] ;
+            rr:predicate sphn:hasSequenceLength ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.termid}" ] ;
+            rr:predicate sphn:hasDerivedSequence ] ;
     rr:subjectMap [ rr:class sphn:NucleotideSequence ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}" ] .
 
@@ -18117,12 +17691,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ] ;
+            rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -18139,14 +17713,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInsertion')].sphn:hasInsertedSequence.sphn:hasSequenceLength" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ],
         [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasValue ] ;
+            rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{id}" ] .
 
@@ -18185,12 +17759,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInversion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasEndCytobandCode.id}" ] ;
-            rr:predicate sphn:hasEndCytobandCode ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasStartCytobandCode.id}" ] ;
+            rr:predicate sphn:hasStartCytobandCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Chromosome-{sphn:hasChromosome.id}" ] ;
             rr:predicate sphn:hasChromosome ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasStartCytobandCode.id}" ] ;
-            rr:predicate sphn:hasStartCytobandCode ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasEndCytobandCode.id}" ] ;
+            rr:predicate sphn:hasEndCytobandCode ] ;
     rr:subjectMap [ rr:class sphn:ChromosomalLocation ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}" ] .
 
@@ -18216,15 +17790,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInversion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].sphn:hasEndCytobandCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -18232,12 +17806,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInversion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].sphn:hasStartCytobandCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ] ;
@@ -18251,14 +17825,14 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasCoordinateConvention ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
-            rr:predicate sphn:hasReferenceSequence ],
+        [ rr:objectMap [ rml:reference "sphn:hasStart" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasStart ],
         [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasEnd ],
-        [ rr:objectMap [ rml:reference "sphn:hasStart" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasStart ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
+            rr:predicate sphn:hasReferenceSequence ] ;
     rr:subjectMap [ rr:class sphn:GenomicPosition ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{id}" ] .
 
@@ -18277,15 +17851,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInversion')].sphn:hasFeatureLocation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].sphn:hasReferenceSequence.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -18302,14 +17876,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInversion')].sphn:hasNucleotideSequence" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.id}" ] ;
-            rr:predicate sphn:hasDerivedSequence ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasSequenceLength.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Quantity-{sphn:hasSequenceLength.id}" ] ;
             rr:predicate sphn:hasSequenceLength ],
         [ rr:objectMap [ rml:reference "sphn:hasLiteralSequence" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasLiteralSequence ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.termid}" ] ;
+            rr:predicate sphn:hasDerivedSequence ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}-sphn-Code-{sphn:hasDerivedSequence.id}" ] ;
             rr:predicate sphn:hasDerivedSequence ] ;
     rr:subjectMap [ rr:class sphn:NucleotideSequence ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-NucleotideSequence-{id}" ] .
@@ -18343,12 +17917,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicInversion')].sphn:hasNucleotideSequence.sphn:hasSequenceLength" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasComparator ],
-        [ rr:objectMap [ rml:reference "sphn:hasValue" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasValue" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasValue ],
+        [ rr:objectMap [ rml:reference "sphn:hasComparator.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasComparator ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Unit-{sphn:hasUnit.id}" ] ;
             rr:predicate sphn:hasUnit ] ;
     rr:subjectMap [ rr:class sphn:Quantity ;
@@ -18376,9 +17950,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTranslocation')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
             rr:predicate sphn:hasBreakpoint ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
             rr:predicate sphn:hasBreakpoint ] ;
     rr:subjectMap [ rr:class sphn:GenomicTranslocation ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicTranslocation-{id}" ] .
@@ -18389,10 +17963,10 @@
             rml:source "patient_data_input.json" ] ;
     rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Chromosome-{sphn:hasChromosome.id}" ] ;
             rr:predicate sphn:hasChromosome ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasEndCytobandCode.id}" ] ;
-            rr:predicate sphn:hasEndCytobandCode ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasStartCytobandCode.id}" ] ;
-            rr:predicate sphn:hasStartCytobandCode ] ;
+            rr:predicate sphn:hasStartCytobandCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasEndCytobandCode.id}" ] ;
+            rr:predicate sphn:hasEndCytobandCode ] ;
     rr:subjectMap [ rr:class sphn:ChromosomalLocation ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}" ] .
 
@@ -18418,12 +17992,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTranslocation')].sphn:hasBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].sphn:hasEndCytobandCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ] ;
@@ -18437,12 +18011,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ] ;
+            rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -18450,7 +18024,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTranslocation')].sphn:hasBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
+            rr:predicate sphn:hasReferenceSequence ],
+        [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasEnd ],
         [ rr:objectMap [ rml:reference "sphn:hasStart" ;
@@ -18458,9 +18034,7 @@
             rr:predicate sphn:hasStart ],
         [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
                     rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasCoordinateConvention ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
-            rr:predicate sphn:hasReferenceSequence ] ;
+            rr:predicate sphn:hasCoordinateConvention ] ;
     rr:subjectMap [ rr:class sphn:GenomicPosition ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{id}" ] .
 
@@ -18479,15 +18053,15 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTranslocation')].sphn:hasBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].sphn:hasReferenceSequence.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -18504,13 +18078,13 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTransposition')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasInsertionBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasInsertionBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
             rr:predicate sphn:hasInsertionBreakpoint ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasDeletionBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasDeletionBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
             rr:predicate sphn:hasDeletionBreakpoint ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasInsertionBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasInsertionBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
             rr:predicate sphn:hasInsertionBreakpoint ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sphn:hasDeletionBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')].id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasDeletionBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].id}" ] ;
             rr:predicate sphn:hasDeletionBreakpoint ] ;
     rr:subjectMap [ rr:class sphn:GenomicTransposition ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicTransposition-{id}" ] .
@@ -18582,17 +18156,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTransposition')].sphn:hasDeletionBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
-            rr:predicate sphn:hasReferenceSequence ],
-        [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasEnd ],
-        [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasCoordinateConvention ],
         [ rr:objectMap [ rml:reference "sphn:hasStart" ;
                     rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasStart ] ;
+            rr:predicate sphn:hasStart ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
+            rr:predicate sphn:hasReferenceSequence ],
+        [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasCoordinateConvention ] ;
     rr:subjectMap [ rr:class sphn:GenomicPosition ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{id}" ] .
 
@@ -18611,12 +18185,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTransposition')].sphn:hasDeletionBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].sphn:hasReferenceSequence.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ] ;
@@ -18636,10 +18210,10 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTransposition')].sphn:hasInsertionBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#ChromosomalLocation')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Chromosome-{sphn:hasChromosome.id}" ] ;
-            rr:predicate sphn:hasChromosome ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasEndCytobandCode.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasEndCytobandCode.id}" ] ;
             rr:predicate sphn:hasEndCytobandCode ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Chromosome-{sphn:hasChromosome.id}" ] ;
+            rr:predicate sphn:hasChromosome ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{id}-sphn-Code-{sphn:hasStartCytobandCode.id}" ] ;
             rr:predicate sphn:hasStartCytobandCode ] ;
     rr:subjectMap [ rr:class sphn:ChromosomalLocation ;
@@ -18686,12 +18260,12 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasCodingSystemAndVersion ] ;
+            rr:predicate sphn:hasCodingSystemAndVersion ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ] ;
     rr:subjectMap [ rr:class sphn:Code ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ChromosomalLocation-{sourceConceptID}-sphn-Code-{id}" ] .
 
@@ -18699,17 +18273,17 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTransposition')].sphn:hasInsertionBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasEnd ],
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasCoordinateConvention ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
             rr:predicate sphn:hasReferenceSequence ],
         [ rr:objectMap [ rml:reference "sphn:hasStart" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasStart ],
-        [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasCoordinateConvention ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasEnd ] ;
     rr:subjectMap [ rr:class sphn:GenomicPosition ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{id}" ] .
 
@@ -18717,9 +18291,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTransposition')].sphn:hasInsertionBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].sphn:hasReferenceSequence" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:ReferenceSequence ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}" ] .
@@ -18728,12 +18302,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicTransposition')].sphn:hasInsertionBreakpoint[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#GenomicPosition')].sphn:hasReferenceSequence.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
-        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasName ],
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ] ;
@@ -18760,14 +18334,14 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SingleNucleotideVariation')]" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasAlternateAllele" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasReferenceAllele" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasAlternateAllele ],
+            rr:predicate sphn:hasReferenceAllele ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{sphn:hasGenomicPosition.id}" ] ;
             rr:predicate sphn:hasGenomicPosition ],
-        [ rr:objectMap [ rml:reference "sphn:hasReferenceAllele" ;
+        [ rr:objectMap [ rml:reference "sphn:hasAlternateAllele" ;
                     rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasReferenceAllele ] ;
+            rr:predicate sphn:hasAlternateAllele ] ;
     rr:subjectMap [ rr:class sphn:SingleNucleotideVariation ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SingleNucleotideVariation-{id}" ] .
 
@@ -18778,14 +18352,14 @@
     rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCoordinateConvention.iri" ;
                     rr:termType rr:IRI ] ;
             rr:predicate sphn:hasCoordinateConvention ],
+        [ rr:objectMap [ rml:reference "sphn:hasStart" ;
+                    rr:datatype xsd:double ] ;
+            rr:predicate sphn:hasStart ],
         [ rr:objectMap [ rml:reference "sphn:hasEnd" ;
                     rr:datatype xsd:double ] ;
             rr:predicate sphn:hasEnd ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{sphn:hasReferenceSequence.id}" ] ;
-            rr:predicate sphn:hasReferenceSequence ],
-        [ rr:objectMap [ rml:reference "sphn:hasStart" ;
-                    rr:datatype xsd:double ] ;
-            rr:predicate sphn:hasStart ] ;
+            rr:predicate sphn:hasReferenceSequence ] ;
     rr:subjectMap [ rr:class sphn:GenomicPosition ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-GenomicPosition-{id}" ] .
 
@@ -18793,9 +18367,9 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SingleNucleotideVariation')].sphn:hasGenomicPosition.sphn:hasReferenceSequence" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
             rr:predicate sphn:hasCode ],
-        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.id}" ] ;
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}-sphn-Code-{sphn:hasCode.termid}" ] ;
             rr:predicate sphn:hasCode ] ;
     rr:subjectMap [ rr:class sphn:ReferenceSequence ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-ReferenceSequence-{id}" ] .
@@ -18804,12 +18378,12 @@
     rml:logicalSource [ rml:iterator "$.content.sphn:VariantDescriptor[*].sphn:hasGenomicVariation[?(@.target_concept=='https://biomedit.ch/rdf/sphn-schema/sphn#SingleNucleotideVariation')].sphn:hasGenomicPosition.sphn:hasReferenceSequence.sphn:hasCode" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasName" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasName ],
-        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasIdentifier ],
+        [ rr:objectMap [ rml:reference "sphn:hasName" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasName ],
         [ rr:objectMap [ rml:reference "sphn:hasCodingSystemAndVersion" ;
                     rr:datatype xsd:string ] ;
             rr:predicate sphn:hasCodingSystemAndVersion ] ;
@@ -18860,13 +18434,13 @@
     rml:logicalSource [ rml:iterator "$.sphn:DataProvider" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Department-{sphn:hasDepartment.id}" ] ;
+    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasCategory.iri" ;
+                    rr:termType rr:IRI ] ;
+            rr:predicate sphn:hasCategory ],
+        [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-Department-{sphn:hasDepartment.id}" ] ;
             rr:predicate sphn:hasDepartment ],
         [ rr:objectMap [ rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProvider-{id}-sphn-Code-{sphn:hasInstitutionCode.id}" ] ;
-            rr:predicate sphn:hasInstitutionCode ],
-        [ rr:objectMap [ rml:reference "sphn:hasCategory.iri" ;
-                    rr:termType rr:IRI ] ;
-            rr:predicate sphn:hasCategory ] ;
+            rr:predicate sphn:hasInstitutionCode ] ;
     rr:subjectMap [ rr:class sphn:DataProvider ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-DataProvider-{id}" ] .
 
@@ -18874,13 +18448,13 @@
     rml:logicalSource [ rml:iterator "$.sphn:SubjectPseudoIdentifier" ;
             rml:referenceFormulation ql:JSONPath ;
             rml:source "patient_data_input.json" ] ;
-    rr:predicateObjectMap [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
-                    rr:datatype xsd:string ] ;
-            rr:predicate sphn:hasIdentifier ],
+    rr:predicateObjectMap [ rr:objectMap [ rr:parentTriplesMap :sphnDataProvider ] ;
+            rr:predicate sphn:hasDataProvider ],
         [ rr:objectMap [ rml:reference "sphn:hasSharedIdentifier" ;
                     rr:datatype xsd:anyURI ] ;
             rr:predicate sphn:hasSharedIdentifier ],
-        [ rr:objectMap [ rr:parentTriplesMap :sphnDataProvider ] ;
-            rr:predicate sphn:hasDataProvider ] ;
+        [ rr:objectMap [ rml:reference "sphn:hasIdentifier" ;
+                    rr:datatype xsd:string ] ;
+            rr:predicate sphn:hasIdentifier ] ;
     rr:subjectMap [ rr:class sphn:SubjectPseudoIdentifier ;
             rr:template "https://biomedit.ch/rdf/sphn-resource/DATA-PROVIDER-ID-sphn-SubjectPseudoIdentifier-{id}" ] .
diff --git a/schemas/pre-release-testing/sphn_rdf_schema.ttl b/schemas/pre-release-testing/sphn_rdf_schema.ttl
index b9a9fa548721fead9f92f736f206179debdd4eb2..37a6314a89aee42b6f3edc060acf77b176b6a71b 100644
--- a/schemas/pre-release-testing/sphn_rdf_schema.ttl
+++ b/schemas/pre-release-testing/sphn_rdf_schema.ttl
@@ -1426,30 +1426,12 @@ sphn-deprecated:CentralVenousPressure a owl:Class ;
     owl:deprecated true ;
     skos:definition "Central Venous Pressure" .
 
-sphn-deprecated:GenomicDeletion a owl:Class ;
-    rdfs:label "Genomic Deletion" ;
-    rdfs:subClassOf sphn:Deprecated ;
-    owl:deprecated true ;
-    skos:definition "Genomic Deletion" .
-
-sphn-deprecated:GenomicInsertion a owl:Class ;
-    rdfs:label "Genomic Insertion" ;
-    rdfs:subClassOf sphn:Deprecated ;
-    owl:deprecated true ;
-    skos:definition "Genomic Insertion" .
-
 sphn-deprecated:MeasurementMethod a owl:Class ;
     rdfs:label "Measurement Method" ;
     rdfs:subClassOf sphn:Deprecated ;
     owl:deprecated true ;
     skos:definition "Measurement Method" .
 
-sphn-deprecated:SingleNucleotideVariation a owl:Class ;
-    rdfs:label "Single Nucleotide Variation" ;
-    rdfs:subClassOf sphn:Deprecated ;
-    owl:deprecated true ;
-    skos:definition "Single Nucleotide Variation" .
-
 sphn-deprecated:SystemicArterialBloodPressure a owl:Class ;
     rdfs:label "Systemic Arterial Blood Pressure" ;
     rdfs:subClassOf sphn:Deprecated ;
@@ -1467,9 +1449,9 @@ sphn-hgnc:HGNC rdfs:subClassOf sphn:Terminology .
 <https://biomedit.ch/rdf/sphn-schema/sphn> a owl:Ontology ;
     dc:description "The SPHN RDF Schema describing concepts defined in the official SPHN Dataset" ;
     dc:rights "© Copyright 2025, Personalized Health Informatics Group (PHI), SIB Swiss Institute of Bioinformatics" ;
-    dc:title "The SPHN RDF Schema" ;
+    dc:title "The SPHN RDF Schema Pre-Release 2025.1" ;
     dcterms:bibliographicCitation "https://doi.org/10.1038/s41597-023-02028-y" ;
-    dcterms:created "2024-10-08T08:05:54" ;
+    dcterms:created "2024-10-14T11:55:05" ;
     dcterms:license <https://creativecommons.org/licenses/by/4.0/> ;
     owl:imports <http://purl.obolibrary.org/obo/eco/releases/2023-09-03/eco.owl>,
         <http://purl.obolibrary.org/obo/genepio/releases/2023-08-19/genepio.owl>,
@@ -2233,10 +2215,6 @@ icd-o-3:ICDOsixthDigit rdfs:subClassOf sphn-icd-o-3:ICD-O-3 .
 
 icd-o-3:ImmunophenoTypeCode rdfs:subClassOf sphn-icd-o-3:ICD-O-3 .
 
-icd-o-3:MorphologicalGroup rdfs:subClassOf sphn-icd-o-3:ICD-O-3 .
-
-icd-o-3:TopographyGroup rdfs:subClassOf sphn-icd-o-3:ICD-O-3 .
-
 edam:operation_0004 rdfs:subClassOf sphn-edam:EDAM .
 
 eco:0000217 rdfs:subClassOf sphn-eco:ECO .
@@ -2295,6 +2273,12 @@ sphn-deprecated:FOPHProcedure a owl:Class ;
     owl:deprecated true ;
     skos:definition "FOPH Procedure" .
 
+sphn-deprecated:GeneticVariation a owl:Class ;
+    rdfs:label "Genetic Variation" ;
+    rdfs:subClassOf sphn:Deprecated ;
+    owl:deprecated true ;
+    skos:definition "Genetic Variation" .
+
 sphn-deprecated:ICDODiagnosis a owl:Class ;
     rdfs:label "ICD-O Diagnosis" ;
     rdfs:subClassOf sphn:Deprecated ;
@@ -2323,6 +2307,8 @@ chop:CHOP rdfs:subClassOf sphn:Terminology .
 
 sphn-efo:EFO rdfs:subClassOf sphn:Terminology .
 
+oncotree:TISSUE rdfs:subClassOf sphn:Terminology .
+
 ucum:UCUM rdfs:subClassOf sphn:Terminology .
 
 sphn:GenomicTranslocation a owl:Class ;
@@ -2333,11 +2319,15 @@ sphn:GenomicTranslocation a owl:Class ;
                         owl:onProperty sphn:hasBreakpoint ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasBreakpoint ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:GenomicPosition sphn:ChromosomalLocation ) ] ] ) ],
+                                owl:unionOf ( sphn:ChromosomalLocation sphn:GenomicPosition ) ] ] ) ],
         sphn:GenomicVariation ;
     owl:equivalentClass so:0000199 ;
     skos:definition "a sequence change where, compared to a reference sequence, from a specific nucleotide position (the break point), all nucleotides upstream derive from another chromosome then those downstream" .
 
+icd-o-3:MorphologicalGroup rdfs:subClassOf sphn-icd-o-3:ICD-O-3 .
+
+icd-o-3:TopographyGroup rdfs:subClassOf sphn-icd-o-3:ICD-O-3 .
+
 edam:format_1915 rdfs:subClassOf sphn-edam:EDAM .
 
 sphn-deprecated:CircumferenceMeasure a owl:Class ;
@@ -2378,7 +2368,7 @@ sphn:GenomicDuplication a owl:Class ;
                         owl:onProperty sphn:hasFeatureLocation ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasFeatureLocation ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:GenomicPosition sphn:ChromosomalLocation ) ] ] ) ],
+                                owl:unionOf ( sphn:ChromosomalLocation sphn:GenomicPosition ) ] ] ) ],
         sphn:GenomicVariation ;
     owl:equivalentClass so:1000035 ;
     skos:definition "sequence alteration where, in comparison to a reference sequence, an additional copy of one or more nucleotides or amino acids is inserted immediately downstream of the original sequence at the 3' end" .
@@ -2386,15 +2376,6 @@ sphn:GenomicDuplication a owl:Class ;
 sphn:GenomicInversion a owl:Class ;
     rdfs:label "Genomic Inversion" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFeatureLocation ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFeatureLocation ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasFeatureLocation ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:GenomicPosition sphn:ChromosomalLocation ) ] ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasNucleotideSequence ] [ a owl:Restriction ;
@@ -2402,6 +2383,15 @@ sphn:GenomicInversion a owl:Class ;
                         owl:onProperty sphn:hasNucleotideSequence ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasNucleotideSequence ;
                         owl:someValuesFrom sphn:NucleotideSequence ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasFeatureLocation ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasFeatureLocation ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasFeatureLocation ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( sphn:ChromosomalLocation sphn:GenomicPosition ) ] ] ) ],
         sphn:GenomicVariation ;
     owl:equivalentClass so:1000036 ;
     skos:definition "a sequence change where, compared to a reference sequence, more than one nucleotide replacing the original sequence is the reverse complement of the original sequence" .
@@ -2416,7 +2406,7 @@ sphn:GenomicTransposition a owl:Class ;
                         owl:onProperty sphn:hasDeletionBreakpoint ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasDeletionBreakpoint ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:GenomicPosition sphn:ChromosomalLocation ) ] ] ) ],
+                                owl:unionOf ( sphn:ChromosomalLocation sphn:GenomicPosition ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -2425,7 +2415,7 @@ sphn:GenomicTransposition a owl:Class ;
                         owl:onProperty sphn:hasInsertionBreakpoint ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasInsertionBreakpoint ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:GenomicPosition sphn:ChromosomalLocation ) ] ] ) ],
+                                owl:unionOf ( sphn:ChromosomalLocation sphn:GenomicPosition ) ] ] ) ],
         sphn:GenomicVariation ;
     owl:equivalentClass so:0000453 ;
     skos:definition "a genomic alteration in which a large segment of DNA is relocated from one site in the genome to a different site, when compared to a reference sequence." .
@@ -2806,7 +2796,7 @@ sphn:GenomicDeletion a owl:Class ;
                         owl:onProperty sphn:hasFeatureLocation ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasFeatureLocation ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:GenomicPosition sphn:ChromosomalLocation ) ] ] ) ],
+                                owl:unionOf ( sphn:ChromosomalLocation sphn:GenomicPosition ) ] ] ) ],
         sphn:GenomicVariation ;
     owl:equivalentClass so:0000159 ;
     skos:definition "genetic variant involving the deletion of a specific location in a DNA sequence" .
@@ -2821,7 +2811,7 @@ sphn:GenomicInsertion a owl:Class ;
                         owl:onProperty sphn:hasFeatureLocation ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasFeatureLocation ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:GenomicPosition sphn:ChromosomalLocation ) ] ] ) ],
+                                owl:unionOf ( sphn:ChromosomalLocation sphn:GenomicPosition ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -2849,7 +2839,7 @@ sphn:Laterality a owl:Class ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:24028007 snomed:66459002 snomed:7771000 snomed:51440002 ) ] ] ) ],
+                                owl:unionOf ( snomed:51440002 snomed:7771000 snomed:66459002 snomed:24028007 ) ] ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass loinc:20228-3 ;
     skos:definition "localization with respect to the side of the body" ;
@@ -2904,12 +2894,6 @@ sphn:SequencingInstrument a owl:Class ;
 sphn:SingleNucleotideVariation a owl:Class ;
     rdfs:label "Single Nucleotide Variation" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasReferenceAllele ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasReferenceAllele ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasGenomicPosition ] [ a owl:Restriction ;
@@ -2923,6 +2907,12 @@ sphn:SingleNucleotideVariation a owl:Class ;
                         owl:onProperty sphn:hasAlternateAllele ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAlternateAllele ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasReferenceAllele ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasReferenceAllele ] ) ],
         sphn:GenomicVariation ;
     owl:equivalentClass so:0001483 ;
     skos:definition "single nucleotide change in a DNA sequence at a specific location" .
@@ -3175,14 +3165,6 @@ sphn:hasExposure a owl:ObjectProperty ;
     rdfs:subPropertyOf sphn:SPHNAttributeObject ;
     skos:definition "exposure associated to the concept" .
 
-sphn:hasFlowRate a owl:ObjectProperty ;
-    rdfs:label "has flow rate" ;
-    rdfs:domain [ a owl:Class ;
-            owl:unionOf ( sphn:OxygenAdministrationEvent sphn:SPHNConcept ) ] ;
-    rdfs:range sphn:Quantity ;
-    rdfs:subPropertyOf sphn:hasQuantity ;
-    skos:definition "flow rate associated to the concept" .
-
 sphn:hasFractionOfInspiredOxygen a owl:ObjectProperty ;
     rdfs:label "has fraction of inspired oxygen" ;
     rdfs:domain [ a owl:Class ;
@@ -3191,14 +3173,6 @@ sphn:hasFractionOfInspiredOxygen a owl:ObjectProperty ;
     rdfs:subPropertyOf sphn:SPHNAttributeObject ;
     skos:definition "fraction of inspired oxygen associated to the concept" .
 
-sphn:hasFractionsNumber a owl:ObjectProperty ;
-    rdfs:label "has fractions number" ;
-    rdfs:domain [ a owl:Class ;
-            owl:unionOf ( sphn:RadiotherapyProcedure sphn:SPHNConcept ) ] ;
-    rdfs:range sphn:Quantity ;
-    rdfs:subPropertyOf sphn:hasQuantity ;
-    skos:definition "number of fractions applied during an event" .
-
 sphn:hasFrequency a owl:ObjectProperty ;
     rdfs:label "has frequency" ;
     rdfs:domain [ a owl:Class ;
@@ -3504,7 +3478,7 @@ sphn:Allergen a owl:Class ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn-atc:ATC snomed:138875005 sphn:Code ) ] ] ) ],
+                                owl:unionOf ( snomed:138875005 sphn:Code sphn-atc:ATC ) ] ] ) ],
         sphn:SPHNConcept ;
     skos:definition "any substance, product or physical force producing immediate hypersensitivity" ;
     skos:note "sphn:hasCode allowed coding system: SNOMED CT, ATC, GTIN" .
@@ -3522,12 +3496,6 @@ sphn:BodySurfaceArea_calculationMethod a owl:Class ;
 sphn:Circumference a owl:Class ;
     rdfs:label "Circumference" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
@@ -3535,6 +3503,12 @@ sphn:Circumference a owl:Class ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasQuantity ;
                         owl:someValuesFrom sphn:Quantity ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] ) ],
         sphn:Result ;
     owl:equivalentClass snomed:248365001 ;
     skos:definition "circumference of a body site" ;
@@ -3543,12 +3517,6 @@ sphn:Circumference a owl:Class ;
 sphn:FractionOfInspiredOxygen a owl:Class ;
     rdfs:label "Fraction Of Inspired Oxygen" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
@@ -3562,6 +3530,12 @@ sphn:FractionOfInspiredOxygen a owl:Class ;
                                 owl:someValuesFrom [ a owl:Restriction ;
                                         owl:onProperty sphn:hasCode ;
                                         owl:someValuesFrom ucum:percent ] ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] ) ],
         sphn:Result ;
     owl:equivalentClass snomed:250774007 ;
     skos:definition "value of the fraction of inspired oxygen (FiO2) in a defined setting" .
@@ -3569,6 +3543,15 @@ sphn:FractionOfInspiredOxygen a owl:Class ;
 sphn:GeneFusion a owl:Class ;
     rdfs:label "Gene Fusion" ;
     rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasFeatureLocation ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasFeatureLocation ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasFeatureLocation ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( sphn:ChromosomalLocation sphn:GenomicPosition ) ] ] ) ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasGene ] [ a owl:Restriction ;
@@ -3580,15 +3563,6 @@ sphn:GeneFusion a owl:Class ;
                         owl:onProperty sphn:hasRegulatoryFeature ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasRegulatoryFeature ;
                         owl:someValuesFrom so:0005836 ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFeatureLocation ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFeatureLocation ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasFeatureLocation ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:GenomicPosition sphn:ChromosomalLocation ) ] ] ) ],
         sphn:GenomicVariation ;
     owl:equivalentClass so:0001565 ;
     skos:definition "the joining of two or more genes resulting in a chimeric transcript and/or a novel interaction" .
@@ -3596,17 +3570,17 @@ sphn:GeneFusion a owl:Class ;
 sphn:GenePanel a owl:Class ;
     rdfs:label "Gene Panel" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasDataFile ;
-                        owl:someValuesFrom sphn:DataFile ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasFocusGene ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasFocusGene ;
                         owl:someValuesFrom sphn:Gene ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDataFile ;
+                        owl:someValuesFrom sphn:DataFile ] ) ],
         sphn:SPHNConcept ;
     skos:definition "collection of genes that have been grouped for testing" ;
     skos:scopeNote "For sphn:hasDataFile, instances of sphn:TimeSeriesDataFile are not allowed" .
@@ -3616,11 +3590,11 @@ sphn:GenomicDelins a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasInsertedSequence ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasGenomicPosition ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasInsertedSequence ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasInsertedSequence ;
-                        owl:someValuesFrom sphn:NucleotideSequence ] ) ],
+                        owl:onProperty sphn:hasGenomicPosition ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasGenomicPosition ;
+                        owl:someValuesFrom sphn:GenomicPosition ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -3632,11 +3606,11 @@ sphn:GenomicDelins a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasGenomicPosition ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasInsertedSequence ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasGenomicPosition ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasGenomicPosition ;
-                        owl:someValuesFrom sphn:GenomicPosition ] ) ],
+                        owl:onProperty sphn:hasInsertedSequence ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasInsertedSequence ;
+                        owl:someValuesFrom sphn:NucleotideSequence ] ) ],
         sphn:GenomicVariation ;
     owl:equivalentClass so:1000032 ;
     skos:definition "genomic variation in which one or more nucleotides are replaced by different nucleotides relative to a reference sequence, and it is neither a substitution nor an inversion" .
@@ -3702,14 +3676,6 @@ sphn:ReferenceSequence a owl:Class ;
 sphn:SubjectPseudoIdentifier a owl:Class ;
     rdfs:label "Subject Pseudo Identifier" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDataProvider ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDataProvider ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasDataProvider ;
-                        owl:someValuesFrom sphn:DataProvider ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasIdentifier ] [ a owl:Restriction ;
@@ -3721,16 +3687,21 @@ sphn:SubjectPseudoIdentifier a owl:Class ;
                         owl:onProperty sphn:hasSharedIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSharedIdentifier ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDataProvider ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDataProvider ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDataProvider ;
+                        owl:someValuesFrom sphn:DataProvider ] ) ],
         sphn:SPHNConcept ;
     skos:definition "a coded unique identifier assigned by a data provider for a specific project to conceal the identity of an individual" ;
     sphn:subjectToDeIdentification true .
 
 sphn:TherapeuticArea a owl:Class ;
     rdfs:label "Therapeutic Area" ;
-    rdfs:subClassOf [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
+    rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSpecialtyName ] [ a owl:Restriction ;
@@ -3738,6 +3709,9 @@ sphn:TherapeuticArea a owl:Class ;
                         owl:onProperty sphn:hasSpecialtyName ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasSpecialtyName ;
                         owl:someValuesFrom sphn:TherapeuticArea_specialtyName ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:394658006 ;
     skos:definition "professional health care specialization" .
@@ -3761,7 +3735,7 @@ sphn:Transplant a owl:Class ;
                         owl:onProperty sphn:hasGraftTypeCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasGraftTypeCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:7970006 snomed:15879007 ) ] ] ) ],
+                                owl:unionOf ( snomed:15879007 snomed:7970006 ) ] ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:24486003 ;
     skos:definition "transplanted organ or tissue from self or donor, including, e.g., kidney graft or bone marrow fluid" ;
@@ -3770,31 +3744,23 @@ sphn:Transplant a owl:Class ;
 sphn:VariantNotation a owl:Class ;
     rdfs:label "Variant Notation" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasValue ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasValue ;
-                        owl:someValuesFrom xsd:string ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasCodingSystemAndVersion ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasCodingSystemAndVersion ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasValue ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasValue ;
+                        owl:someValuesFrom xsd:string ] ) ],
         sphn:SPHNConcept ;
     skos:definition "description of the variant using a specific nomenclature" .
 
 sphn:VitalStatus a owl:Class ;
     rdfs:label "Vital Status" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDeath ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDeath ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasDeath ;
-                        owl:someValuesFrom sphn:Death ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
@@ -3803,6 +3769,14 @@ sphn:VitalStatus a owl:Class ;
                         owl:onProperty sphn:hasCode ;
                         owl:someValuesFrom [ a owl:Class ;
                                 owl:unionOf ( snomed:399307001 snomed:438949009 ) ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDeath ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDeath ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDeath ;
+                        owl:someValuesFrom sphn:Death ] ) ],
         sphn:Result ;
     skos:definition "state or condition of being living or deceased" ;
     skos:scopeNote "sphn:hasCode no subclasses allowed" ;
@@ -3882,6 +3856,22 @@ sphn:hasEntryCount a owl:ObjectProperty ;
     rdfs:subPropertyOf sphn:hasQuantity ;
     skos:definition "count of entries in the concept" .
 
+sphn:hasFlowRate a owl:ObjectProperty ;
+    rdfs:label "has flow rate" ;
+    rdfs:domain [ a owl:Class ;
+            owl:unionOf ( sphn:OxygenAdministrationEvent sphn:SPHNConcept ) ] ;
+    rdfs:range sphn:Quantity ;
+    rdfs:subPropertyOf sphn:hasQuantity ;
+    skos:definition "flow rate associated to the concept" .
+
+sphn:hasFractionsNumber a owl:ObjectProperty ;
+    rdfs:label "has fractions number" ;
+    rdfs:domain [ a owl:Class ;
+            owl:unionOf ( sphn:RadiotherapyProcedure sphn:SPHNConcept ) ] ;
+    rdfs:range sphn:Quantity ;
+    rdfs:subPropertyOf sphn:hasQuantity ;
+    skos:definition "number of fractions applied during an event" .
+
 sphn:hasGene a owl:ObjectProperty ;
     rdfs:label "has gene" ;
     rdfs:domain [ a owl:Class ;
@@ -4049,6 +4039,12 @@ sphn:hasYear a owl:DatatypeProperty ;
 sphn:AdministrativeSex a owl:Class ;
     rdfs:label "Administrative Sex" ;
     rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasRecordDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasRecordDateTime ] ) ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
@@ -4066,12 +4062,6 @@ sphn:AdministrativeSex a owl:Class ;
         [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRecordDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRecordDateTime ] ) ],
         sphn:SPHNConcept ;
     skos:definition "the sex of the individual used for administrative purposes" ;
     skos:scopeNote "sphn:hasCode no subclasses allowed" ;
@@ -4080,6 +4070,12 @@ sphn:AdministrativeSex a owl:Class ;
 sphn:Admission a owl:Class ;
     rdfs:label "Admission" ;
     rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] ) ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasOriginLocation ] [ a owl:Restriction ;
@@ -4087,12 +4083,6 @@ sphn:Admission a owl:Class ;
                         owl:onProperty sphn:hasOriginLocation ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasOriginLocation ;
                         owl:someValuesFrom sphn:Location ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:305056002 ;
     skos:definition "admission of a patient to the healthcare provider institute" .
@@ -4100,14 +4090,6 @@ sphn:Admission a owl:Class ;
 sphn:BodyHeight a owl:Class ;
     rdfs:label "Body Height" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDataDetermination ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDataDetermination ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasDataDetermination ;
-                        owl:someValuesFrom sphn:DataDetermination ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
@@ -4121,6 +4103,14 @@ sphn:BodyHeight a owl:Class ;
                         owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDataDetermination ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDataDetermination ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDataDetermination ;
+                        owl:someValuesFrom sphn:DataDetermination ] ) ],
         sphn:Result ;
     owl:equivalentClass snomed:50373000,
         loinc:8302-2 ;
@@ -4131,11 +4121,11 @@ sphn:BodyTemperature a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasDataFile ;
-                        owl:someValuesFrom sphn:TimeSeriesDataFile ] ) ],
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasQuantity ;
+                        owl:someValuesFrom sphn:Quantity ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -4145,11 +4135,11 @@ sphn:BodyTemperature a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasQuantity ;
-                        owl:someValuesFrom sphn:Quantity ] ) ],
+                        owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDataFile ;
+                        owl:someValuesFrom sphn:TimeSeriesDataFile ] ) ],
         sphn:Result ;
     owl:equivalentClass snomed:386725007,
         loinc:8310-5 ;
@@ -4187,6 +4177,14 @@ sphn:BodyWeight a owl:Class ;
 sphn:CardiacOutput a owl:Class ;
     rdfs:label "Cardiac Output" ;
     rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasQuantity ;
+                        owl:someValuesFrom sphn:Quantity ] ) ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
@@ -4200,14 +4198,6 @@ sphn:CardiacOutput a owl:Class ;
                         owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasDataFile ;
                         owl:someValuesFrom sphn:TimeSeriesDataFile ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasQuantity ;
-                        owl:someValuesFrom sphn:Quantity ] ) ],
         sphn:Result ;
     owl:equivalentClass snomed:82799009 ;
     skos:definition "volume of blood passing through the heart per unit of time" .
@@ -4222,7 +4212,7 @@ sphn:CareHandling a owl:Class ;
                         owl:onProperty sphn:hasTypeCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasTypeCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:304903009 snomed:394656005 snomed:371883000 ) ] ] ) ],
+                                owl:unionOf ( snomed:371883000 snomed:304903009 snomed:394656005 ) ] ] ) ],
         [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
@@ -4234,6 +4224,15 @@ sphn:CareHandling a owl:Class ;
 sphn:CivilStatus a owl:Class ;
     rdfs:label "Civil Status" ;
     rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( snomed:33553000 snomed:87915002 snomed:266945001 snomed:20295000 snomed:14012001 snomed:125681006 ) ] ] ) ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
@@ -4245,15 +4244,6 @@ sphn:CivilStatus a owl:Class ;
                         owl:onProperty sphn:hasEventDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasEventDateTime ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:266945001 snomed:20295000 snomed:87915002 snomed:14012001 snomed:125681006 snomed:33553000 ) ] ] ) ],
         [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
@@ -4272,7 +4262,16 @@ sphn:CopyNumberVariation a owl:Class ;
                         owl:onProperty sphn:hasTypeCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasTypeCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( so:0001742 so:0001743 ) ] ] ) ],
+                                owl:unionOf ( so:0001743 so:0001742 ) ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasFeatureLocation ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasFeatureLocation ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasFeatureLocation ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( sphn:ChromosomalLocation sphn:GenomicPosition ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -4287,15 +4286,6 @@ sphn:CopyNumberVariation a owl:Class ;
                                 owl:someValuesFrom [ a owl:Restriction ;
                                         owl:onProperty sphn:hasCode ;
                                         owl:someValuesFrom ucum:cblnbcbr ] ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFeatureLocation ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFeatureLocation ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasFeatureLocation ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:GenomicPosition sphn:ChromosomalLocation ) ] ] ) ],
         sphn:GenomicVariation ;
     owl:equivalentClass so:0001019 ;
     skos:definition "structural genomic variant characterized by relative changes in the number of copies of a specific genomic segment compared to a reference sequence" ;
@@ -4306,17 +4296,17 @@ sphn:Discharge a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTargetLocation ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTargetLocation ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasTargetLocation ;
-                        owl:someValuesFrom sphn:Location ] ) ],
+                        owl:onProperty sphn:hasDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasTargetLocation ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] ) ],
+                        owl:onProperty sphn:hasTargetLocation ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasTargetLocation ;
+                        owl:someValuesFrom sphn:Location ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:58000006 ;
     skos:definition "discharge of an individual from the healthcare provider institute" .
@@ -4324,12 +4314,6 @@ sphn:Discharge a owl:Class ;
 sphn:FollowUp a owl:Class ;
     rdfs:label "Follow Up" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
@@ -4337,9 +4321,18 @@ sphn:FollowUp a owl:Class ;
                         owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasResult ;
                         owl:someValuesFrom sphn:VitalStatus ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -4349,12 +4342,9 @@ sphn:FollowUp a owl:Class ;
                         owl:onProperty sphn:hasCode ;
                         owl:someValuesFrom [ a owl:Class ;
                                 owl:unionOf ( snomed:386473003 snomed:281036007 ) ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         sphn:SPHNConcept ;
     skos:definition "procedure for following up on the patient status" ;
     skos:scopeNote "sphn:hasCode no subclasses allowed" .
@@ -4364,17 +4354,17 @@ sphn:Hash a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAlgorithm ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAlgorithm ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasAlgorithm ;
-                        owl:someValuesFrom sphn:Hash_algorithm ] ) ],
+                        owl:onProperty sphn:hasStringValue ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAlgorithm ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStringValue ] ) ],
+                        owl:onProperty sphn:hasAlgorithm ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAlgorithm ;
+                        owl:someValuesFrom sphn:Hash_algorithm ] ) ],
         sphn:SPHNConcept ;
     skos:definition "irreversible unique number computed on an information entity used to check its validity and integrity" .
 
@@ -4394,12 +4384,6 @@ sphn:OxygenSaturation a owl:Class ;
                                 owl:someValuesFrom [ a owl:Restriction ;
                                         owl:onProperty sphn:hasCode ;
                                         owl:someValuesFrom ucum:percent ] ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -4408,19 +4392,19 @@ sphn:OxygenSaturation a owl:Class ;
                         owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasDataFile ;
                         owl:someValuesFrom sphn:TimeSeriesDataFile ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] ) ],
         sphn:Result ;
     owl:equivalentClass snomed:103228002 ;
     skos:definition "fraction of oxygen present in the blood" .
 
 sphn:ReferenceInterpretation a owl:Class ;
     rdfs:label "Reference Interpretation" ;
-    rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] ) ],
-        [ a owl:Restriction ;
+    rdfs:subClassOf [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
@@ -4431,9 +4415,6 @@ sphn:ReferenceInterpretation a owl:Class ;
                         owl:onProperty sphn:hasInput ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasInput ;
                         owl:someValuesFrom sphn:Result ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasStandardGuideline ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -4442,6 +4423,15 @@ sphn:ReferenceInterpretation a owl:Class ;
                         owl:onProperty sphn:hasOutput ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasOutput ;
                         owl:someValuesFrom sphn:ReferenceInterpretationResult ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasStandardGuideline ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] ) ],
         sphn:Interpretation ;
     skos:definition "process of making sense of a quantitative result to derive meaningful conclusions in comparison to a reference" ;
     skos:scopeNote "For sphn:hasInput, instances of sphn:TumorGradeAssessmentResult, sphn:TumorStageAssessmentResult, sphn:VitalStatus are not allowed" .
@@ -4453,15 +4443,15 @@ sphn:SemanticMapping_purpose a owl:Class ;
 
 sphn:SourceData a owl:Class ;
     rdfs:label "Source Data" ;
-    rdfs:subClassOf [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
+    rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStringValue ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -4474,12 +4464,6 @@ sphn:SourceData a owl:Class ;
 sphn:SourceSystem a owl:Class ;
     rdfs:label "Source System" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasName ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasName ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasPrimarySystem ] [ a owl:Restriction ;
@@ -4490,11 +4474,9 @@ sphn:SourceSystem a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPurpose ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasName ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPurpose ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasPurpose ;
-                        owl:someValuesFrom sphn:SourceSystem_purpose ] ) ],
+                        owl:onProperty sphn:hasName ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -4503,6 +4485,14 @@ sphn:SourceSystem a owl:Class ;
                         owl:onProperty sphn:hasCategory ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCategory ;
                         owl:someValuesFrom sphn:SourceSystem_category ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasPurpose ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasPurpose ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPurpose ;
+                        owl:someValuesFrom sphn:SourceSystem_purpose ] ) ],
         sphn:SPHNConcept ;
     skos:definition "electronic system the data has been retrieved from" .
 
@@ -4521,7 +4511,7 @@ sphn:TimePattern a owl:Class ;
                         owl:onProperty sphn:hasTypeCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasTypeCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:385432009 snomed:255238004 snomed:7087005 ) ] ] ) ],
+                                owl:unionOf ( snomed:385432009 snomed:7087005 snomed:255238004 ) ] ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:272103003 ;
     skos:definition "type of time period during which a treatment was given or an assessment was performed; this can be single time points or a continuous event" ;
@@ -4532,11 +4522,11 @@ sphn:Transcript a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasProtein ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasOrganism ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasProtein ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasProtein ;
-                        owl:someValuesFrom sphn:Protein ] ) ],
+                        owl:onProperty sphn:hasOrganism ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasOrganism ;
+                        owl:someValuesFrom sphn:Organism ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -4546,11 +4536,11 @@ sphn:Transcript a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOrganism ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasProtein ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOrganism ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasOrganism ;
-                        owl:someValuesFrom sphn:Organism ] ) ],
+                        owl:onProperty sphn:hasProtein ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasProtein ;
+                        owl:someValuesFrom sphn:Protein ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass so:0000673 ;
     skos:definition "RNA molecules that are made from a DNA template" ;
@@ -4559,6 +4549,14 @@ sphn:Transcript a owl:Class ;
 sphn:TumorGradeAssessmentResult a owl:Class ;
     rdfs:label "Tumor Grade Assessment Result" ;
     rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasQuantity ;
+                        owl:someValuesFrom sphn:Quantity ] ) ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
@@ -4572,28 +4570,12 @@ sphn:TumorGradeAssessmentResult a owl:Class ;
                         owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStringValue ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasQuantity ;
-                        owl:someValuesFrom sphn:Quantity ] ) ],
         sphn:AssessmentResult ;
     skos:definition "outcome of a tumor grade assessment" .
 
 sphn:TumorStageAssessmentResult a owl:Class ;
     rdfs:label "Tumor Stage Assessment Result" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom snomed:138875005 ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
@@ -4607,6 +4589,14 @@ sphn:TumorStageAssessmentResult a owl:Class ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasQuantity ;
                         owl:someValuesFrom sphn:Quantity ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom snomed:138875005 ] ) ],
         sphn:AssessmentResult ;
     skos:definition "outcome of a tumor stage assessment" .
 
@@ -4630,14 +4620,6 @@ sphn:hasRouteCode a owl:ObjectProperty ;
 sphn:AccessDevice a owl:Class ;
     rdfs:label "Access Device" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTypeCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTypeCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasTypeCode ;
-                        owl:someValuesFrom snomed:105789008 ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSoftware ] [ a owl:Restriction ;
@@ -4649,6 +4631,14 @@ sphn:AccessDevice a owl:Class ;
                         owl:onProperty sphn:hasProductCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasProductCode ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasTypeCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasTypeCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasTypeCode ;
+                        owl:someValuesFrom snomed:105789008 ] ) ],
         sphn:MedicalDevice ;
     owl:equivalentClass snomed:105789008 ;
     skos:definition "product intended for medical use to gain access to the body, such as cannula, tube, catheter or drainage" .
@@ -4661,21 +4651,6 @@ sphn:AdverseEvent_outcome a owl:Class ;
 sphn:BodyMassIndex a owl:Class ;
     rdfs:label "Body Mass Index" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDeterminationDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDeterminationDateTime ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
@@ -4689,17 +4664,32 @@ sphn:BodyMassIndex a owl:Class ;
                                 owl:someValuesFrom [ a owl:Restriction ;
                                         owl:onProperty sphn:hasCode ;
                                         owl:someValuesFrom ucum:kgperm2 ] ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        sphn:SPHNConcept ;
-    owl:equivalentClass snomed:60621009,
-        loinc:39156-5 ;
-    skos:definition "body weight in kilograms divided by the square of the body height in meters" .
-
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDeterminationDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDeterminationDateTime ] ) ],
+        sphn:SPHNConcept ;
+    owl:equivalentClass snomed:60621009,
+        loinc:39156-5 ;
+    skos:definition "body weight in kilograms divided by the square of the body height in meters" .
+
 sphn:Comparator a owl:Class ;
     rdfs:label "Comparator" ;
     rdfs:subClassOf sphn:ValueSet ;
@@ -4729,7 +4719,7 @@ sphn:DataDetermination a owl:Class ;
                         owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasMethodCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:414135002 snomed:258090004 snomed:87982008 snomed:258104002 snomed:263760002 ) ] ] ) ],
+                                owl:unionOf ( snomed:87982008 snomed:258104002 snomed:414135002 snomed:258090004 snomed:263760002 ) ] ] ) ],
         sphn:SPHNConcept ;
     skos:definition "describes how the data was determined, e.g. measured, calculated" ;
     skos:scopeNote "sphn:hasMethodCode no subclasses allowed" .
@@ -4742,12 +4732,6 @@ sphn:DataFile_encoding a owl:Class ;
 sphn:DeathDate a owl:Class ;
     rdfs:label "Death Date" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasYear ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasYear ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasDay ] [ a owl:Restriction ;
@@ -4765,6 +4749,12 @@ sphn:DeathDate a owl:Class ;
                         owl:onProperty sphn:hasTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasYear ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasYear ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:399753006,
         loinc:81954-0 ;
@@ -4779,11 +4769,9 @@ sphn:DrugArticle a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasName ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom sphn:Code ] ) ],
+                        owl:onProperty sphn:hasName ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -4795,23 +4783,18 @@ sphn:DrugArticle a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasName ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasName ] ) ],
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom sphn:Code ] ) ],
         sphn:SPHNConcept ;
     skos:definition "general details identifying a medication on the level of its commercial article" ;
     skos:note "sphn:hasCode allowed coding system: GTIN" .
 
 sphn:ExcludedDisorder a owl:Class ;
     rdfs:label "Excluded Disorder" ;
-    rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:Terminology sphn:Code ) ] ] ) ],
-        [ a owl:Restriction ;
+    rdfs:subClassOf [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
@@ -4820,18 +4803,25 @@ sphn:ExcludedDisorder a owl:Class ;
                         owl:onProperty sphn:hasRecordDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasRecordDateTime ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( sphn:Terminology icd-o-3:TopographyGroup sphn:Code icd-o-3:MorphologicalGroup ) ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:315215002 ;
     skos:definition "determination of the absence of a disease" ;
@@ -4845,6 +4835,15 @@ sphn:GestationalAgeAtBirth a owl:Class ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -4859,15 +4858,6 @@ sphn:GestationalAgeAtBirth a owl:Class ;
                                 owl:someValuesFrom [ a owl:Restriction ;
                                         owl:onProperty sphn:hasCode ;
                                         owl:someValuesFrom ucum:d ] ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:412726003,
         loinc:76516-4 ;
@@ -4876,12 +4866,6 @@ sphn:GestationalAgeAtBirth a owl:Class ;
 sphn:Implant a owl:Class ;
     rdfs:label "Implant" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSoftware ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSoftware ;
-                        owl:someValuesFrom sphn:Software ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasTypeCode ] [ a owl:Restriction ;
@@ -4896,35 +4880,41 @@ sphn:Implant a owl:Class ;
                         owl:onProperty sphn:hasProductCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasProductCode ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSoftware ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSoftware ;
+                        owl:someValuesFrom sphn:Software ] ) ],
         sphn:MedicalDevice ;
     skos:definition "implanted medical device, includes, e.g., heart valve prostheses or joint prostheses" .
 
 sphn:Interpretation a owl:Class ;
     rdfs:label "Interpretation" ;
-    rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] ) ],
+    rdfs:subClassOf [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasOutput ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasOutput ;
                         owl:someValuesFrom sphn:SPHNConcept ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasStandardGuideline ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasInput ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasInput ;
                         owl:someValuesFrom sphn:SPHNConcept ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasStandardGuideline ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
         sphn:SPHNConcept ;
     skos:definition "process of making sense of an outcome to derive meaningful conclusions" .
 
@@ -4933,12 +4923,17 @@ sphn:MicrobiologyBiomoleculePresenceResult a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:373068000 snomed:10828004 snomed:260385009 ) ] ] ) ],
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasQuantity ;
+                        owl:someValuesFrom sphn:Quantity ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStringValue ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -4951,17 +4946,12 @@ sphn:MicrobiologyBiomoleculePresenceResult a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStringValue ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasQuantity ;
-                        owl:someValuesFrom sphn:Quantity ] ) ],
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( snomed:373068000 snomed:260385009 snomed:10828004 ) ] ] ) ],
         sphn:LabResult ;
     skos:definition "result of microbiology biomolecule presence test for a specific isolate analyzed" ;
     skos:scopeNote "sphn:hasCode no subclasses allowed" .
@@ -4976,6 +4966,14 @@ sphn:MicroorganismIdentificationLabTest a owl:Class ;
                         owl:onProperty sphn:hasInstrument ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasInstrument ;
                         owl:someValuesFrom sphn:LabAnalyzer ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom snomed:19851009 ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -4990,33 +4988,9 @@ sphn:MicroorganismIdentificationLabTest a owl:Class ;
                         owl:onProperty sphn:hasTestKit ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasTestKit ;
                         owl:someValuesFrom sphn:LabAnalyzer ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom snomed:19851009 ] ) ],
         sphn:LabTest ;
     skos:definition "specific lab test performed on a sample for identifying microorganism(s)" .
 
-sphn:Organism a owl:Class ;
-    rdfs:label "Organism" ;
-    rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:410607006 sphn:Code ) ] ] ) ],
-        sphn:SPHNConcept ;
-    owl:equivalentClass snomed:410607006 ;
-    skos:definition "living system capable of replicating or reproducing, growth and maintenance. An organism may be unicellular or multicellular" ;
-    skos:note "sphn:hasCode allowed coding system: SNOMED CT, NCBI Taxon" .
-
 sphn:RespiratoryRate a owl:Class ;
     rdfs:label "Respiratory Rate" ;
     rdfs:subClassOf [ a owl:Class ;
@@ -5045,7 +5019,7 @@ sphn:RespiratoryRate a owl:Class ;
                         owl:someValuesFrom [ a owl:Restriction ;
                                 owl:onProperty sphn:hasMethodCode ;
                                 owl:someValuesFrom [ a owl:Class ;
-                                        owl:unionOf ( snomed:258104002 snomed:87982008 snomed:258090004 snomed:263760002 ) ] ] ] ) ],
+                                        owl:unionOf ( snomed:87982008 snomed:258090004 snomed:258104002 snomed:263760002 ) ] ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -5070,9 +5044,12 @@ sphn:ResuscitationDirective a owl:Class ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -5081,12 +5058,9 @@ sphn:ResuscitationDirective a owl:Class ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCode ;
                         owl:someValuesFrom snomed:365870005 ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:304251008 ;
     skos:definition "decision about the extent of resuscitation interventions appropriate for a specific individual" .
@@ -5129,18 +5103,11 @@ sphn:TumorGradeAssessmentEvent a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPerformer ;
+                        owl:someValuesFrom sphn:Performer ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -5152,17 +5119,24 @@ sphn:TumorGradeAssessmentEvent a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasPerformer ;
-                        owl:someValuesFrom sphn:Performer ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         sphn:AssessmentEvent ;
     skos:definition "evaluation of the tumor grade at a given time, which takes into account a predefined grading system" ;
     sphn:replaces sphn-deprecated:TumorGrade .
@@ -5170,12 +5144,6 @@ sphn:TumorGradeAssessmentEvent a owl:Class ;
 sphn:TumorStageAssessmentEvent a owl:Class ;
     rdfs:label "Tumor Stage Assessment Event" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
@@ -5192,12 +5160,6 @@ sphn:TumorStageAssessmentEvent a owl:Class ;
                         owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasPerformer ;
                         owl:someValuesFrom sphn:Performer ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -5206,6 +5168,18 @@ sphn:TumorStageAssessmentEvent a owl:Class ;
                         owl:onProperty sphn:hasAssessment ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasAssessment ;
                         owl:someValuesFrom sphn:TumorStageAssessment ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] ) ],
         sphn:AssessmentEvent ;
     skos:definition "evaluation of the tumor stage at a given time, which takes into account a predefined staging system" ;
     sphn:replaces sphn-deprecated:TumorStage .
@@ -5465,10 +5439,12 @@ sphn:AdministrativeCase a owl:Class ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIdentifier ] ) ],
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdmission ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdmission ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdmission ;
+                        owl:someValuesFrom sphn:Admission ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -5479,12 +5455,10 @@ sphn:AdministrativeCase a owl:Class ;
                         owl:someValuesFrom sphn:CareHandling ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdmission ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdmission ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasAdmission ;
-                        owl:someValuesFrom sphn:Admission ] ) ],
+                        owl:onProperty sphn:hasIdentifier ] ) ],
         sphn:SPHNConcept ;
     skos:definition "administrative artifact for billing according to national healthcare billing guidelines, e.g. Swiss Diagnosis Related Groups, and local settings" .
 
@@ -5492,12 +5466,13 @@ sphn:AntimicrobialSusceptibilityLabTest a owl:Class ;
     rdfs:label "Antimicrobial Susceptibility Lab Test" ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasInstrument ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasChemicalAgent ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasInstrument ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasInstrument ;
-                        owl:someValuesFrom sphn:LabAnalyzer ] ) ],
+                        owl:onProperty sphn:hasChemicalAgent ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasChemicalAgent ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( sphn:Substance sphn:Drug ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -5509,26 +5484,25 @@ sphn:AntimicrobialSusceptibilityLabTest a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasResult ;
-                        owl:someValuesFrom sphn:AntimicrobialSusceptibilityResult ] ) ],
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom snomed:14788002 ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasChemicalAgent ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasInstrument ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasChemicalAgent ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasChemicalAgent ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:Substance sphn:Drug ) ] ] ) ],
+                        owl:onProperty sphn:hasInstrument ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasInstrument ;
+                        owl:someValuesFrom sphn:LabAnalyzer ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom snomed:14788002 ] ) ],
+                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasResult ;
+                        owl:someValuesFrom sphn:AntimicrobialSusceptibilityResult ] ) ],
         sphn:LabTest ;
     skos:definition "specific lab test performed on an isolate against a chemical agent for determining antimicrobial susceptibility" .
 
@@ -5536,21 +5510,10 @@ sphn:AntimicrobialSusceptibilityLabTestEvent a owl:Class ;
     rdfs:label "Antimicrobial Susceptibility Lab Test Event" ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasLabTest ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasLabTest ;
-                        owl:someValuesFrom sphn:AntimicrobialSusceptibilityLabTest ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSample ;
-                        owl:someValuesFrom sphn:Isolate ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                        owl:onProperty sphn:hasDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -5559,10 +5522,12 @@ sphn:AntimicrobialSusceptibilityLabTestEvent a owl:Class ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasReportDateTime ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasReportDateTime ] ) ],
+                        owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSample ;
+                        owl:someValuesFrom sphn:Isolate ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -5572,15 +5537,38 @@ sphn:AntimicrobialSusceptibilityLabTestEvent a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasReportDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] ) ],
+                        owl:onProperty sphn:hasReportDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasLabTest ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasLabTest ;
+                        owl:someValuesFrom sphn:AntimicrobialSusceptibilityLabTest ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         sphn:LabTestEvent ;
     skos:definition "occurrence in which one or multiple laboratory tests are performed on an isolate at a given time for determining antimicrobial susceptibility" .
 
 sphn:AntimicrobialSusceptibilityResult a owl:Class ;
     rdfs:label "Antimicrobial Susceptibility Result" ;
     rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStringValue ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom snomed:1306540001 ] ) ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStandardGuideline ] [ a owl:Restriction ;
@@ -5595,14 +5583,6 @@ sphn:AntimicrobialSusceptibilityResult a owl:Class ;
                         owl:onProperty sphn:hasNumericalReference ;
                         owl:someValuesFrom [ a owl:Class ;
                                 owl:unionOf ( sphn:ReferenceValue sphn:ReferenceRange ) ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom snomed:1306540001 ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -5611,12 +5591,6 @@ sphn:AntimicrobialSusceptibilityResult a owl:Class ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasQuantity ;
                         owl:someValuesFrom sphn:Quantity ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStringValue ] ) ],
         sphn:LabResult ;
     skos:definition "result of a antimicrobial susceptibility lab analysis" .
 
@@ -5625,11 +5599,9 @@ sphn:Biobanksample a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasBiobankName ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSample ;
-                        owl:someValuesFrom sphn:Sample ] ) ],
+                        owl:onProperty sphn:hasBiobankName ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -5639,24 +5611,26 @@ sphn:Biobanksample a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBiobankName ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBiobankName ] ) ],
+                        owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSample ;
+                        owl:someValuesFrom sphn:Sample ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIdentifier ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                        owl:onProperty sphn:hasIdentifier ] ) ],
         sphn:SPHNConcept ;
     skos:definition "biosample stored in a biobank" .
 
@@ -5665,35 +5639,35 @@ sphn:BirthDate a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasComparator ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTime ] ) ],
+                        owl:onProperty sphn:hasComparator ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasComparator ;
+                        owl:someValuesFrom sphn:Comparator ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasYear ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasYear ] ) ],
+                        owl:onProperty sphn:hasTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDay ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMonth ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDay ] ) ],
+                        owl:onProperty sphn:hasMonth ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasComparator ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasYear ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasComparator ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasComparator ;
-                        owl:someValuesFrom sphn:Comparator ] ) ],
+                        owl:onProperty sphn:hasYear ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMonth ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDay ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMonth ] ) ],
+                        owl:onProperty sphn:hasDay ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:184099003,
         loinc:21112-8 ;
@@ -5703,20 +5677,17 @@ sphn:BirthDate a owl:Class ;
 sphn:BodyPosition a owl:Class ;
     rdfs:label "Body Position" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -5725,31 +5696,28 @@ sphn:BodyPosition a owl:Class ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCode ;
                         owl:someValuesFrom snomed:9851009 ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:397155001 ;
     skos:definition "position of the body during a certain time interval, examination or therapy" .
 
 sphn:BodySurfaceArea a owl:Class ;
     rdfs:label "Body Surface Area" ;
-    rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDeterminationDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDeterminationDateTime ] ) ],
-        [ a owl:Restriction ;
+    rdfs:subClassOf [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
@@ -5786,6 +5754,12 @@ sphn:BodySurfaceArea a owl:Class ;
                         owl:onProperty sphn:hasCalculationMethod ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCalculationMethod ;
                         owl:someValuesFrom sphn:BodySurfaceArea_calculationMethod ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDeterminationDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDeterminationDateTime ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:301898006,
         loinc:8277-6 ;
@@ -5794,14 +5768,6 @@ sphn:BodySurfaceArea a owl:Class ;
 sphn:DataProvider a owl:Class ;
     rdfs:label "Data Provider" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDepartment ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDepartment ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasDepartment ;
-                        owl:someValuesFrom sphn:Department ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasInstitutionCode ] [ a owl:Restriction ;
@@ -5817,6 +5783,14 @@ sphn:DataProvider a owl:Class ;
                         owl:onProperty sphn:hasCategory ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCategory ;
                         owl:someValuesFrom sphn:DataProvider_category ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDepartment ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDepartment ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDepartment ;
+                        owl:someValuesFrom sphn:Department ] ) ],
         sphn:SPHNConcept ;
     skos:definition "organization that prepares and delivers data" ;
     skos:note "sphn:hasInstitutionCode allowed coding system: UID" ;
@@ -5825,23 +5799,6 @@ sphn:DataProvider a owl:Class ;
 sphn:HeartRate a owl:Class ;
     rdfs:label "Heart Rate" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRegularityCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRegularityCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasRegularityCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:271636001 snomed:61086009 ) ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasQuantity ;
-                        owl:someValuesFrom sphn:Quantity ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
@@ -5855,15 +5812,44 @@ sphn:HeartRate a owl:Class ;
                         owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasDataFile ;
                         owl:someValuesFrom sphn:TimeSeriesDataFile ] ) ],
-        sphn:Result ;
-    owl:equivalentClass snomed:364075005,
-        loinc:8867-4 ;
-    skos:definition "frequency of the heart beats, i.e. the number of time a heart beats per unit of time" ;
-    skos:scopeNote "sphn:hasRegularityCode no subclasses allowed" .
-
-sphn:HomeAddress a owl:Class ;
-    rdfs:label "Home Address" ;
-    rdfs:subClassOf [ a owl:Class ;
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasQuantity ;
+                        owl:someValuesFrom sphn:Quantity ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasRegularityCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasRegularityCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRegularityCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( snomed:271636001 snomed:61086009 ) ] ] ) ],
+        sphn:Result ;
+    owl:equivalentClass snomed:364075005,
+        loinc:8867-4 ;
+    skos:definition "frequency of the heart beats, i.e. the number of time a heart beats per unit of time" ;
+    skos:scopeNote "sphn:hasRegularityCode no subclasses allowed" .
+
+sphn:HomeAddress a owl:Class ;
+    rdfs:label "Home Address" ;
+    rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSwissSocioEconomicPosition ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSwissSocioEconomicPosition ;
+                        owl:someValuesFrom sphn:SwissSocioEconomicPosition ] ) ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
@@ -5886,18 +5872,6 @@ sphn:HomeAddress a owl:Class ;
                         owl:onProperty sphn:hasCountry ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCountry ;
                         owl:someValuesFrom sphn:Country ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSwissSocioEconomicPosition ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSwissSocioEconomicPosition ;
-                        owl:someValuesFrom sphn:SwissSocioEconomicPosition ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:397635003 ;
     skos:definition "permanent place of residence of an individual" ;
@@ -5905,7 +5879,13 @@ sphn:HomeAddress a owl:Class ;
 
 sphn:InsuranceStatus a owl:Class ;
     rdfs:label "Insurance Status" ;
-    rdfs:subClassOf [ a owl:Restriction ;
+    rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
+        [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
@@ -5918,28 +5898,22 @@ sphn:InsuranceStatus a owl:Class ;
                         owl:someValuesFrom sphn:InsuranceStatus_coverageType ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasEndDateTime ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass loinc:87520-3 ;
     skos:definition "status of the patient's medical insurance" .
@@ -5960,14 +5934,6 @@ sphn:MicrobiologyBiomoleculePresenceLabTest a owl:Class ;
                         owl:onProperty sphn:hasTargetMolecule ;
                         owl:someValuesFrom [ a owl:Class ;
                                 owl:unionOf ( sphn:Gene sphn:Protein ) ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTestKit ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTestKit ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasTestKit ;
-                        owl:someValuesFrom sphn:LabAnalyzer ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -5985,6 +5951,14 @@ sphn:MicrobiologyBiomoleculePresenceLabTest a owl:Class ;
                         owl:onProperty sphn:hasCode ;
                         owl:someValuesFrom [ a owl:Class ;
                                 owl:unionOf ( snomed:138875005 sphn-loinc:LOINC ) ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasTestKit ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasTestKit ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasTestKit ;
+                        owl:someValuesFrom sphn:LabAnalyzer ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -5999,9 +5973,15 @@ sphn:MicrobiologyBiomoleculePresenceLabTestEvent a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasReportDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasReportDateTime ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -6010,10 +5990,10 @@ sphn:MicrobiologyBiomoleculePresenceLabTestEvent a owl:Class ;
                         owl:onProperty sphn:hasDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasLabTest ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasLabTest ;
+                        owl:someValuesFrom sphn:MicrobiologyBiomoleculePresenceLabTest ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -6022,21 +6002,15 @@ sphn:MicrobiologyBiomoleculePresenceLabTestEvent a owl:Class ;
                         owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasSample ;
                         owl:someValuesFrom sphn:Isolate ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasLabTest ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasLabTest ;
-                        owl:someValuesFrom sphn:MicrobiologyBiomoleculePresenceLabTest ] ) ],
         [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasReportDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasReportDateTime ] ) ],
         sphn:LabTestEvent ;
     skos:definition "occurrence in which one or multiple laboratory tests are performed on an isolate at a given time to detect the presence of a biomolecule" .
 
@@ -6044,12 +6018,12 @@ sphn:MicrobiologyMicroscopyLabTest a owl:Class ;
     rdfs:label "Microbiology Microscopy Lab Test" ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasInstrument ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom snomed:117259009 ] ) ],
+                        owl:onProperty sphn:hasInstrument ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasInstrument ;
+                        owl:someValuesFrom sphn:LabAnalyzer ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -6074,12 +6048,12 @@ sphn:MicrobiologyMicroscopyLabTest a owl:Class ;
                         owl:someValuesFrom sphn:MicrobiologyMicroscopyResult ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasInstrument ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasInstrument ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasInstrument ;
-                        owl:someValuesFrom sphn:LabAnalyzer ] ) ],
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom snomed:117259009 ] ) ],
         sphn:LabTest ;
     skos:definition "specific microbiology microscopy lab test performed on a sample" .
 
@@ -6090,24 +6064,16 @@ sphn:MicrobiologyMicroscopyLabTestEvent a owl:Class ;
             owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasLabTest ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasLabTest ;
-                        owl:someValuesFrom sphn:MicrobiologyMicroscopyLabTest ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSample ;
-                        owl:someValuesFrom sphn:Sample ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasReportDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+                        owl:onProperty sphn:hasReportDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -6116,16 +6082,24 @@ sphn:MicrobiologyMicroscopyLabTestEvent a owl:Class ;
                         owl:onProperty sphn:hasDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasReportDateTime ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasReportDateTime ] ) ],
+                        owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSample ;
+                        owl:someValuesFrom sphn:Sample ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasLabTest ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasLabTest ;
+                        owl:someValuesFrom sphn:MicrobiologyMicroscopyLabTest ] ) ],
         sphn:LabTestEvent ;
     skos:definition "occurrence in which one or multiple microbiology microscopy laboratory tests are performed on a sample at a given time" ;
     skos:scopeNote "For sphn:hasSample, instances of sphn:TumorSpecimen are not allowed" .
@@ -6134,10 +6108,19 @@ sphn:MicroorganismIdentificationLabTestEvent a owl:Class ;
     rdfs:label "Microorganism Identification Lab Test Event" ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasLabTest ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasLabTest ;
+                        owl:someValuesFrom sphn:MicroorganismIdentificationLabTest ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -6154,25 +6137,16 @@ sphn:MicroorganismIdentificationLabTestEvent a owl:Class ;
                         owl:onProperty sphn:hasReportDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasLabTest ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasLabTest ;
-                        owl:someValuesFrom sphn:MicroorganismIdentificationLabTest ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasDateTime ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         sphn:LabTestEvent ;
     skos:definition "occurrence in which one or multiple laboratory tests are performed on a sample at a given time for identifying microorganism(s)" ;
     skos:scopeNote "For sphn:hasSample, instances of sphn:TumorSpecimen are not allowed" .
@@ -6185,17 +6159,6 @@ sphn:Nationality a owl:Class ;
                         owl:onProperty sphn:hasRecordDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasRecordDateTime ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAssociatedCountry ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAssociatedCountry ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasAssociatedCountry ;
-                        owl:someValuesFrom sphn:Country ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -6205,6 +6168,17 @@ sphn:Nationality a owl:Class ;
                         owl:onProperty sphn:hasAcquistionCode ;
                         owl:someValuesFrom [ a owl:Class ;
                                 owl:unionOf ( snomed:255396000 snomed:19535007 ) ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAssociatedCountry ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAssociatedCountry ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAssociatedCountry ;
+                        owl:someValuesFrom sphn:Country ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -6218,18 +6192,21 @@ sphn:Nationality a owl:Class ;
 
 sphn:NursingDiagnosis a owl:Class ;
     rdfs:label "Nursing Diagnosis" ;
-    rdfs:subClassOf [ a owl:Class ;
+    rdfs:subClassOf [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRecordDateTime ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRecordDateTime ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRecordDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+                        owl:onProperty sphn:hasRecordDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -6238,15 +6215,12 @@ sphn:NursingDiagnosis a owl:Class ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCode ;
                         owl:someValuesFrom sphn:Code ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -6259,22 +6233,38 @@ sphn:NursingDiagnosis a owl:Class ;
     skos:definition "clinical judgment concerning a human response to health conditions/life processes, or a vulnerability for that response, by an individual, family, group or community; a nursing diagnosis provides the basis for selection of nursing interventions to achieve outcomes for which the nurse has accountability" ;
     skos:note "sphn:hasCode allowed coding system: NANDA" .
 
-sphn:Protein a owl:Class ;
-    rdfs:label "Protein" ;
+sphn:Organism a owl:Class ;
+    rdfs:label "Organism" ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOrganism ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOrganism ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasOrganism ;
-                        owl:someValuesFrom sphn:Organism ] ) ],
-        [ a owl:Class ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( sphn:Code snomed:410607006 ) ] ] ) ],
+        sphn:SPHNConcept ;
+    owl:equivalentClass snomed:410607006 ;
+    skos:definition "living system capable of replicating or reproducing, growth and maintenance. An organism may be unicellular or multicellular" ;
+    skos:note "sphn:hasCode allowed coding system: SNOMED CT, NCBI Taxon" .
+
+sphn:Protein a owl:Class ;
+    rdfs:label "Protein" ;
+    rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasCode ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasOrganism ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasOrganism ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasOrganism ;
+                        owl:someValuesFrom sphn:Organism ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass so:0000104,
         snomed:88878007 ;
@@ -6297,20 +6287,11 @@ sphn:ReferenceValue a owl:Class ;
 sphn:SemanticMapping a owl:Class ;
     rdfs:label "Semantic Mapping" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasOutputCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasOutputCode ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -6319,12 +6300,9 @@ sphn:SemanticMapping a owl:Class ;
                         owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasMethodCode ;
                         owl:someValuesFrom eco:0000217 ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSourceData ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSourceData ;
-                        owl:someValuesFrom sphn:SourceData ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -6333,6 +6311,18 @@ sphn:SemanticMapping a owl:Class ;
                         owl:onProperty sphn:hasPurpose ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasPurpose ;
                         owl:someValuesFrom sphn:SemanticMapping_purpose ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSourceData ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSourceData ;
+                        owl:someValuesFrom sphn:SourceData ] ) ],
         sphn:SPHNConcept ;
     skos:definition "process of transforming data elements to a code" .
 
@@ -6341,17 +6331,17 @@ sphn:TumorGradeAssessment a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasComponent ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasComponent ;
-                        owl:someValuesFrom sphn:AssessmentComponent ] ) ],
+                        owl:onProperty sphn:hasRange ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasRange ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRange ;
+                        owl:someValuesFrom sphn:Range ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasName ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom snomed:277457005 ] ) ],
+                        owl:onProperty sphn:hasName ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -6363,17 +6353,17 @@ sphn:TumorGradeAssessment a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRange ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRange ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasRange ;
-                        owl:someValuesFrom sphn:Range ] ) ],
+                        owl:onProperty sphn:hasComponent ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasComponent ;
+                        owl:someValuesFrom sphn:AssessmentComponent ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasName ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasName ] ) ],
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom snomed:277457005 ] ) ],
         sphn:Assessment ;
     owl:equivalentClass snomed:277457005,
         loinc:21858-6 ;
@@ -6386,19 +6376,17 @@ sphn:TumorStageAssessment a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRange ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRange ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasRange ;
-                        owl:someValuesFrom sphn:Range ] ) ],
+                        owl:onProperty sphn:hasComponent ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasComponent ;
+                        owl:someValuesFrom sphn:AssessmentComponent ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasResult ;
-                        owl:someValuesFrom sphn:TumorStageAssessmentResult ] ) ],
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom snomed:254292007 ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -6408,17 +6396,19 @@ sphn:TumorStageAssessment a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasComponent ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasComponent ;
-                        owl:someValuesFrom sphn:AssessmentComponent ] ) ],
+                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasResult ;
+                        owl:someValuesFrom sphn:TumorStageAssessmentResult ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRange ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom snomed:254292007 ] ) ],
+                        owl:onProperty sphn:hasRange ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRange ;
+                        owl:someValuesFrom sphn:Range ] ) ],
         sphn:Assessment ;
     owl:equivalentClass snomed:254292007 ;
     skos:definition "staging system used to assess the spread of the oncology disease" ;
@@ -6443,18 +6433,11 @@ sphn:AssessmentComponent a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn-loinc:LOINC snomed:363787002 snomed:71388002 ) ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasName ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRange ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasName ] ) ],
+                        owl:onProperty sphn:hasRange ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRange ;
+                        owl:someValuesFrom sphn:Range ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -6464,34 +6447,35 @@ sphn:AssessmentComponent a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRange ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasName ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRange ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasRange ;
-                        owl:someValuesFrom sphn:Range ] ) ],
+                        owl:onProperty sphn:hasName ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( snomed:363787002 snomed:71388002 sphn-loinc:LOINC ) ] ] ) ],
         sphn:SPHNConcept ;
     skos:definition "component of an assessment" ;
     skos:note "sphn:hasCode allowed coding system: SNOMED CT, LOINC" ;
-    skos:scopeNote "For sphn:hasRange, instances of sphn:ReferenceRange are not allowed" ;
+    skos:scopeNote "For sphn:hasRange, instances of sphn:ReferenceRange are not allowed",
+        "For sphn:hasResult, instances of sphn:TumorStageAssessmentResult, sphn:TumorGradeAssessmentResult are not allowed" ;
     sphn:replaces sphn-deprecated:SimpleScore .
 
 sphn:AssessmentEvent a owl:Class ;
     rdfs:label "Assessment Event" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPerformer ;
+                        owl:someValuesFrom sphn:Performer ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -6500,20 +6484,27 @@ sphn:AssessmentEvent a owl:Class ;
                         owl:onProperty sphn:hasAssessment ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasAssessment ;
                         owl:someValuesFrom sphn:Assessment ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasPerformer ;
-                        owl:someValuesFrom sphn:Performer ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasDateTime ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:386053000 ;
     skos:definition "evaluation at a given time, which takes into account a predefined scale, classification, staging or scoring system" ;
@@ -6523,12 +6514,6 @@ sphn:AssessmentEvent a owl:Class ;
 sphn:AssessmentResult a owl:Class ;
     rdfs:label "Assessment Result" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
@@ -6536,6 +6521,12 @@ sphn:AssessmentResult a owl:Class ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasQuantity ;
                         owl:someValuesFrom sphn:Quantity ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -6548,20 +6539,6 @@ sphn:AssessmentResult a owl:Class ;
 sphn:BilledDiagnosis a owl:Class ;
     rdfs:label "Billed Diagnosis" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectAge ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectAge ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSubjectAge ;
-                        owl:someValuesFrom sphn:Age ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRecordDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRecordDateTime ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasRank ] [ a owl:Restriction ;
@@ -6569,29 +6546,43 @@ sphn:BilledDiagnosis a owl:Class ;
                         owl:onProperty sphn:hasRank ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasRank ;
                         owl:someValuesFrom sphn:BilledDiagnosis_rank ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom icd-10-gm:ICD-10-GM ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSubjectAge ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+                        owl:onProperty sphn:hasSubjectAge ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSubjectAge ;
+                        owl:someValuesFrom sphn:Age ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasRecordDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasRecordDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom icd-10-gm:ICD-10-GM ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         sphn:Diagnosis ;
     owl:equivalentClass snomed:89100005,
         loinc:38999-9 ;
@@ -6631,17 +6622,17 @@ sphn:BloodPressure a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasDataFile ;
-                        owl:someValuesFrom sphn:TimeSeriesDataFile ] ) ],
+                        owl:onProperty sphn:hasDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] ) ],
+                        owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDataFile ;
+                        owl:someValuesFrom sphn:TimeSeriesDataFile ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -6664,34 +6655,8 @@ sphn:CardiacIndex a owl:Class ;
     rdfs:label "Cardiac Index" ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMethodCode ;
-                        owl:someValuesFrom snomed:63075001 ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDeterminationDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDeterminationDateTime ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasQuantity ;
@@ -6702,22 +6667,42 @@ sphn:CardiacIndex a owl:Class ;
                                 owl:someValuesFrom [ a owl:Restriction ;
                                         owl:onProperty sphn:hasCode ;
                                         owl:someValuesFrom ucum:Lperminperm2 ] ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDeterminationDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDeterminationDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMethodCode ;
+                        owl:someValuesFrom snomed:63075001 ] ) ],
         [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:54993008 ;
     skos:definition "cardiac output in relation to the body surface area (BSA)" .
 
 sphn:Consent a owl:Class ;
     rdfs:label "Consent" ;
-    rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Restriction ;
+    rdfs:subClassOf [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
@@ -6728,19 +6713,25 @@ sphn:Consent a owl:Class ;
                         owl:onProperty sphn:hasTypeCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasTypeCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:410529002 snomed:69658003 snomed:60132005 ) ] ] ) ],
+                                owl:unionOf ( snomed:410529002 snomed:60132005 snomed:69658003 ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTemplateIdentifier ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTemplateIdentifier ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasTemplateIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasTemplateIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -6749,7 +6740,7 @@ sphn:Consent a owl:Class ;
                         owl:onProperty sphn:hasStatusCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasStatusCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:443390004 snomed:225795001 snomed:385645004 ) ] ] ) ],
+                                owl:unionOf ( snomed:443390004 snomed:385645004 snomed:225795001 ) ] ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:371537001,
         loinc:59284-0 ;
@@ -6760,18 +6751,6 @@ sphn:Consent a owl:Class ;
 sphn:FluidBalance a owl:Class ;
     rdfs:label "Fluid Balance" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFluidInputOutput ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasFluidInputOutput ;
-                        owl:someValuesFrom sphn:FluidInputOutput ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
@@ -6779,76 +6758,42 @@ sphn:FluidBalance a owl:Class ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasQuantity ;
                         owl:someValuesFrom sphn:Quantity ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStartDateTime ] ) ],
-        sphn:SPHNConcept ;
-    owl:equivalentClass snomed:364396009 ;
-    skos:definition "difference between fluid input and output during a specified time interval" .
-
-sphn:MicroorganismIdentificationResult a owl:Class ;
-    rdfs:label "Microorganism Identification Result" ;
-    rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasQuantity ;
-                        owl:someValuesFrom sphn:Quantity ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTimeToPositivity ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTimeToPositivity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasTimeToPositivity ;
-                        owl:someValuesFrom sphn:Quantity ] ) ],
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasNumericalReference ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasNumericalReference ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasNumericalReference ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:ReferenceValue sphn:ReferenceRange ) ] ] ) ],
+                        owl:onProperty sphn:hasFluidInputOutput ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasFluidInputOutput ;
+                        owl:someValuesFrom sphn:FluidInputOutput ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStringValue ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPresenceCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPresenceCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasPresenceCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:2667000 snomed:373068000 snomed:52101004 ) ] ] ) ],
-        sphn:LabResult ;
-    skos:definition "result of the microorganism identification lab test" ;
-    skos:scopeNote "sphn:hasPresenceCode no subclasses allowed" .
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        sphn:SPHNConcept ;
+    owl:equivalentClass snomed:364396009 ;
+    skos:definition "difference between fluid input and output during a specified time interval" .
 
 sphn:QualityControlMetric a owl:Class ;
     rdfs:label "Quality Control Metric" ;
@@ -6940,18 +6885,17 @@ sphn:Assessment a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasComponent ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasComponent ;
-                        owl:someValuesFrom sphn:AssessmentComponent ] ) ],
+                        owl:onProperty sphn:hasRange ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasRange ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRange ;
+                        owl:someValuesFrom sphn:Range ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn-loinc:LOINC snomed:363787002 snomed:254291000 snomed:71388002 ) ] ] ) ],
+                        owl:onProperty sphn:hasComponent ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasComponent ;
+                        owl:someValuesFrom sphn:AssessmentComponent ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -6969,16 +6913,18 @@ sphn:Assessment a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRange ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRange ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasRange ;
-                        owl:someValuesFrom sphn:Range ] ) ],
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( snomed:363787002 snomed:71388002 snomed:254291000 sphn-loinc:LOINC ) ] ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:254291000 ;
     skos:definition "assessment scale, classification, staging or scoring system" ;
     skos:note "sphn:hasCode allowed coding system: SNOMED CT, LOINC" ;
-    skos:scopeNote "For sphn:hasRange, instances of sphn:ReferenceRange are not allowed" ;
+    skos:scopeNote "For sphn:hasRange, instances of sphn:ReferenceRange are not allowed",
+        "For sphn:hasResult, instances of sphn:TumorStageAssessmentResult, sphn:TumorGradeAssessmentResult are not allowed" ;
     sphn:replaces sphn-deprecated:SimpleScore .
 
 sphn:FluidInputOutput a owl:Class ;
@@ -6986,21 +6932,30 @@ sphn:FluidInputOutput a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -7013,44 +6968,12 @@ sphn:FluidInputOutput a owl:Class ;
                         owl:someValuesFrom [ a owl:Restriction ;
                                 owl:onProperty sphn:hasCode ;
                                 owl:someValuesFrom snomed:33463005 ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
         sphn:SPHNConcept ;
     skos:definition "gain or loss of fluid that impacts the fluid balance" .
 
 sphn:ImagingProcedure a owl:Class ;
     rdfs:label "Imaging Procedure" ;
-    rdfs:subClassOf [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom snomed:363679005 ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIntent ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIntent ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasIntent ;
-                        owl:someValuesFrom sphn:Intent ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Class ;
+    rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
@@ -7062,18 +6985,41 @@ sphn:ImagingProcedure a owl:Class ;
                         owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasBodySite ;
                         owl:someValuesFrom sphn:BodySite ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStartDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasIntent ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
+                        owl:onProperty sphn:hasIntent ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasIntent ;
+                        owl:someValuesFrom sphn:Intent ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom snomed:363679005 ] ) ],
         sphn:MedicalProcedure ;
     owl:equivalentClass snomed:363679005 ;
     skos:definition "imaging procedure used for examination of a body site or function" ;
@@ -7082,6 +7028,12 @@ sphn:ImagingProcedure a owl:Class ;
 sphn:ImplantPresence a owl:Class ;
     rdfs:label "Implant Presence" ;
     rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasRecordDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasRecordDateTime ] ) ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
@@ -7095,15 +7047,9 @@ sphn:ImplantPresence a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRecordDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRecordDateTime ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7121,9 +7067,9 @@ sphn:ImplantPresence a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7138,58 +7084,112 @@ sphn:MicrobiologyMicroscopyResult_cellMorphology a owl:Class ;
     rdfs:subClassOf sphn:ValueSet ;
     skos:definition "cell morphology associated to the concept" .
 
-sphn:OncologyDiagnosis a owl:Class ;
-    rdfs:label "Oncology Diagnosis" ;
-    rdfs:subClassOf [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+sphn:MicroorganismIdentificationResult a owl:Class ;
+    rdfs:label "Microorganism Identification Result" ;
+    rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStringValue ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectAge ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasNumericalReference ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectAge ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSubjectAge ;
-                        owl:someValuesFrom sphn:Age ] ) ],
+                        owl:onProperty sphn:hasNumericalReference ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasNumericalReference ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( sphn:ReferenceValue sphn:ReferenceRange ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasTimeToPositivity ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasTimeToPositivity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasTimeToPositivity ;
+                        owl:someValuesFrom sphn:Quantity ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasPresenceCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasBodySite ;
-                        owl:someValuesFrom sphn:BodySite ] ) ],
+                        owl:onProperty sphn:hasPresenceCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPresenceCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( snomed:373068000 snomed:52101004 snomed:2667000 ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasQuantity ;
+                        owl:someValuesFrom sphn:Quantity ] ) ],
         [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasOrganism ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasOrganism ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasOrganism ;
+                        owl:someValuesFrom sphn:Organism ] ) ],
+        sphn:LabResult ;
+    skos:definition "result of the microorganism identification lab test" ;
+    skos:scopeNote "sphn:hasPresenceCode no subclasses allowed" .
+
+sphn:OncologyDiagnosis a owl:Class ;
+    rdfs:label "Oncology Diagnosis" ;
+    rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasRecordDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasRecordDateTime ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIncidenceDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIncidenceDateTime ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( icd-10-gm:ICD-10-GM oncotree:TISSUE sphn:Code ) ] ] ) ],
+                                owl:unionOf ( icd-10-gm:ICD-10-GM sphn:Code oncotree:TISSUE ) ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectAge ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectAge ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSubjectAge ;
+                        owl:someValuesFrom sphn:Age ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasBodySite ;
+                        owl:someValuesFrom sphn:BodySite ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasIncidenceDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasIncidenceDateTime ] ) ],
         sphn:Diagnosis ;
     owl:equivalentClass snomed:363346000 ;
     skos:definition "determination of the presence of an oncological disease, from expressed signs and symptoms and assessments such as biopsy, tumor marker test, imaging, or the like" ;
@@ -7198,36 +7198,42 @@ sphn:OncologyDiagnosis a owl:Class ;
 
 sphn:OncologySurgery a owl:Class ;
     rdfs:label "Oncology Surgery" ;
-    rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+    rdfs:subClassOf [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasCode ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStartDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasBodySite ;
                         owl:someValuesFrom sphn:BodySite ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7236,12 +7242,6 @@ sphn:OncologySurgery a owl:Class ;
                         owl:onProperty sphn:hasIntent ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasIntent ;
                         owl:someValuesFrom sphn:Intent ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         sphn:MedicalProcedure ;
     skos:definition "invasive intervention performed for, with or on behalf of an individual whose purpose is to improve, maintain or promote health, or functioning conditions in the context of an oncological disease, by the means of partial or complete exeresis of a solid tumor lesion that is the organic substrate of this disease" .
 
@@ -7249,10 +7249,10 @@ sphn:OrganSupport a owl:Class ;
     rdfs:label "Organ Support" ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7265,6 +7265,21 @@ sphn:OrganSupport a owl:Class ;
                         owl:someValuesFrom [ a owl:Restriction ;
                                 owl:onProperty sphn:hasCode ;
                                 owl:someValuesFrom snomed:399707004 ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( snomed:108241001 snomed:233573008 snomed:1222606000 snomed:1149092001 snomed:232957001 ) ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7275,7 +7290,7 @@ sphn:OrganSupport a owl:Class ;
                         owl:someValuesFrom [ a owl:Restriction ;
                                 owl:onProperty sphn:hasCode ;
                                 owl:someValuesFrom [ a owl:Class ;
-                                        owl:unionOf ( snomed:80891009 snomed:10200004 snomed:39607008 snomed:64033007 ) ] ] ] ) ],
+                                        owl:unionOf ( snomed:80891009 snomed:10200004 snomed:64033007 snomed:39607008 ) ] ] ] ) ],
         [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
@@ -7287,25 +7302,10 @@ sphn:OrganSupport a owl:Class ;
                         owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:1222606000 snomed:233573008 snomed:1149092001 snomed:232957001 snomed:108241001 ) ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         sphn:MedicalProcedure ;
     skos:definition "type and time period when patient was supported by organ support procedures" ;
     skos:scopeNote "sphn:hasIntent no subclasses allowed" .
@@ -7315,12 +7315,6 @@ sphn:ProblemCondition a owl:Class ;
     rdfs:subClassOf [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStringValue ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7330,11 +7324,9 @@ sphn:ProblemCondition a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRelativeTemporalityCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRelativeTemporalityCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasRelativeTemporalityCode ;
-                        owl:someValuesFrom snomed:307152002 ] ) ],
+                        owl:onProperty sphn:hasStringValue ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7353,6 +7345,14 @@ sphn:ProblemCondition a owl:Class ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasRelativeTemporalityCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasRelativeTemporalityCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRelativeTemporalityCode ;
+                        owl:someValuesFrom snomed:307152002 ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7370,18 +7370,18 @@ sphn:Range a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasUpperLimit ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasLowerLimit ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasUpperLimit ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasUpperLimit ;
+                        owl:onProperty sphn:hasLowerLimit ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasLowerLimit ;
                         owl:someValuesFrom sphn:Quantity ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasLowerLimit ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasUpperLimit ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasLowerLimit ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasLowerLimit ;
+                        owl:onProperty sphn:hasUpperLimit ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasUpperLimit ;
                         owl:someValuesFrom sphn:Quantity ] ) ],
         sphn:SPHNConcept ;
     skos:definition "interval of values" .
@@ -7391,18 +7391,18 @@ sphn:ReferenceRange a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasLowerLimit ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasUpperLimit ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasLowerLimit ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasLowerLimit ;
+                        owl:onProperty sphn:hasUpperLimit ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasUpperLimit ;
                         owl:someValuesFrom sphn:Quantity ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasUpperLimit ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasLowerLimit ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasUpperLimit ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasUpperLimit ;
+                        owl:onProperty sphn:hasLowerLimit ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasLowerLimit ;
                         owl:someValuesFrom sphn:Quantity ] ) ],
         sphn:Range ;
     skos:definition "interval of values that is deemed normal for a physiologic measurement in healthy individuals" .
@@ -7418,20 +7418,9 @@ sphn:TransplantPresence a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTransplant ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTransplant ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasTransplant ;
-                        owl:someValuesFrom sphn:Transplant ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7440,6 +7429,12 @@ sphn:TransplantPresence a owl:Class ;
                         owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasBodySite ;
                         owl:someValuesFrom sphn:BodySite ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7448,16 +7443,21 @@ sphn:TransplantPresence a owl:Class ;
                         owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasTransplant ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
+                        owl:onProperty sphn:hasTransplant ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasTransplant ;
+                        owl:someValuesFrom sphn:Transplant ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:737294004 ;
     skos:definition "presence of a transplanted organ or tissue such as, e.g., a kidney graft" .
@@ -7498,26 +7498,21 @@ sphn:hasPrimaryContainer a owl:ObjectProperty ;
 sphn:AccessDevicePresence a owl:Class ;
     rdfs:label "Access Device Presence" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMedicalDevice ;
+                        owl:someValuesFrom sphn:AccessDevice ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRestingPoint ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
+                        owl:onProperty sphn:hasRestingPoint ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRestingPoint ;
+                        owl:someValuesFrom sphn:BodySite ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7526,6 +7521,9 @@ sphn:AccessDevicePresence a owl:Class ;
                         owl:onProperty sphn:hasInsertionPoint ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasInsertionPoint ;
                         owl:someValuesFrom sphn:BodySite ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7535,53 +7533,63 @@ sphn:AccessDevicePresence a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMedicalDevice ;
-                        owl:someValuesFrom sphn:AccessDevice ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRestingPoint ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRestingPoint ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasRestingPoint ;
-                        owl:someValuesFrom sphn:BodySite ] ) ],
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         sphn:SPHNConcept ;
     skos:definition "application of medical access device, such as cannula, tube, catheter or drainage" .
 
 sphn:AdverseEvent a owl:Class ;
     rdfs:label "Adverse Event" ;
-    rdfs:subClassOf [ a owl:Restriction ;
+    rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasOutcome ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasOutcome ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasOutcome ;
+                        owl:someValuesFrom sphn:AdverseEvent_outcome ] ) ],
+        [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasOnsetDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+                        owl:onProperty sphn:hasOnsetDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSeverityCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasIntervention ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSeverityCode ] ) ],
+                        owl:onProperty sphn:hasIntervention ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOnsetDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOnsetDateTime ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasConsequences ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasConsequences ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasConsequences ;
-                        owl:someValuesFrom sphn:AdverseEvent_consequences ] ) ],
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom sphn:Code ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -7591,25 +7599,17 @@ sphn:AdverseEvent a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOutcome ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasConsequences ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOutcome ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasOutcome ;
-                        owl:someValuesFrom sphn:AdverseEvent_outcome ] ) ],
+                        owl:onProperty sphn:hasConsequences ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasConsequences ;
+                        owl:someValuesFrom sphn:AdverseEvent_consequences ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIntervention ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIntervention ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSeverityCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom sphn:Code ] ) ],
+                        owl:onProperty sphn:hasSeverityCode ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:281647001 ;
     skos:definition "results from an intervention that caused unintentional harm" ;
@@ -7619,12 +7619,6 @@ sphn:AdverseEvent a owl:Class ;
 sphn:Age a owl:Class ;
     rdfs:label "Age" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDeterminationDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDeterminationDateTime ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
@@ -7638,10 +7632,16 @@ sphn:Age a owl:Class ;
                                 owl:someValuesFrom [ a owl:Restriction ;
                                         owl:onProperty sphn:hasCode ;
                                         owl:someValuesFrom [ a owl:Class ;
-                                                owl:unionOf ( ucum:mo ucum:h ucum:min ucum:wk ucum:d ucum:a ) ] ] ] ] ) ],
+                                                owl:unionOf ( ucum:h ucum:a ucum:d ucum:wk ucum:min ucum:mo ) ] ] ] ] ) ],
         [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDeterminationDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDeterminationDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -7657,20 +7657,6 @@ sphn:Age a owl:Class ;
 sphn:BilledProcedure a owl:Class ;
     rdfs:label "Billed Procedure" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasBodySite ;
-                        owl:someValuesFrom sphn:BodySite ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasIntent ] [ a owl:Restriction ;
@@ -7678,15 +7664,6 @@ sphn:BilledProcedure a owl:Class ;
                         owl:onProperty sphn:hasIntent ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasIntent ;
                         owl:someValuesFrom sphn:Intent ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -7699,6 +7676,20 @@ sphn:BilledProcedure a owl:Class ;
                         owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasBodySite ;
+                        owl:someValuesFrom sphn:BodySite ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -7707,6 +7698,12 @@ sphn:BilledProcedure a owl:Class ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCode ;
                         owl:someValuesFrom chop:CHOP ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7715,16 +7712,16 @@ sphn:BilledProcedure a owl:Class ;
                         owl:onProperty sphn:hasRank ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasRank ;
                         owl:someValuesFrom sphn:BilledProcedure_rank ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         sphn:MedicalProcedure ;
     skos:definition "procedure, coded for billing (e.g. for building the Diagnosis Related Groups) according to guidelines of the national authority (e.g. Swiss Federal Office of Public Health), e.g. Z57.34 open biopsy of the urinary bladder" ;
     sphn:replaces sphn-deprecated:FOPHProcedure .
 
 sphn:Drug a owl:Class ;
     rdfs:label "Drug" ;
-    rdfs:subClassOf [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
+    rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
@@ -7732,26 +7729,29 @@ sphn:Drug a owl:Class ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasQuantity ;
                         owl:someValuesFrom sphn:Quantity ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasArticle ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasArticle ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasArticle ;
-                        owl:someValuesFrom sphn:DrugArticle ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasActiveIngredient ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasActiveIngredient ;
                         owl:someValuesFrom sphn:Substance ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasInactiveIngredient ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasInactiveIngredient ;
                         owl:someValuesFrom sphn:Substance ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasArticle ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasArticle ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasArticle ;
+                        owl:someValuesFrom sphn:DrugArticle ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:410942007 ;
     skos:definition "any substance with the intent to prevent, diagnose, treat, or relieve symptoms of a disease or abnormal condition" .
@@ -7775,23 +7775,15 @@ sphn:LabResult a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStringValue ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasQuantity ;
-                        owl:someValuesFrom sphn:Quantity ] ) ],
+                        owl:onProperty sphn:hasCode ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] ) ],
+                        owl:onProperty sphn:hasStringValue ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7801,6 +7793,14 @@ sphn:LabResult a owl:Class ;
                         owl:onProperty sphn:hasNumericalReference ;
                         owl:someValuesFrom [ a owl:Class ;
                                 owl:unionOf ( sphn:ReferenceValue sphn:ReferenceRange ) ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasQuantity ;
+                        owl:someValuesFrom sphn:Quantity ] ) ],
         sphn:Result ;
     skos:definition "outcome, value, or information which gives insight about a laboratory test" .
 
@@ -7814,14 +7814,6 @@ sphn:LabTest a owl:Class ;
                         owl:onProperty sphn:hasTestKit ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasTestKit ;
                         owl:someValuesFrom sphn:LabAnalyzer ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasInstrument ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasInstrument ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasInstrument ;
-                        owl:someValuesFrom sphn:LabAnalyzer ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -7837,6 +7829,14 @@ sphn:LabTest a owl:Class ;
                         owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasResult ;
                         owl:someValuesFrom sphn:LabResult ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasInstrument ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasInstrument ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasInstrument ;
+                        owl:someValuesFrom sphn:LabAnalyzer ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:15220000 ;
     skos:definition "specific laboratory test performed to analyze a sample with a given equipment and leading to specific results" ;
@@ -7848,17 +7848,21 @@ sphn:MicrobiologyMicroscopyResult a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCellMorphology ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasNumericalReference ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCellMorphology ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCellMorphology ;
-                        owl:someValuesFrom sphn:MicrobiologyMicroscopyResult_cellMorphology ] ) ],
+                        owl:onProperty sphn:hasNumericalReference ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasNumericalReference ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( sphn:ReferenceValue sphn:ReferenceRange ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStainingResultCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStringValue ] ) ],
+                        owl:onProperty sphn:hasStainingResultCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStainingResultCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( snomed:260385009 snomed:373068000 snomed:10828004 ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7867,16 +7871,15 @@ sphn:MicrobiologyMicroscopyResult a owl:Class ;
                         owl:onProperty sphn:hasCellCountEstimateCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCellCountEstimateCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:57176003 snomed:46998006 snomed:260396001 snomed:260413007 ) ] ] ) ],
+                                owl:unionOf ( snomed:260396001 snomed:46998006 snomed:57176003 snomed:260413007 ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasNumericalReference ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCellMorphology ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasNumericalReference ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasNumericalReference ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:ReferenceValue sphn:ReferenceRange ) ] ] ) ],
+                        owl:onProperty sphn:hasCellMorphology ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCellMorphology ;
+                        owl:someValuesFrom sphn:MicrobiologyMicroscopyResult_cellMorphology ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7885,15 +7888,6 @@ sphn:MicrobiologyMicroscopyResult a owl:Class ;
                         owl:onProperty sphn:hasCellOrganization ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCellOrganization ;
                         owl:someValuesFrom sphn:MicrobiologyMicroscopyResult_cellOrganization ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStainingResultCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStainingResultCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasStainingResultCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:373068000 snomed:10828004 snomed:260385009 ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7902,8 +7896,14 @@ sphn:MicrobiologyMicroscopyResult a owl:Class ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasQuantity ;
                         owl:someValuesFrom sphn:Quantity ] ) ],
-        sphn:LabResult ;
-    skos:definition "microscopy analysis results for a specific studied biosample in microbiology" ;
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStringValue ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStringValue ] ) ],
+        sphn:LabResult ;
+    skos:definition "microscopy analysis results for a specific studied biosample in microbiology" ;
     skos:scopeNote "sphn:hasCellCountEstimateCode no subclasses allowed",
         "sphn:hasStainingResultCode no subclasses allowed" .
 
@@ -7912,33 +7912,29 @@ sphn:OxygenAdministrationEvent a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasFlowRate ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMedicalDevice ;
-                        owl:someValuesFrom sphn:MedicalDevice ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMedicalDevice ;
+                        owl:onProperty sphn:hasFlowRate ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasFlowRate ;
+                        owl:someValuesFrom sphn:Quantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasFlowRate ;
                         owl:someValuesFrom [ a owl:Restriction ;
-                                owl:onProperty sphn:hasTypeCode ;
-                                owl:someValuesFrom [ a owl:Class ;
-                                        owl:unionOf ( snomed:466713001 snomed:720742008 snomed:426854004 ) ] ] ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                                owl:onProperty sphn:hasUnit ;
+                                owl:someValuesFrom [ a owl:Restriction ;
+                                        owl:onProperty sphn:hasCode ;
+                                        owl:someValuesFrom ucum:Lpermin ] ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFractionOfInspiredOxygen ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFractionOfInspiredOxygen ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasFractionOfInspiredOxygen ;
-                        owl:someValuesFrom sphn:FractionOfInspiredOxygen ] ) ],
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -7947,24 +7943,34 @@ sphn:OxygenAdministrationEvent a owl:Class ;
                         owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMedicalDevice ;
+                        owl:someValuesFrom sphn:MedicalDevice ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMedicalDevice ;
+                        owl:someValuesFrom [ a owl:Restriction ;
+                                owl:onProperty sphn:hasTypeCode ;
+                                owl:someValuesFrom [ a owl:Class ;
+                                        owl:unionOf ( snomed:466713001 snomed:426854004 snomed:720742008 ) ] ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFlowRate ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasFractionOfInspiredOxygen ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFlowRate ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasFlowRate ;
-                        owl:someValuesFrom sphn:Quantity ] ) ],
+                        owl:onProperty sphn:hasFractionOfInspiredOxygen ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasFractionOfInspiredOxygen ;
+                        owl:someValuesFrom sphn:FractionOfInspiredOxygen ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         sphn:SPHNConcept ;
     skos:definition "process during which oxygen is administered via cannula without supporting pressure" ;
     skos:scopeNote "For sphn:hasMedicalDevice, instances of sphn:AccessDevice, sphn:Implant, sphn:LabAnalyzer are not allowed",
@@ -8011,16 +8017,7 @@ sphn:Allergy a owl:Class ;
                         owl:onProperty sphn:hasVerificationStatusCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasVerificationStatusCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:723511001 snomed:415684004 snomed:723510000 snomed:410605003 ) ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSeverityCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSeverityCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSeverityCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:723507007 snomed:723509005 snomed:723505004 ) ] ] ) ],
+                                owl:unionOf ( snomed:723511001 snomed:723510000 snomed:415684004 snomed:410605003 ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -8038,9 +8035,15 @@ sphn:Allergy a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFirstRecordDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSeverityCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFirstRecordDateTime ] ) ],
+                        owl:onProperty sphn:hasSeverityCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSeverityCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( snomed:723507007 snomed:723505004 snomed:723509005 ) ] ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -8055,10 +8058,13 @@ sphn:Allergy a owl:Class ;
                         owl:onProperty sphn:hasReactionTypeCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasReactionTypeCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:609328004 snomed:782197009 ) ] ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                                owl:unionOf ( snomed:782197009 snomed:609328004 ) ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasFirstRecordDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasFirstRecordDateTime ] ) ],
         sphn:SPHNConcept ;
     skos:definition "risk of harmful or undesirable, physiological response which is unique to an individual and associated with exposure to an allergen" ;
     skos:scopeNote "sphn:hasReactionTypeCode no subclasses allowed",
@@ -8067,7 +8073,10 @@ sphn:Allergy a owl:Class ;
 
 sphn:CardiacOutputMeasurement a owl:Class ;
     rdfs:label "Cardiac Output Measurement" ;
-    rdfs:subClassOf [ a owl:Class ;
+    rdfs:subClassOf [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
@@ -8079,6 +8088,12 @@ sphn:CardiacOutputMeasurement a owl:Class ;
                         owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -8088,11 +8103,11 @@ sphn:CardiacOutputMeasurement a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMedicalDevice ;
-                        owl:someValuesFrom sphn:MedicalDevice ] ) ],
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPerformer ;
+                        owl:someValuesFrom sphn:Performer ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -8104,26 +8119,17 @@ sphn:CardiacOutputMeasurement a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasPerformer ;
-                        owl:someValuesFrom sphn:Performer ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMedicalDevice ;
+                        owl:someValuesFrom sphn:MedicalDevice ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStartDateTime ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
         sphn:Measurement ;
     owl:equivalentClass snomed:117610000 ;
     skos:definition "measurement of the cardiac output of the individual" ;
@@ -8139,36 +8145,29 @@ sphn:Death a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasConditionCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDate ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasConditionCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasConditionCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( icd-10-gm:ICD-10-GM snomed:64572001 ) ] ] ) ],
+                        owl:onProperty sphn:hasDate ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDate ;
+                        owl:someValuesFrom sphn:DeathDate ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCircumstanceCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasConditionCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCircumstanceCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCircumstanceCode ;
+                        owl:onProperty sphn:hasConditionCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasConditionCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( icd-10-gm:ICD-10-GM snomed:419620001 ) ] ] ) ],
+                                owl:unionOf ( icd-10-gm:ICD-10-GM snomed:64572001 ) ] ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasReportDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasReportDateTime ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -8178,11 +8177,18 @@ sphn:Death a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDate ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCircumstanceCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDate ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasDate ;
-                        owl:someValuesFrom sphn:DeathDate ] ) ],
+                        owl:onProperty sphn:hasCircumstanceCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCircumstanceCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( icd-10-gm:ICD-10-GM snomed:419620001 ) ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:419620001 ;
     skos:definition "cessation of all vital bodily functions" ;
@@ -8192,6 +8198,18 @@ sphn:Death a owl:Class ;
 sphn:Gene a owl:Class ;
     rdfs:label "Gene" ;
     rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasTranscript ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasTranscript ;
+                        owl:someValuesFrom sphn:Transcript ] ) ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasOrganism ] [ a owl:Restriction ;
@@ -8205,18 +8223,6 @@ sphn:Gene a owl:Class ;
                         owl:onProperty sphn:hasProtein ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasProtein ;
                         owl:someValuesFrom sphn:Protein ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTranscript ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasTranscript ;
-                        owl:someValuesFrom sphn:Transcript ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass so:0000704,
         snomed:67271001 ;
@@ -8227,16 +8233,31 @@ sphn:LabTestEvent a owl:Class ;
     rdfs:label "Lab Test Event" ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDateTime ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasReportDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasReportDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasLabTest ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasLabTest ;
+                        owl:someValuesFrom sphn:LabTest ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -8245,27 +8266,12 @@ sphn:LabTestEvent a owl:Class ;
                         owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasSample ;
                         owl:someValuesFrom sphn:Sample ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasLabTest ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasLabTest ;
-                        owl:someValuesFrom sphn:LabTest ] ) ],
         sphn:SPHNConcept ;
     skos:definition "occurrence in which one or multiple laboratory tests are performed on a biological specimen at a given time" ;
     skos:scopeNote "For sphn:hasLabTest, instances of sphn:AntimicrobialSusceptibilityLabTest, sphn:MicrobiologyBiomoleculePresenceLabTest, sphn:MicrobiologyMicroscopyLabTest, sphn:MicroorganismIdentificationLabTest are not allowed" .
@@ -8275,9 +8281,15 @@ sphn:NutritionIntake a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -8286,12 +8298,9 @@ sphn:NutritionIntake a owl:Class ;
                         owl:onProperty sphn:hasEnergyQuantity ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasEnergyQuantity ;
                         owl:someValuesFrom sphn:Quantity ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -8304,15 +8313,6 @@ sphn:NutritionIntake a owl:Class ;
                         owl:onProperty sphn:hasSubstance ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasSubstance ;
                         owl:someValuesFrom sphn:Substance ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -8321,7 +8321,13 @@ sphn:NutritionIntake a owl:Class ;
                         owl:onProperty sphn:hasModeCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasModeCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:289002003 snomed:926364008 snomed:268472006 snomed:926365009 snomed:169741004 ) ] ] ) ],
+                                owl:unionOf ( snomed:926365009 snomed:268472006 snomed:926364008 snomed:289002003 snomed:169741004 ) ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         sphn:SPHNConcept ;
     skos:definition "intake of nutritious substance and/or the respective amount of energy consumed" ;
     skos:scopeNote "sphn:hasModeCode no subclasses allowed" .
@@ -8329,6 +8335,15 @@ sphn:NutritionIntake a owl:Class ;
 sphn:RespiratoryRateMeasurement a owl:Class ;
     rdfs:label "Respiratory Rate Measurement" ;
     rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
@@ -8337,11 +8352,9 @@ sphn:RespiratoryRateMeasurement a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMethodCode ;
-                        owl:someValuesFrom snomed:128927009 ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -8350,12 +8363,6 @@ sphn:RespiratoryRateMeasurement a owl:Class ;
                         owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasMedicalDevice ;
                         owl:someValuesFrom sphn:MedicalDevice ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -8373,18 +8380,17 @@ sphn:RespiratoryRateMeasurement a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMethodCode ;
+                        owl:someValuesFrom snomed:128927009 ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         sphn:Measurement ;
     owl:equivalentClass snomed:408867002 ;
     skos:definition "measurement of the frequency at which the breathing occurs" ;
@@ -8398,6 +8404,20 @@ sphn:SequencingRun a owl:Class ;
                         owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMeanReadDepth ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMeanReadDepth ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMeanReadDepth ;
+                        owl:someValuesFrom sphn:Quantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMeanReadDepth ;
+                        owl:someValuesFrom [ a owl:Restriction ;
+                                owl:onProperty sphn:hasUnit ;
+                                owl:someValuesFrom [ a owl:Restriction ;
+                                        owl:onProperty sphn:hasCode ;
+                                        owl:someValuesFrom ucum:cblnbcbr ] ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -8407,17 +8427,18 @@ sphn:SequencingRun a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasReadCount ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAverageReadLength ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasReadCount ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasReadCount ;
+                        owl:onProperty sphn:hasAverageReadLength ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAverageReadLength ;
                         owl:someValuesFrom sphn:Quantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasReadCount ;
+                        owl:onProperty sphn:hasAverageReadLength ;
                         owl:someValuesFrom [ a owl:Restriction ;
                                 owl:onProperty sphn:hasUnit ;
                                 owl:someValuesFrom [ a owl:Restriction ;
                                         owl:onProperty sphn:hasCode ;
-                                        owl:someValuesFrom ucum:cblnbcbr ] ] ] ) ],
+                                        owl:someValuesFrom [ a owl:Class ;
+                                                owl:unionOf ( ucum:cblbase_paircbr ucum:cblnucleotidecbr ) ] ] ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -8435,9 +8456,17 @@ sphn:SequencingRun a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasReadCount ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIdentifier ] ) ],
+                        owl:onProperty sphn:hasReadCount ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasReadCount ;
+                        owl:someValuesFrom sphn:Quantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasReadCount ;
+                        owl:someValuesFrom [ a owl:Restriction ;
+                                owl:onProperty sphn:hasUnit ;
+                                owl:someValuesFrom [ a owl:Restriction ;
+                                        owl:onProperty sphn:hasCode ;
+                                        owl:someValuesFrom ucum:cblnbcbr ] ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -8447,32 +8476,9 @@ sphn:SequencingRun a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAverageReadLength ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAverageReadLength ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasAverageReadLength ;
-                        owl:someValuesFrom sphn:Quantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasAverageReadLength ;
-                        owl:someValuesFrom [ a owl:Restriction ;
-                                owl:onProperty sphn:hasUnit ;
-                                owl:someValuesFrom [ a owl:Restriction ;
-                                        owl:onProperty sphn:hasCode ;
-                                        owl:someValuesFrom [ a owl:Class ;
-                                                owl:unionOf ( ucum:cblnucleotidecbr ucum:cblbase_paircbr ) ] ] ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMeanReadDepth ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMeanReadDepth ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMeanReadDepth ;
-                        owl:someValuesFrom sphn:Quantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMeanReadDepth ;
-                        owl:someValuesFrom [ a owl:Restriction ;
-                                owl:onProperty sphn:hasUnit ;
-                                owl:someValuesFrom [ a owl:Restriction ;
-                                        owl:onProperty sphn:hasCode ;
-                                        owl:someValuesFrom ucum:cblnbcbr ] ] ] ) ],
+                        owl:onProperty sphn:hasIdentifier ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass <http://purl.obolibrary.org/obo/NCIT_C148088> ;
     skos:definition "the valid and completed operation of a high-throughput sequencing instrument associated with a sequencing assay" ;
@@ -8492,18 +8498,18 @@ sphn:Software a owl:Class ;
                         owl:onProperty sphn:hasDescription ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasDescription ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasUniformResourceLocator ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasUniformResourceLocator ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasVersion ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasVersion ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasUniformResourceLocator ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasUniformResourceLocator ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:706689003 ;
     skos:definition "Set of procedures and instructions in a data processing system" .
@@ -8522,12 +8528,6 @@ sphn:StandardOperatingProcedure a owl:Class ;
                         owl:onProperty sphn:hasVersion ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasVersion ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDescription ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDescription ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -8536,26 +8536,35 @@ sphn:StandardOperatingProcedure a owl:Class ;
                         owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasDataFile ;
                         owl:someValuesFrom sphn:DataFile ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDescription ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDescription ] ) ],
         sphn:SPHNConcept ;
     skos:definition "step-by-step instructions for carrying out routine operations imposed by the organization" ;
     skos:scopeNote "For sphn:hasDataFile, instances of sphn:TimeSeriesDataFile are not allowed" .
 
 sphn:VariantDescriptor a owl:Class ;
     rdfs:label "Variant Descriptor" ;
-    rdfs:subClassOf [ a owl:Class ;
+    rdfs:subClassOf [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+                        owl:onProperty sphn:hasNotation ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasNotation ;
+                        owl:someValuesFrom sphn:VariantNotation ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasGenomicVariation ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasZygosityCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasGenomicVariation ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasGenomicVariation ;
-                        owl:someValuesFrom sphn:GenomicVariation ] ) ],
+                        owl:onProperty sphn:hasZygosityCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasZygosityCode ;
+                        owl:someValuesFrom geno:0000133 ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -8567,32 +8576,29 @@ sphn:VariantDescriptor a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasGene ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasGene ;
-                        owl:someValuesFrom sphn:Gene ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasCode ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasZygosityCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAlleleOriginCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasZygosityCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasZygosityCode ;
-                        owl:someValuesFrom geno:0000133 ] ) ],
+                        owl:onProperty sphn:hasAlleleOriginCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAlleleOriginCode ;
+                        owl:someValuesFrom geno:0000877 ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -8604,31 +8610,26 @@ sphn:VariantDescriptor a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAlleleOriginCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAlleleOriginCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasAlleleOriginCode ;
-                        owl:someValuesFrom geno:0000877 ] ) ],
+                        owl:onProperty sphn:hasGene ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasGene ;
+                        owl:someValuesFrom sphn:Gene ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasNotation ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasNotation ;
-                        owl:someValuesFrom sphn:VariantNotation ] ) ],
+                        owl:onProperty sphn:hasGenomicVariation ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasGenomicVariation ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasGenomicVariation ;
+                        owl:someValuesFrom sphn:GenomicVariation ] ) ],
         sphn:SPHNConcept ;
     skos:definition "human-readable description of the variant" ;
     skos:note "sphn:hasCode allowed coding system: ClinVar, RefSNP or other" .
 
 sphn:BloodPressureMeasurement a owl:Class ;
     rdfs:label "Blood Pressure Measurement" ;
-    rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMedicalDevice ;
-                        owl:someValuesFrom sphn:MedicalDevice ] ) ],
+    rdfs:subClassOf [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -8638,9 +8639,12 @@ sphn:BloodPressureMeasurement a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
+                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMethodCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( snomed:46973005 snomed:716777001 ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -8653,10 +8657,13 @@ sphn:BloodPressureMeasurement a owl:Class ;
                         owl:someValuesFrom [ a owl:Restriction ;
                                 owl:onProperty sphn:hasCode ;
                                 owl:someValuesFrom [ a owl:Class ;
-                                        owl:unionOf ( snomed:8205005 snomed:7569003 snomed:344001 snomed:40983000 snomed:68367000 snomed:53840002 snomed:14975008 snomed:113257007 ) ] ] ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                                        owl:unionOf ( snomed:53840002 snomed:68367000 snomed:14975008 snomed:40983000 snomed:8205005 snomed:7569003 snomed:344001 snomed:113257007 ) ] ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -8665,19 +8672,20 @@ sphn:BloodPressureMeasurement a owl:Class ;
                         owl:someValuesFrom sphn:BloodPressure ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMedicalDevice ;
+                        owl:someValuesFrom sphn:MedicalDevice ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMethodCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:716777001 snomed:46973005 ) ] ] ) ],
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPerformer ;
+                        owl:someValuesFrom sphn:Performer ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -8686,12 +8694,10 @@ sphn:BloodPressureMeasurement a owl:Class ;
                         owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasPerformer ;
-                        owl:someValuesFrom sphn:Performer ] ) ],
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         sphn:Measurement ;
     owl:equivalentClass snomed:46973005 ;
     skos:definition "measurement process of a blood pressure on an individual" ;
@@ -8699,18 +8705,7 @@ sphn:BloodPressureMeasurement a owl:Class ;
 
 sphn:BodyHeightMeasurement a owl:Class ;
     rdfs:label "Body Height Measurement" ;
-    rdfs:subClassOf [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMethodCode ;
-                        owl:someValuesFrom snomed:128927009 ] ) ],
-        [ a owl:Class ;
+    rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
@@ -8721,19 +8716,11 @@ sphn:BodyHeightMeasurement a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAssociatedEvent ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAssociatedEvent ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasAssociatedEvent ;
-                        owl:someValuesFrom sphn:Birth ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasPerformer ;
-                        owl:someValuesFrom sphn:Performer ] ) ],
+                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMethodCode ;
+                        owl:someValuesFrom snomed:128927009 ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -8742,24 +8729,43 @@ sphn:BodyHeightMeasurement a owl:Class ;
                         owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasResult ;
                         owl:someValuesFrom sphn:BodyHeight ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPerformer ;
+                        owl:someValuesFrom sphn:Performer ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAssociatedEvent ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAssociatedEvent ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAssociatedEvent ;
+                        owl:someValuesFrom sphn:Birth ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -8776,34 +8782,35 @@ sphn:BodyTemperatureMeasurement a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasResult ;
+                        owl:someValuesFrom sphn:BodyTemperature ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasBodySite ;
+                        owl:someValuesFrom sphn:BodySite ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMethodCode ;
-                        owl:someValuesFrom snomed:128927009 ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasPerformer ;
-                        owl:someValuesFrom sphn:Performer ] ) ],
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -8815,29 +8822,28 @@ sphn:BodyTemperatureMeasurement a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasBodySite ;
-                        owl:someValuesFrom sphn:BodySite ] ) ],
+                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMethodCode ;
+                        owl:someValuesFrom snomed:128927009 ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPerformer ;
+                        owl:someValuesFrom sphn:Performer ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasResult ;
-                        owl:someValuesFrom sphn:BodyTemperature ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         sphn:Measurement ;
     owl:equivalentClass snomed:56342008 ;
     skos:definition "measurement of the body temperature of the individual" ;
@@ -8856,40 +8862,29 @@ sphn:BodyWeightMeasurement a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasResult ;
-                        owl:someValuesFrom sphn:BodyWeight ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMedicalDevice ;
-                        owl:someValuesFrom sphn:MedicalDevice ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPerformer ;
+                        owl:someValuesFrom sphn:Performer ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -8901,17 +8896,28 @@ sphn:BodyWeightMeasurement a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasPerformer ;
-                        owl:someValuesFrom sphn:Performer ] ) ],
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMedicalDevice ;
+                        owl:someValuesFrom sphn:MedicalDevice ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasResult ;
+                        owl:someValuesFrom sphn:BodyWeight ] ) ],
         sphn:Measurement ;
     owl:equivalentClass snomed:39857003 ;
     skos:definition "measurement of the weight of the individual" ;
@@ -8919,24 +8925,18 @@ sphn:BodyWeightMeasurement a owl:Class ;
 
 sphn:Diagnosis a owl:Class ;
     rdfs:label "Diagnosis" ;
-    rdfs:subClassOf [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasCode ],
+    rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -8945,12 +8945,18 @@ sphn:Diagnosis a owl:Class ;
                         owl:onProperty sphn:hasSubjectAge ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasSubjectAge ;
                         owl:someValuesFrom sphn:Age ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasRecordDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasRecordDateTime ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasCode ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:439401001 ;
     skos:definition "determination of the presence of a disease, condition, or injury from expressed signs and symptoms and assessments such as physical examination, laboratory test, or the like" ;
@@ -8961,25 +8967,25 @@ sphn:GenomicVariation a owl:Class ;
     rdfs:subClassOf sphn:SPHNConcept ;
     owl:equivalentClass geno:0000476,
         so:0001060 ;
-    skos:definition "a genomic variation occurring at a defined position" .
+    skos:definition "a genomic variation occurring at a defined position" ;
+    sphn:replaces sphn-deprecated:GeneticVariation .
 
 sphn:HealthcareEncounter a owl:Class ;
     rdfs:label "Healthcare Encounter" ;
-    rdfs:subClassOf [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
+    rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasOriginLocation ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasOriginLocation ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasOriginLocation ;
+                        owl:someValuesFrom sphn:Location ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
+                        owl:onProperty sphn:hasIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -8991,25 +8997,29 @@ sphn:HealthcareEncounter a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOriginLocation ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCurrentLocation ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOriginLocation ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasOriginLocation ;
+                        owl:onProperty sphn:hasCurrentLocation ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCurrentLocation ;
                         owl:someValuesFrom sphn:Location ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIdentifier ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIdentifier ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCurrentLocation ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCurrentLocation ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCurrentLocation ;
-                        owl:someValuesFrom sphn:Location ] ) ],
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9018,18 +9028,15 @@ sphn:HealthcareEncounter a owl:Class ;
                         owl:onProperty sphn:hasTherapeuticArea ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasTherapeuticArea ;
                         owl:someValuesFrom sphn:TherapeuticArea ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:308335008 ;
     skos:definition "an interaction between an individual and a specific unit or service of a healthcare provider institute, e.g. emergency, intensive care unit, for the purpose of providing healthcare service(s) or assessing the health status of an individual" .
@@ -9057,31 +9064,6 @@ sphn:Location a owl:Class ;
 sphn:OxygenSaturationMeasurement a owl:Class ;
     rdfs:label "Oxygen Saturation Measurement" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasBodySite ;
-                        owl:someValuesFrom sphn:BodySite ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasResult ;
-                        owl:someValuesFrom sphn:OxygenSaturation ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMethodCode ;
-                        owl:someValuesFrom snomed:128927009 ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
@@ -9096,11 +9078,15 @@ sphn:OxygenSaturationMeasurement a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasPerformer ;
-                        owl:someValuesFrom sphn:Performer ] ) ],
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasResult ;
+                        owl:someValuesFrom sphn:OxygenSaturation ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9118,9 +9104,30 @@ sphn:OxygenSaturationMeasurement a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
+                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasBodySite ;
+                        owl:someValuesFrom sphn:BodySite ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMethodCode ;
+                        owl:someValuesFrom snomed:128927009 ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPerformer ;
+                        owl:someValuesFrom sphn:Performer ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         sphn:Measurement ;
     owl:equivalentClass snomed:104847001 ;
     skos:definition "measurement of the oxygen saturation of the individual" ;
@@ -9130,54 +9137,18 @@ sphn:OxygenSaturationMeasurement a owl:Class ;
 sphn:RadiotherapyProcedure a owl:Class ;
     rdfs:label "Radiotherapy Procedure" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRadiationQuantity ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRadiationQuantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasRadiationQuantity ;
-                        owl:someValuesFrom sphn:Quantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasRadiationQuantity ;
-                        owl:someValuesFrom [ a owl:Restriction ;
-                                owl:onProperty sphn:hasUnit ;
-                                owl:someValuesFrom [ a owl:Restriction ;
-                                        owl:onProperty sphn:hasCode ;
-                                        owl:someValuesFrom [ a owl:Class ;
-                                                owl:unionOf ( ucum:mCi ucum:Gy ucum:cGy ucum:MBq ) ] ] ] ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:152198000 snomed:168524008 snomed:78080008 snomed:33195004 snomed:395096001 snomed:115959002 snomed:74964007 snomed:399315003 ) ] ] ) ],
+                                owl:unionOf ( snomed:74964007 snomed:395096001 snomed:33195004 snomed:115959002 snomed:78080008 snomed:399315003 snomed:168524008 snomed:152198000 ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9185,13 +9156,25 @@ sphn:RadiotherapyProcedure a owl:Class ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasFractionsNumber ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasFractionsNumber ;
-                        owl:someValuesFrom sphn:Quantity ] ) ],
+                        owl:someValuesFrom sphn:Quantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasFractionsNumber ;
+                        owl:someValuesFrom [ a owl:Restriction ;
+                                owl:onProperty sphn:hasUnit ;
+                                owl:someValuesFrom [ a owl:Restriction ;
+                                        owl:onProperty sphn:hasCode ;
+                                        owl:someValuesFrom ucum:cblnbcbr ] ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasBodySite ;
                         owl:someValuesFrom sphn:BodySite ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9200,19 +9183,41 @@ sphn:RadiotherapyProcedure a owl:Class ;
                         owl:onProperty sphn:hasIntent ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasIntent ;
                         owl:someValuesFrom sphn:Intent ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasRadiationQuantity ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasRadiationQuantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRadiationQuantity ;
+                        owl:someValuesFrom sphn:Quantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRadiationQuantity ;
+                        owl:someValuesFrom [ a owl:Restriction ;
+                                owl:onProperty sphn:hasUnit ;
+                                owl:someValuesFrom [ a owl:Restriction ;
+                                        owl:onProperty sphn:hasCode ;
+                                        owl:someValuesFrom [ a owl:Class ;
+                                                owl:unionOf ( ucum:MBq ucum:Gy ucum:cGy ucum:mCi ) ] ] ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         sphn:MedicalProcedure ;
     owl:equivalentClass snomed:108290001 ;
     skos:definition "given radiotherapy procedure during oncological treatment" ;
     skos:scopeNote "sphn:hasCode no subclasses allowed" .
 
-sphn:hasOrganism a owl:ObjectProperty ;
-    rdfs:label "has organism" ;
-    rdfs:domain [ a owl:Class ;
-            owl:unionOf ( sphn:Gene sphn:SPHNConcept sphn:Isolate sphn:Protein sphn:Transcript ) ] ;
-    rdfs:range sphn:Organism ;
-    rdfs:subPropertyOf sphn:SPHNAttributeObject ;
-    skos:definition "organism associated to the concept" .
-
 sphn:hasPredecessor a owl:ObjectProperty ;
     rdfs:label "has predecessor" ;
     rdfs:domain [ a owl:Class ;
@@ -9250,6 +9255,15 @@ sphn:hasSubjectAge a owl:ObjectProperty ;
 sphn:AllergyEpisode a owl:Class ;
     rdfs:label "Allergy Episode" ;
     rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasExposure ] [ a owl:Restriction ;
@@ -9263,6 +9277,31 @@ sphn:AllergyEpisode a owl:Class ;
                         owl:onProperty sphn:hasDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSeverityCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSeverityCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSeverityCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( snomed:24484000 snomed:255604002 snomed:6736007 ) ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAllergen ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAllergen ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAllergen ;
+                        owl:someValuesFrom sphn:Allergen ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDuration ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDuration ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDuration ;
+                        owl:someValuesFrom sphn:Quantity ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -9278,17 +9317,6 @@ sphn:AllergyEpisode a owl:Class ;
                         owl:onProperty sphn:hasCertaintyCode ;
                         owl:someValuesFrom [ a owl:Class ;
                                 owl:unionOf ( snomed:415684004 snomed:410592001 snomed:410605003 ) ] ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasBodySite ;
-                        owl:someValuesFrom sphn:BodySite ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9300,34 +9328,11 @@ sphn:AllergyEpisode a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAllergen ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAllergen ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasAllergen ;
-                        owl:someValuesFrom sphn:Allergen ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSeverityCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSeverityCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSeverityCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:24484000 snomed:6736007 snomed:255604002 ) ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDuration ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDuration ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasDuration ;
-                        owl:someValuesFrom sphn:Quantity ] ) ],
+                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasBodySite ;
+                        owl:someValuesFrom sphn:BodySite ] ) ],
         sphn:SPHNConcept ;
     skos:definition "manifestation of an allergic reaction following an exposure to an allergen" ;
     skos:scopeNote "For sphn:hasExposure, instances of sphn:TobaccoExposure are not allowed",
@@ -9337,12 +9342,6 @@ sphn:AllergyEpisode a owl:Class ;
 sphn:CircumferenceMeasurement a owl:Class ;
     rdfs:label "Circumference Measurement" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
@@ -9351,22 +9350,17 @@ sphn:CircumferenceMeasurement a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAssociatedEvent ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMedicalDevice ;
-                        owl:someValuesFrom sphn:MedicalDevice ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                        owl:onProperty sphn:hasAssociatedEvent ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAssociatedEvent ;
+                        owl:someValuesFrom sphn:Birth ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasBodySite ;
-                        owl:someValuesFrom sphn:BodySite ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9375,28 +9369,12 @@ sphn:CircumferenceMeasurement a owl:Class ;
                         owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasPerformer ;
                         owl:someValuesFrom sphn:Performer ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasResult ;
-                        owl:someValuesFrom sphn:Circumference ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasEndDateTime ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAssociatedEvent ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAssociatedEvent ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasAssociatedEvent ;
-                        owl:someValuesFrom sphn:Birth ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9405,12 +9383,39 @@ sphn:CircumferenceMeasurement a owl:Class ;
                         owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasMethodCode ;
                         owl:someValuesFrom snomed:128927009 ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasResult ;
+                        owl:someValuesFrom sphn:Circumference ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasBodySite ;
+                        owl:someValuesFrom sphn:BodySite ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMedicalDevice ;
+                        owl:someValuesFrom sphn:MedicalDevice ] ) ],
         sphn:Measurement ;
     skos:definition "measurement of the circumference measure of a body site" ;
     skos:scopeNote "For sphn:hasMedicalDevice, instances of sphn:AccessDevice, sphn:LabAnalyzer, sphn:Implant are not allowed" ;
@@ -9421,15 +9426,22 @@ sphn:ElectrocardiographicProcedure a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasBodySite ;
-                        owl:someValuesFrom sphn:BodySite ] ) ],
+                        owl:onProperty sphn:hasSubjectPhysiologicState ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPhysiologicState ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSubjectPhysiologicState ;
+                        owl:someValuesFrom sphn:PhysiologicState ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSubjectPhysiologicState ;
+                        owl:someValuesFrom [ a owl:Restriction ;
+                                owl:onProperty sphn:hasCode ;
+                                owl:someValuesFrom [ a owl:Class ;
+                                        owl:unionOf ( snomed:128975004 snomed:128976003 ) ] ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom snomed:29303009 ] ) ],
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9446,10 +9458,10 @@ sphn:ElectrocardiographicProcedure a owl:Class ;
                                         owl:someValuesFrom ucum:cblnbcbr ] ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9465,10 +9477,10 @@ sphn:ElectrocardiographicProcedure a owl:Class ;
                                         owl:unionOf ( snomed:261004008 snomed:360156006 ) ] ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasBodySite ;
+                        owl:someValuesFrom sphn:BodySite ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9479,32 +9491,25 @@ sphn:ElectrocardiographicProcedure a owl:Class ;
                         owl:someValuesFrom sphn:Electrocardiogram ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom snomed:29303009 ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPhysiologicState ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPhysiologicState ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSubjectPhysiologicState ;
-                        owl:someValuesFrom sphn:PhysiologicState ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSubjectPhysiologicState ;
-                        owl:someValuesFrom [ a owl:Restriction ;
-                                owl:onProperty sphn:hasCode ;
-                                owl:someValuesFrom [ a owl:Class ;
-                                        owl:unionOf ( snomed:128976003 snomed:128975004 ) ] ] ] ) ],
         sphn:MedicalProcedure ;
     owl:equivalentClass snomed:29303009 ;
     skos:definition "electrographic procedure on the heart which results in a graph of voltage versus time visualizing the electrical activity of the heart muscle using electrodes placed on the skin" ;
@@ -9514,26 +9519,6 @@ sphn:ElectrocardiographicProcedure a owl:Class ;
 sphn:HeartRateMeasurement a owl:Class ;
     rdfs:label "Heart Rate Measurement" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMethodCode ;
-                        owl:someValuesFrom snomed:128927009 ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasResult ;
-                        owl:someValuesFrom sphn:HeartRate ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
@@ -9550,20 +9535,23 @@ sphn:HeartRateMeasurement a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPhysiologicState ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPhysiologicState ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSubjectPhysiologicState ;
-                        owl:someValuesFrom sphn:PhysiologicState ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasResult ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasResult ;
+                        owl:someValuesFrom sphn:HeartRate ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
+                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPerformer ;
+                        owl:someValuesFrom sphn:Performer ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9572,20 +9560,37 @@ sphn:HeartRateMeasurement a owl:Class ;
                         owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasBodySite ;
                         owl:someValuesFrom sphn:BodySite ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSubjectPhysiologicState ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasPerformer ;
-                        owl:someValuesFrom sphn:Performer ] ) ],
+                        owl:onProperty sphn:hasSubjectPhysiologicState ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSubjectPhysiologicState ;
+                        owl:someValuesFrom sphn:PhysiologicState ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStartDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMethodCode ;
+                        owl:someValuesFrom snomed:128927009 ] ) ],
         sphn:Measurement ;
     owl:equivalentClass snomed:65653002 ;
     skos:definition "measurement of the heart rate of the individual" ;
@@ -9596,20 +9601,19 @@ sphn:SequencingAnalysis a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSubjectPseudoIdentifier ],
+                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStandardOperatingProcedure ;
+                        owl:someValuesFrom sphn:StandardOperatingProcedure ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasInput ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasReferenceSequence ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasInput ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasInput ;
-                        owl:someValuesFrom sphn:DataFile ] ) ],
+                        owl:onProperty sphn:hasReferenceSequence ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasReferenceSequence ;
+                        owl:someValuesFrom sphn:ReferenceSequence ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -9618,22 +9622,43 @@ sphn:SequencingAnalysis a owl:Class ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:Code sphn:Terminology edam:operation_2945 ) ] ] ) ],
+                                owl:unionOf ( edam:operation_2945 sphn:Terminology sphn:Code ) ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasPredecessor ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPredecessor ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( sphn:DataProcessing sphn:Assay ) ] ] ) ],
         [ a owl:Restriction ;
             owl:minCardinality "0"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasAdministrativeCase ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOutput ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasOutput ;
+                        owl:onProperty sphn:hasInput ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasInput ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasInput ;
                         owl:someValuesFrom sphn:DataFile ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasQualityControlMetric ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasQualityControlMetric ;
                         owl:someValuesFrom sphn:QualityControlMetric ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasOutput ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasOutput ;
+                        owl:someValuesFrom sphn:DataFile ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSubjectPseudoIdentifier ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9645,29 +9670,9 @@ sphn:SequencingAnalysis a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ;
-                        owl:someValuesFrom sphn:StandardOperatingProcedure ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasReferenceSequence ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasReferenceSequence ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasReferenceSequence ;
-                        owl:someValuesFrom sphn:ReferenceSequence ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPredecessor ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasPredecessor ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:Assay sphn:DataProcessing ) ] ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         sphn:DataProcessing ;
     skos:definition "analysis of the output of a nucleic acid sequencing assay" ;
     skos:note "sphn:hasCode allowed coding system: EDAM or other" .
@@ -9692,12 +9697,10 @@ sphn:DrugAdministrationEvent a owl:Class ;
                         owl:someValuesFrom sphn:TimePattern ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDuration ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDuration ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasDuration ;
-                        owl:someValuesFrom sphn:Quantity ] ) ],
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -9706,9 +9709,6 @@ sphn:DrugAdministrationEvent a owl:Class ;
                         owl:onProperty sphn:hasDrug ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasDrug ;
                         owl:someValuesFrom sphn:Drug ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9717,19 +9717,10 @@ sphn:DrugAdministrationEvent a owl:Class ;
                         owl:onProperty sphn:hasReasonToStopCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasReasonToStopCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:31438003 snomed:399307001 snomed:419620001 snomed:182844005 snomed:182845006 snomed:182846007 snomed:395007004 snomed:182872003 snomed:74964007 snomed:441308009 snomed:395009001 ) ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
+                                owl:unionOf ( snomed:31438003 snomed:399307001 snomed:441308009 snomed:74964007 snomed:395007004 snomed:182844005 snomed:395009001 snomed:182872003 snomed:182845006 snomed:419620001 snomed:182846007 ) ] ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9750,6 +9741,20 @@ sphn:DrugAdministrationEvent a owl:Class ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDuration ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDuration ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDuration ;
+                        owl:someValuesFrom sphn:Quantity ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:182832007 ;
     skos:definition "single event at which a drug was administered to the patient; this could be a single time point in case of a pill/cream or a duration in case of a single infusion pack or a single patch; one or many drug administration events are initiated by a drug prescription depending on the frequency stated in the prescription" ;
@@ -9760,18 +9765,9 @@ sphn:NucleotideSequence a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSequenceLength ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDerivedSequence ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSequenceLength ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSequenceLength ;
-                        owl:someValuesFrom sphn:Quantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSequenceLength ;
-                        owl:someValuesFrom [ a owl:Restriction ;
-                                owl:onProperty sphn:hasUnit ;
-                                owl:someValuesFrom [ a owl:Restriction ;
-                                        owl:onProperty sphn:hasCode ;
-                                        owl:someValuesFrom [ a owl:Class ;
-                                                owl:unionOf ( ucum:cblnucleotidecbr ucum:cblbase_paircbr ) ] ] ] ] ) ],
+                        owl:onProperty sphn:hasDerivedSequence ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9781,9 +9777,18 @@ sphn:NucleotideSequence a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDerivedSequence ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSequenceLength ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDerivedSequence ] ) ],
+                        owl:onProperty sphn:hasSequenceLength ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSequenceLength ;
+                        owl:someValuesFrom sphn:Quantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSequenceLength ;
+                        owl:someValuesFrom [ a owl:Restriction ;
+                                owl:onProperty sphn:hasUnit ;
+                                owl:someValuesFrom [ a owl:Restriction ;
+                                        owl:onProperty sphn:hasCode ;
+                                        owl:someValuesFrom [ a owl:Class ;
+                                                owl:unionOf ( ucum:cblbase_paircbr ucum:cblnucleotidecbr ) ] ] ] ] ) ],
         sphn:SPHNConcept ;
     skos:definition "a linear arrangement of nucleotides that make up the DNA or RNA sequence" .
 
@@ -9795,14 +9800,6 @@ sphn:Substance a owl:Class ;
                         owl:onProperty sphn:hasGenericName ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasGenericName ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasQuantity ;
-                        owl:someValuesFrom sphn:Quantity ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9811,10 +9808,18 @@ sphn:Substance a owl:Class ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:Terminology snomed:105590001 sphn:Code ) ] ] ) ],
+                                owl:unionOf ( snomed:105590001 sphn:Terminology sphn:Code ) ] ] ) ],
         [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasQuantity ;
+                        owl:someValuesFrom sphn:Quantity ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:105590001 ;
     skos:definition "any matter of defined composition that has discrete existence, whose origin may be biological, mineral or chemical" ;
@@ -9823,6 +9828,36 @@ sphn:Substance a owl:Class ;
 sphn:TobaccoExposure a owl:Class ;
     rdfs:label "Tobacco Exposure" ;
     rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasTypeCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasTypeCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasTypeCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( snomed:43381005 snomed:77176002 snomed:228493008 snomed:35361000087100 snomed:228513009 snomed:722499006 snomed:228494002 snomed:702979003 snomed:8517006 snomed:81703003 ) ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasRecordDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasRecordDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDegreeCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDegreeCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDegreeCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( snomed:75540009 snomed:1255665007 snomed:62482003 ) ] ] ) ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
@@ -9850,18 +9885,6 @@ sphn:TobaccoExposure a owl:Class ;
                                 owl:someValuesFrom [ a owl:Restriction ;
                                         owl:onProperty sphn:hasCode ;
                                         owl:someValuesFrom ucum:a ] ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9870,51 +9893,33 @@ sphn:TobaccoExposure a owl:Class ;
                         owl:onProperty sphn:hasStartDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAgentCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAgentCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasAgentCode ;
-                        owl:someValuesFrom snomed:39953003 ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRecordDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRecordDateTime ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRouteCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasRouteCode ;
-                        owl:someValuesFrom snomed:138875005 ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTypeCode ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTypeCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasTypeCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:35361000087100 snomed:722499006 snomed:8517006 snomed:228494002 snomed:228513009 snomed:228493008 snomed:81703003 snomed:77176002 snomed:702979003 snomed:43381005 ) ] ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDegreeCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDegreeCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasDegreeCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:62482003 snomed:1255665007 snomed:75540009 ) ] ] ) ],
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRouteCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRouteCode ;
+                        owl:someValuesFrom snomed:138875005 ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAgentCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                        owl:onProperty sphn:hasAgentCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAgentCode ;
+                        owl:someValuesFrom snomed:39953003 ] ) ],
         sphn:Exposure ;
     owl:equivalentClass snomed:229819007 ;
     skos:definition "episode of exposure of an individual to tobacco in various forms" ;
@@ -9924,11 +9929,26 @@ sphn:TobaccoExposure a owl:Class ;
 sphn:TumorSpecimen a owl:Class ;
     rdfs:label "Tumor Specimen" ;
     rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSharedIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSharedIdentifier ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasCollectionDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasCollectionDateTime ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasIdentifier ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9937,17 +9957,6 @@ sphn:TumorSpecimen a owl:Class ;
                         owl:onProperty sphn:hasPrimaryContainer ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasPrimaryContainer ;
                         owl:someValuesFrom sphn:Sample_primaryContainer ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMedicalDevice ;
-                        owl:someValuesFrom sphn:MedicalDevice ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasIdentifier ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9962,17 +9971,14 @@ sphn:TumorSpecimen a owl:Class ;
                                 owl:someValuesFrom [ a owl:Restriction ;
                                         owl:onProperty sphn:hasCode ;
                                         owl:someValuesFrom ucum:percent ] ] ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFixationType ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFixationType ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasFixationType ;
-                        owl:someValuesFrom sphn:Sample_fixationType ] ) ],
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMedicalDevice ;
+                        owl:someValuesFrom sphn:MedicalDevice ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -9982,21 +9988,14 @@ sphn:TumorSpecimen a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMaterialTypeCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMaterialTypeCode ;
-                        owl:someValuesFrom snomed:123038009 ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSharedIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasFixationType ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSharedIdentifier ] ) ],
+                        owl:onProperty sphn:hasFixationType ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasFixationType ;
+                        owl:someValuesFrom sphn:Sample_fixationType ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -10005,6 +10004,12 @@ sphn:TumorSpecimen a owl:Class ;
                         owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasBodySite ;
                         owl:someValuesFrom sphn:BodySite ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMaterialTypeCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMaterialTypeCode ;
+                        owl:someValuesFrom snomed:123038009 ] ) ],
         sphn:Sample ;
     owl:equivalentClass snomed:258435002 ;
     skos:definition "tumor specimen, volume and fixation method used" .
@@ -10028,21 +10033,26 @@ sphn:hasSoftware a owl:ObjectProperty ;
 
 sphn:Assay a owl:Class ;
     rdfs:label "Assay" ;
-    rdfs:subClassOf [ a owl:Class ;
+    rdfs:subClassOf [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasDataFile ;
-                        owl:someValuesFrom sphn:DataFile ] ) ],
+                        owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSample ;
+                        owl:someValuesFrom sphn:Sample ] ) ],
         [ a owl:Restriction ;
             owl:minCardinality "0"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasAdministrativeCase ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPredecessor ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasPredecessor ;
-                        owl:someValuesFrom sphn:SampleProcessing ] ) ],
+                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStandardOperatingProcedure ;
+                        owl:someValuesFrom sphn:StandardOperatingProcedure ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -10052,17 +10062,15 @@ sphn:Assay a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ;
-                        owl:someValuesFrom sphn:StandardOperatingProcedure ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Restriction ;
-            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSubjectPseudoIdentifier ],
+                        owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDataFile ;
+                        owl:someValuesFrom sphn:DataFile ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasPredecessor ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPredecessor ;
+                        owl:someValuesFrom sphn:SampleProcessing ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -10071,19 +10079,16 @@ sphn:Assay a owl:Class ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( obi:0000070 sphn:Terminology sphn:Code ) ] ] ) ],
+                                owl:unionOf ( sphn:Terminology obi:0000070 sphn:Code ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasIdentifier ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSample ;
-                        owl:someValuesFrom sphn:Sample ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSubjectPseudoIdentifier ],
         sphn:SPHNConcept ;
     owl:equivalentClass obi:0000070 ;
     skos:definition "a process with the objective to produce information about a sample by examining it" ;
@@ -10092,17 +10097,22 @@ sphn:Assay a owl:Class ;
 sphn:Birth a owl:Class ;
     rdfs:label "Birth" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasMedicalDevice ;
                         owl:someValuesFrom sphn:MedicalDevice ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDate ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDate ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDate ;
+                        owl:someValuesFrom sphn:BirthDate ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -10125,6 +10135,12 @@ sphn:Birth a owl:Class ;
                         owl:onProperty sphn:hasCountry ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCountry ;
                         owl:someValuesFrom sphn:Country ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -10133,6 +10149,12 @@ sphn:Birth a owl:Class ;
                         owl:onProperty sphn:hasDeliveryModeCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasDeliveryModeCode ;
                         owl:someValuesFrom snomed:118215003 ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -10141,23 +10163,6 @@ sphn:Birth a owl:Class ;
                         owl:onProperty sphn:hasGestationalAge ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasGestationalAge ;
                         owl:someValuesFrom sphn:GestationalAgeAtBirth ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDate ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDate ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasDate ;
-                        owl:someValuesFrom sphn:BirthDate ] ) ],
         sphn:SPHNConcept ;
     skos:definition "the event of being born" ;
     skos:scopeNote "For sphn:hasMedicalDevice, instances of sphn:AccessDevice, sphn:LabAnalyzer, sphn:Implant are not allowed" .
@@ -10167,15 +10172,11 @@ sphn:MedicalProcedure a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasIntent ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasCode ],
+                        owl:onProperty sphn:hasIntent ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasIntent ;
+                        owl:someValuesFrom sphn:Intent ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -10184,30 +10185,34 @@ sphn:MedicalProcedure a owl:Class ;
                         owl:onProperty sphn:hasStartDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIntent ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIntent ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasIntent ;
-                        owl:someValuesFrom sphn:Intent ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasCode ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasBodySite ;
                         owl:someValuesFrom sphn:BodySite ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:71388002 ;
     skos:definition "invasive or non-invasive intervention performed for, with or on behalf of an individual whose purpose is to assess, improve, maintain, promote or modify health, functioning or health conditions" ;
@@ -10223,7 +10228,7 @@ sphn:Performer a owl:Class ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( snomed:14679004 snomed:125676002 ) ] ] ) ],
+                                owl:unionOf ( snomed:125676002 snomed:14679004 ) ] ] ) ],
         sphn:SPHNConcept ;
     skos:definition "person who carried out the action" .
 
@@ -10244,6 +10249,14 @@ sphn:hasNumericalReference a owl:ObjectProperty ;
     rdfs:subPropertyOf sphn:SPHNAttributeObject ;
     skos:definition "numerical reference associated to the concept" .
 
+sphn:hasOrganism a owl:ObjectProperty ;
+    rdfs:label "has organism" ;
+    rdfs:domain [ a owl:Class ;
+            owl:unionOf ( sphn:Gene sphn:SPHNConcept sphn:Isolate sphn:MicroorganismIdentificationResult sphn:Protein sphn:Transcript ) ] ;
+    rdfs:range sphn:Organism ;
+    rdfs:subPropertyOf sphn:SPHNAttributeObject ;
+    skos:definition "organism associated to the concept" .
+
 sphn:hasTestKit a owl:ObjectProperty ;
     rdfs:label "has test kit" ;
     rdfs:domain [ a owl:Class ;
@@ -10254,24 +10267,39 @@ sphn:hasTestKit a owl:ObjectProperty ;
 
 sphn:DataProcessing a owl:Class ;
     rdfs:label "Data Processing" ;
-    rdfs:subClassOf [ a owl:Restriction ;
-            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasAdministrativeCase ],
+    rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasPredecessor ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPredecessor ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( sphn:DataProcessing sphn:Assay ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOutput ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasOutput ;
-                        owl:someValuesFrom sphn:DataFile ] ) ],
+                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStandardOperatingProcedure ;
+                        owl:someValuesFrom sphn:StandardOperatingProcedure ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSubjectPseudoIdentifier ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStartDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasInput ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasInput ;
+                        owl:someValuesFrom sphn:DataFile ] ) ],
         [ a owl:Restriction ;
             owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSubjectPseudoIdentifier ],
+            owl:onProperty sphn:hasAdministrativeCase ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -10279,31 +10307,14 @@ sphn:DataProcessing a owl:Class ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( edam:operation_0004 sphn:Terminology sphn:Code obi:0200000 ) ] ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ;
-                        owl:someValuesFrom sphn:StandardOperatingProcedure ] ) ],
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( sphn:Terminology edam:operation_0004 sphn:Code obi:0200000 ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasInput ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasInput ;
+                        owl:onProperty sphn:hasOutput ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasOutput ;
                         owl:someValuesFrom sphn:DataFile ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQualityControlMetric ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasQualityControlMetric ;
-                        owl:someValuesFrom sphn:QualityControlMetric ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -10315,10 +10326,12 @@ sphn:DataProcessing a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPredecessor ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasPredecessor ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:Assay sphn:DataProcessing ) ] ] ) ],
+                        owl:onProperty sphn:hasQualityControlMetric ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasQualityControlMetric ;
+                        owl:someValuesFrom sphn:QualityControlMetric ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         sphn:SPHNConcept ;
     skos:definition "a process that produces output data from input data" ;
     skos:note "sphn:hasCode allowed coding system: EDAM, OBI or other" .
@@ -10327,81 +10340,81 @@ sphn:DrugPrescription a owl:Class ;
     rdfs:label "Drug Prescription" ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRecordDateTime ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasFirstAdministrationDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRecordDateTime ] ) ],
+                        owl:onProperty sphn:hasFirstAdministrationDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasDrug ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+                        owl:onProperty sphn:hasDrug ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDrug ;
+                        owl:someValuesFrom sphn:Drug ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIndicationToStart ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasIndicationToStart ;
-                        owl:someValuesFrom sphn:Diagnosis ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasTimePattern ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasTimePattern ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasTimePattern ;
+                        owl:someValuesFrom sphn:TimePattern ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFrequency ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRecordDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFrequency ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasFrequency ;
-                        owl:someValuesFrom sphn:Quantity ] ) ],
+                        owl:onProperty sphn:hasRecordDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrationRouteCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrationRouteCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasAdministrationRouteCode ;
-                        owl:someValuesFrom snomed:284009009 ] ) ],
+                        owl:onProperty sphn:hasIntent ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasIntent ;
+                        owl:someValuesFrom sphn:Intent ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasLastAdministrationDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasLastAdministrationDateTime ] ) ],
+                        owl:onProperty sphn:hasIndicationToStart ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasIndicationToStart ;
+                        owl:someValuesFrom sphn:Diagnosis ] ) ],
         [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIntent ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasIntent ;
-                        owl:someValuesFrom sphn:Intent ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTimePattern ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasLastAdministrationDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTimePattern ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasTimePattern ;
-                        owl:someValuesFrom sphn:TimePattern ] ) ],
+                        owl:onProperty sphn:hasLastAdministrationDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDrug ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDrug ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasDrug ;
-                        owl:someValuesFrom sphn:Drug ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFirstAdministrationDateTime ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrationRouteCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFirstAdministrationDateTime ] ) ],
+                        owl:onProperty sphn:hasAdministrationRouteCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrationRouteCode ;
+                        owl:someValuesFrom snomed:284009009 ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasFrequency ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasFrequency ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasFrequency ;
+                        owl:someValuesFrom sphn:Quantity ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:33633005 ;
     skos:definition "plan that defines at which frequency a drug should be administered to a patient with a given quantity; at every frequency time point a drug administration event should occur" .
@@ -10411,9 +10424,11 @@ sphn:Exposure a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasRouteCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasRouteCode ;
-                        owl:someValuesFrom snomed:138875005 ] ) ],
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasQuantity ;
+                        owl:someValuesFrom sphn:Quantity ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -10431,17 +10446,18 @@ sphn:Exposure a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQuantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasQuantity ;
-                        owl:someValuesFrom sphn:Quantity ] ) ],
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -10450,12 +10466,6 @@ sphn:Exposure a owl:Class ;
                         owl:onProperty sphn:hasDuration ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasDuration ;
                         owl:someValuesFrom sphn:Quantity ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEndDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -10470,15 +10480,18 @@ sphn:Exposure a owl:Class ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRouteCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasRouteCode ;
+                        owl:someValuesFrom snomed:138875005 ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEndDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+                        owl:onProperty sphn:hasEndDateTime ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:418715001 ;
     skos:definition "contact between a physical, biological, or chemical agent and an individual" .
@@ -10486,45 +10499,39 @@ sphn:Exposure a owl:Class ;
 sphn:Isolate a owl:Class ;
     rdfs:label "Isolate" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasIdentifier ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCollectionDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCollectionDateTime ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPrimaryContainer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPrimaryContainer ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasPrimaryContainer ;
-                        owl:someValuesFrom sphn:Sample_primaryContainer ] ) ],
+                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasBodySite ;
+                        owl:someValuesFrom sphn:BodySite ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasIdentifier ],
         [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasOrganism ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasOrganism ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasOrganism ;
+                        owl:someValuesFrom sphn:Organism ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFixationType ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSharedIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFixationType ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasFixationType ;
-                        owl:someValuesFrom sphn:Sample_fixationType ] ) ],
+                        owl:onProperty sphn:hasSharedIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -10534,33 +10541,39 @@ sphn:Isolate a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMedicalDevice ;
-                        owl:someValuesFrom sphn:MedicalDevice ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSharedIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasFixationType ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSharedIdentifier ] ) ],
+                        owl:onProperty sphn:hasFixationType ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasFixationType ;
+                        owl:someValuesFrom sphn:Sample_fixationType ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasBodySite ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasBodySite ;
-                        owl:someValuesFrom sphn:BodySite ] ) ],
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMedicalDevice ;
+                        owl:someValuesFrom sphn:MedicalDevice ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOrganism ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPrimaryContainer ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOrganism ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasOrganism ;
-                        owl:someValuesFrom sphn:Organism ] ) ],
+                        owl:onProperty sphn:hasPrimaryContainer ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPrimaryContainer ;
+                        owl:someValuesFrom sphn:Sample_primaryContainer ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCollectionDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCollectionDateTime ] ) ],
         sphn:Sample ;
     owl:equivalentClass snomed:119303007 ;
     skos:definition "a specific individual microbe and its clone separated on a single occasion from a sample taken from a host or culture system" .
@@ -10570,9 +10583,9 @@ sphn:LabAnalyzer a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasProductCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasProductCode ] ) ],
+                        owl:onProperty sphn:hasSoftware ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSoftware ;
+                        owl:someValuesFrom sphn:Software ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -10585,9 +10598,9 @@ sphn:LabAnalyzer a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSoftware ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSoftware ;
-                        owl:someValuesFrom sphn:Software ] ) ],
+                        owl:onProperty sphn:hasProductCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasProductCode ] ) ],
         sphn:MedicalDevice ;
     skos:definition "laboratory analyzer used to assess medical laboratory samples" ;
     skos:note "sphn:hasProductCode allowed coding system: UDI-DI from GUDID or other",
@@ -10596,14 +10609,6 @@ sphn:LabAnalyzer a owl:Class ;
 sphn:ChromosomalLocation a owl:Class ;
     rdfs:label "Chromosomal Location" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasChromosome ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasChromosome ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasChromosome ;
-                        owl:someValuesFrom sphn:Chromosome ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasEndCytobandCode ] [ a owl:Restriction ;
@@ -10619,6 +10624,14 @@ sphn:ChromosomalLocation a owl:Class ;
                         owl:onProperty sphn:hasStartCytobandCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasStartCytobandCode ;
                         owl:someValuesFrom sphn:Code ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasChromosome ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasChromosome ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasChromosome ;
+                        owl:someValuesFrom sphn:Chromosome ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass geno:0000614,
         so:0000830 ;
@@ -10631,20 +10644,9 @@ sphn:SampleProcessing a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ;
-                        owl:someValuesFrom sphn:StandardOperatingProcedure ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+                        owl:onProperty sphn:hasOutput ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasOutput ;
+                        owl:someValuesFrom sphn:Sample ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -10654,33 +10656,44 @@ sphn:SampleProcessing a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOutput ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasOutput ;
-                        owl:someValuesFrom sphn:Sample ] ) ],
+                        owl:onProperty sphn:hasQualityControlMetric ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasQualityControlMetric ;
+                        owl:someValuesFrom sphn:QualityControlMetric ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSubjectPseudoIdentifier ],
         [ a owl:Restriction ;
             owl:minCardinality "0"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasAdministrativeCase ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasQualityControlMetric ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasQualityControlMetric ;
-                        owl:someValuesFrom sphn:QualityControlMetric ] ) ],
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasInput ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasInput ;
-                        owl:someValuesFrom sphn:Sample ] ) ],
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSubjectPseudoIdentifier ],
+                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStandardOperatingProcedure ;
+                        owl:someValuesFrom sphn:StandardOperatingProcedure ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasInput ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasInput ;
+                        owl:someValuesFrom sphn:Sample ] ) ],
         sphn:SPHNConcept ;
     skos:definition "a process that prepares a sample for a subsequent process" ;
     skos:scopeNote "For sphn:hasOutput, instances of sphn:TumorSpecimen are not allowed" .
@@ -10695,24 +10708,54 @@ sphn:SequencingAssay a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasIntendedReadLength ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIdentifier ] ) ],
+                        owl:onProperty sphn:hasIntendedReadLength ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasIntendedReadLength ;
+                        owl:someValuesFrom sphn:Quantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasIntendedReadLength ;
+                        owl:someValuesFrom [ a owl:Restriction ;
+                                owl:onProperty sphn:hasUnit ;
+                                owl:someValuesFrom [ a owl:Restriction ;
+                                        owl:onProperty sphn:hasCode ;
+                                        owl:someValuesFrom [ a owl:Class ;
+                                                owl:unionOf ( ucum:cblbase_paircbr ucum:cblnucleotidecbr ) ] ] ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSample ;
-                        owl:someValuesFrom sphn:Sample ] ) ],
+                        owl:onProperty sphn:hasIntendedReadDepth ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasIntendedReadDepth ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasIntendedReadDepth ;
+                        owl:someValuesFrom sphn:Quantity ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasIntendedReadDepth ;
+                        owl:someValuesFrom [ a owl:Restriction ;
+                                owl:onProperty sphn:hasUnit ;
+                                owl:someValuesFrom [ a owl:Restriction ;
+                                        owl:onProperty sphn:hasCode ;
+                                        owl:someValuesFrom ucum:cblnbcbr ] ] ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSubjectPseudoIdentifier ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasDataFile ;
-                        owl:someValuesFrom sphn:DataFile ] ) ],
+                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStandardOperatingProcedure ;
+                        owl:someValuesFrom sphn:StandardOperatingProcedure ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasLibraryPreparation ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasLibraryPreparation ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasLibraryPreparation ;
+                        owl:someValuesFrom sphn:LibraryPreparation ] ) ],
         [ a owl:Restriction ;
-            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSubjectPseudoIdentifier ],
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Restriction ;
             owl:minCardinality "0"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasAdministrativeCase ],
@@ -10722,23 +10765,14 @@ sphn:SequencingAssay a owl:Class ;
                         owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasStartDateTime ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( efo:0001455 obi:0000070 sphn:Terminology sphn:Code ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasLibraryPreparation ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSequencingInstrument ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasLibraryPreparation ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasLibraryPreparation ;
-                        owl:someValuesFrom sphn:LibraryPreparation ] ) ],
+                        owl:onProperty sphn:hasSequencingInstrument ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSequencingInstrument ;
+                        owl:someValuesFrom sphn:SequencingInstrument ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -10748,57 +10782,36 @@ sphn:SequencingAssay a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIntendedReadDepth ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIntendedReadDepth ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasIntendedReadDepth ;
-                        owl:someValuesFrom sphn:Quantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasIntendedReadDepth ;
-                        owl:someValuesFrom [ a owl:Restriction ;
-                                owl:onProperty sphn:hasUnit ;
-                                owl:someValuesFrom [ a owl:Restriction ;
-                                        owl:onProperty sphn:hasCode ;
-                                        owl:someValuesFrom ucum:cblnbcbr ] ] ] ) ],
+                        owl:onProperty sphn:hasDataFile ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasDataFile ;
+                        owl:someValuesFrom sphn:DataFile ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSequencingRun ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasSequencingRun ;
                         owl:someValuesFrom sphn:SequencingRun ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIntendedReadLength ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIntendedReadLength ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasIntendedReadLength ;
-                        owl:someValuesFrom sphn:Quantity ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasIntendedReadLength ;
-                        owl:someValuesFrom [ a owl:Restriction ;
-                                owl:onProperty sphn:hasUnit ;
-                                owl:someValuesFrom [ a owl:Restriction ;
-                                        owl:onProperty sphn:hasCode ;
-                                        owl:someValuesFrom [ a owl:Class ;
-                                                owl:unionOf ( ucum:cblnucleotidecbr ucum:cblbase_paircbr ) ] ] ] ] ) ],
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( efo:0001455 sphn:Terminology obi:0000070 sphn:Code ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSequencingInstrument ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSequencingInstrument ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasSequencingInstrument ;
-                        owl:someValuesFrom sphn:SequencingInstrument ] ) ],
+                        owl:onProperty sphn:hasIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ;
-                        owl:someValuesFrom sphn:StandardOperatingProcedure ] ) ],
+                        owl:onProperty sphn:hasSample ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSample ;
+                        owl:someValuesFrom sphn:Sample ] ) ],
         sphn:Assay ;
     owl:equivalentClass efo:0003740 ;
     skos:definition "an assay that exploits a sequencer as the instrument to generate results" ;
@@ -10820,18 +10833,50 @@ sphn:LibraryPreparation a owl:Class ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasPredecessor ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasPredecessor ;
-                        owl:someValuesFrom sphn:SampleProcessing ] ) ],
+                        owl:onProperty sphn:hasOutput ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasOutput ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasOutput ;
+                        owl:someValuesFrom sphn:Sample ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasTargetEnrichmentKitCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasTargetEnrichmentKitCode ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasQualityControlMetric ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasQualityControlMetric ;
                         owl:someValuesFrom sphn:QualityControlMetric ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
         [ a owl:Restriction ;
             owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasAdministrativeCase ],
+            owl:onProperty sphn:hasSubjectPseudoIdentifier ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCode ;
+                        owl:someValuesFrom [ a owl:Class ;
+                                owl:unionOf ( sphn:Terminology obi:0000711 sphn:Code ) ] ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasKitCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasKitCode ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -10849,43 +10894,20 @@ sphn:LibraryPreparation a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasStandardOperatingProcedure ;
-                        owl:someValuesFrom sphn:StandardOperatingProcedure ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOutput ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasOutput ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasOutput ;
+                        owl:onProperty sphn:hasInput ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasInput ;
                         owl:someValuesFrom sphn:Sample ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasKitCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasKitCode ] ) ],
         [ a owl:Restriction ;
             owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSubjectPseudoIdentifier ],
+            owl:onProperty sphn:hasAdministrativeCase ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTargetEnrichmentKitCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasTargetEnrichmentKitCode ] ) ],
+                        owl:onProperty sphn:hasStandardOperatingProcedure ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStandardOperatingProcedure ;
+                        owl:someValuesFrom sphn:StandardOperatingProcedure ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -10897,18 +10919,9 @@ sphn:LibraryPreparation a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasCode ;
-                        owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:Terminology sphn:Code obi:0000711 ) ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasInput ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasInput ;
-                        owl:someValuesFrom sphn:Sample ] ) ],
+                        owl:onProperty sphn:hasPredecessor ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasPredecessor ;
+                        owl:someValuesFrom sphn:SampleProcessing ] ) ],
         sphn:SampleProcessing ;
     owl:equivalentClass obi:0000711 ;
     skos:definition "process which results in the creation of a library from fragments of DNA" ;
@@ -10944,6 +10957,10 @@ sphn:ValueSet a owl:Class ;
     rdfs:subClassOf sphn:SPHNConcept ;
     skos:definition "List of value sets provided by SPHN" .
 
+sphn:Deprecated a owl:Class ;
+    rdfs:label "Deprecated" ;
+    skos:definition "Deprecated classes of SPHN that existed in the previous version" .
+
 sphn:GenomicPosition a owl:Class ;
     rdfs:label "Genomic Position" ;
     rdfs:subClassOf [ a owl:Class ;
@@ -10954,12 +10971,6 @@ sphn:GenomicPosition a owl:Class ;
                         owl:onProperty sphn:hasReferenceSequence ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasReferenceSequence ;
                         owl:someValuesFrom sphn:ReferenceSequence ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEnd ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEnd ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -10974,15 +10985,32 @@ sphn:GenomicPosition a owl:Class ;
                         owl:onProperty sphn:hasCoordinateConvention ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasCoordinateConvention ;
                         owl:someValuesFrom sphn:GenomicPosition_coordinateConvention ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEnd ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEnd ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass geno:0000902 ;
     skos:definition "genomic position with respect to a reference" .
 
 sphn:Measurement a owl:Class ;
     rdfs:label "Measurement" ;
-    rdfs:subClassOf [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+    rdfs:subClassOf [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMedicalDevice ;
+                        owl:someValuesFrom sphn:MedicalDevice ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -10992,9 +11020,20 @@ sphn:Measurement a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasStartDateTime ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMethodCode ;
+                        owl:someValuesFrom snomed:128927009 ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -11009,34 +11048,12 @@ sphn:Measurement a owl:Class ;
                         owl:onProperty sphn:hasPerformer ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasPerformer ;
                         owl:someValuesFrom sphn:Performer ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMedicalDevice ;
-                        owl:someValuesFrom sphn:MedicalDevice ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasStartDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasAdministrativeCase ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMethodCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMethodCode ;
-                        owl:someValuesFrom snomed:128927009 ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:122869004 ;
     skos:definition "process of quantitatively defining the value or magnitude of an attribute or characteristic in comparison to a defined standard" ;
@@ -11045,28 +11062,9 @@ sphn:Measurement a owl:Class ;
 
 sphn:TimeSeriesDataFile a owl:Class ;
     rdfs:label "Time Series Data File" ;
-    rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasHash ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasHash ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasHash ;
-                        owl:someValuesFrom sphn:Hash ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFormatCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasFormatCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasFormatCode ;
-                        owl:someValuesFrom edam:format_1915 ] ) ],
+    rdfs:subClassOf [ a owl:Restriction ;
+            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasSourceSystem ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -11078,9 +11076,9 @@ sphn:TimeSeriesDataFile a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCreationDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasUniformResourceIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCreationDateTime ] ) ],
+                        owl:onProperty sphn:hasUniformResourceIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -11098,18 +11096,37 @@ sphn:TimeSeriesDataFile a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasUniformResourceIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCreationDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasUniformResourceIdentifier ] ) ],
+                        owl:onProperty sphn:hasCreationDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasHash ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasHash ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasHash ;
+                        owl:someValuesFrom sphn:Hash ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasName ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasName ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasSourceSystem ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasFormatCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasFormatCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasFormatCode ;
+                        owl:someValuesFrom edam:format_1915 ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         sphn:DataFile ;
     skos:definition "electronic resource that contains all the results related to a measurement as time series" .
 
@@ -11122,10 +11139,6 @@ sphn:hasIdentifier a owl:DatatypeProperty ;
     skos:definition "unique identifier identifying the concept" ;
     sphn:subjectToDeIdentification true .
 
-sphn:Deprecated a owl:Class ;
-    rdfs:label "Deprecated" ;
-    skos:definition "Deprecated classes of SPHN that existed in the previous version" .
-
 sphn:hasSample a owl:ObjectProperty ;
     rdfs:label "has sample" ;
     rdfs:domain [ a owl:Class ;
@@ -11153,19 +11166,19 @@ sphn:MedicalDevice a owl:Class ;
                         owl:onProperty sphn:hasTypeCode ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasTypeCode ;
                         owl:someValuesFrom [ a owl:Class ;
-                                owl:unionOf ( sphn:Code sphn:Terminology snomed:272181003 ) ] ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasProductCode ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasProductCode ] ) ],
+                                owl:unionOf ( sphn:Terminology sphn:Code snomed:272181003 ) ] ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasSoftware ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasSoftware ;
                         owl:someValuesFrom sphn:Software ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasProductCode ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasProductCode ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:63653004 ;
     skos:definition "product intended for medical use when the main effect is not achieved by a medicinal product; medical devices include, but are not limited to, implants, instruments, devices, in vitro diagnostics" ;
@@ -11177,23 +11190,9 @@ sphn:SPHNAttributeDatatype a owl:DatatypeProperty ;
 
 sphn:DataFile a owl:Class ;
     rdfs:label "Data File" ;
-    rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasHash ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasHash ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasHash ;
-                        owl:someValuesFrom sphn:Hash ] ) ],
-        [ a owl:Restriction ;
+    rdfs:subClassOf [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCreationDateTime ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCreationDateTime ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -11208,11 +11207,9 @@ sphn:DataFile a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEncoding ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasUniformResourceIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasEncoding ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasEncoding ;
-                        owl:someValuesFrom sphn:DataFile_encoding ] ) ],
+                        owl:onProperty sphn:hasUniformResourceIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -11222,9 +11219,25 @@ sphn:DataFile a owl:Class ;
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasUniformResourceIdentifier ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasCreationDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasUniformResourceIdentifier ] ) ],
+                        owl:onProperty sphn:hasCreationDateTime ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEncoding ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasEncoding ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasEncoding ;
+                        owl:someValuesFrom sphn:DataFile_encoding ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasHash ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasHash ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasHash ;
+                        owl:someValuesFrom sphn:Hash ] ) ],
         sphn:SPHNConcept ;
     skos:definition "electronic resource of information, which can be stored, accessed and transferred as a single unit" .
 
@@ -11263,16 +11276,22 @@ sphn:Sample a owl:Class ;
     rdfs:label "Sample" ;
     rdfs:subClassOf [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasMaterialTypeCode ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasMaterialTypeCode ;
+                        owl:someValuesFrom snomed:123038009 ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
+                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCollectionDateTime ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasCollectionDateTime ] ) ],
+                        owl:onProperty sphn:hasSubjectPseudoIdentifier ] ) ],
         [ a owl:Restriction ;
             owl:minCardinality "1"^^xsd:nonNegativeInteger ;
             owl:onProperty sphn:hasSourceSystem ],
@@ -11284,15 +11303,12 @@ sphn:Sample a owl:Class ;
                         owl:onProperty sphn:hasMedicalDevice ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasMedicalDevice ;
                         owl:someValuesFrom sphn:MedicalDevice ] ) ],
-        [ a owl:Restriction ;
-            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-            owl:onProperty sphn:hasIdentifier ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasMaterialTypeCode ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasMaterialTypeCode ;
-                        owl:someValuesFrom snomed:123038009 ] ) ],
+                        owl:onProperty sphn:hasSharedIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasSharedIdentifier ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -11301,12 +11317,9 @@ sphn:Sample a owl:Class ;
                         owl:onProperty sphn:hasPrimaryContainer ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasPrimaryContainer ;
                         owl:someValuesFrom sphn:Sample_primaryContainer ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasAdministrativeCase ] ) ],
+        [ a owl:Restriction ;
+            owl:minCardinality "0"^^xsd:nonNegativeInteger ;
+            owl:onProperty sphn:hasIdentifier ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "0"^^xsd:nonNegativeInteger ;
@@ -11325,10 +11338,10 @@ sphn:Sample a owl:Class ;
                         owl:someValuesFrom sphn:BodySite ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "0"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSharedIdentifier ] [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasCollectionDateTime ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasSharedIdentifier ] ) ],
+                        owl:onProperty sphn:hasCollectionDateTime ] ) ],
         sphn:SPHNConcept ;
     owl:equivalentClass snomed:123038009 ;
     skos:definition "any material sample for testing, diagnostic, propagation, treatment or research purposes" ;
@@ -11351,14 +11364,6 @@ sphn:hasRecordDateTime a owl:DatatypeProperty ;
     skos:definition "datetime the concept was recorded" ;
     sphn:subjectToDeIdentification true .
 
-sphn:hasUnit a owl:ObjectProperty ;
-    rdfs:label "has unit" ;
-    rdfs:domain [ a owl:Class ;
-            owl:unionOf ( sphn:Quantity sphn:SPHNConcept ) ] ;
-    rdfs:range sphn:Unit ;
-    rdfs:subPropertyOf sphn:SPHNAttributeObject ;
-    skos:definition "unit of the concept" .
-
 sphn:hasDataFile a owl:ObjectProperty ;
     rdfs:label "has data file" ;
     rdfs:domain [ a owl:Class ;
@@ -11368,6 +11373,14 @@ sphn:hasDataFile a owl:ObjectProperty ;
     rdfs:subPropertyOf sphn:SPHNAttributeObject ;
     skos:definition "data file associated to the concept" .
 
+sphn:hasUnit a owl:ObjectProperty ;
+    rdfs:label "has unit" ;
+    rdfs:domain [ a owl:Class ;
+            owl:unionOf ( sphn:Quantity sphn:SPHNConcept ) ] ;
+    rdfs:range sphn:Unit ;
+    rdfs:subPropertyOf sphn:SPHNAttributeObject ;
+    skos:definition "unit of the concept" .
+
 sphn:hasTypeCode a owl:ObjectProperty ;
     rdfs:label "has type code" ;
     rdfs:domain [ a owl:Class ;
@@ -11430,12 +11443,6 @@ sphn:hasBodySite a owl:ObjectProperty ;
 sphn:Code a owl:Class ;
     rdfs:label "Code" ;
     rdfs:subClassOf [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIdentifier ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasIdentifier ] ) ],
-        [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasCodingSystemAndVersion ] [ a owl:Restriction ;
@@ -11447,6 +11454,12 @@ sphn:Code a owl:Class ;
                         owl:onProperty sphn:hasName ] [ a owl:Restriction ;
                         owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
                         owl:onProperty sphn:hasName ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasIdentifier ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasIdentifier ] ) ],
         sphn:SPHNConcept ;
     skos:definition "symbols and/or expressions defined in a coding system" .
 
@@ -11505,14 +11518,6 @@ sphn:Quantity a owl:Class ;
                         owl:onProperty sphn:hasComparator ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasComparator ;
                         owl:someValuesFrom sphn:Comparator ] ) ],
-        [ a owl:Class ;
-            owl:intersectionOf ( [ a owl:Restriction ;
-                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasValue ] [ a owl:Restriction ;
-                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
-                        owl:onProperty sphn:hasValue ] [ a owl:Restriction ;
-                        owl:onProperty sphn:hasValue ;
-                        owl:someValuesFrom xsd:double ] ) ],
         [ a owl:Class ;
             owl:intersectionOf ( [ a owl:Restriction ;
                         owl:minCardinality "1"^^xsd:nonNegativeInteger ;
@@ -11521,6 +11526,14 @@ sphn:Quantity a owl:Class ;
                         owl:onProperty sphn:hasUnit ] [ a owl:Restriction ;
                         owl:onProperty sphn:hasUnit ;
                         owl:someValuesFrom sphn:Unit ] ) ],
+        [ a owl:Class ;
+            owl:intersectionOf ( [ a owl:Restriction ;
+                        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasValue ] [ a owl:Restriction ;
+                        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
+                        owl:onProperty sphn:hasValue ] [ a owl:Restriction ;
+                        owl:onProperty sphn:hasValue ;
+                        owl:someValuesFrom xsd:double ] ) ],
         sphn:SPHNConcept ;
     skos:definition "an amount or a number of something" .