{
  "resourceType": "StructureDefinition",
  "id": "e3fc1c37-ffd5-4e63-a00f-1c7c555f0d91",
  "meta": {
    "lastUpdated": "2022-07-12T10:33:17.1328378+00:00",
    "profile": [
      "https://fhir.cambio.se/StructureDefinition/ObservationGCBodyWeightRelative/v1"
    ]
  },
  "url": "https://fhir.cambio.se/StructureDefinition/ObservationGCBodyWeightRelative/v1",
  "version": "1.0.0",
  "name": "ObservationGCBodyWeightRelative",
  "title": "ObservationGCBodyWeightRelative",
  "status": "active",
  "date": "2022-01-31T07:06:28.0199105+00:00",
  "description": "Cambio Growth chart specific use case profile for communicating the vital parameters, weight of the biological father or weight of the biological mother, between an external system and COSMIC. The profile includes fields for the value of the weight measurement, contextuel data and meta data.  GET operation is supported. This profile should be used only for Growh chart related data communication.",
  "fhirVersion": "4.0.1",
  "mapping": [
    {
      "identity": "workflow",
      "uri": "http://hl7.org/fhir/workflow",
      "name": "Workflow Pattern"
    },
    {
      "identity": "sct-concept",
      "uri": "http://snomed.info/conceptdomain",
      "name": "SNOMED CT Concept Domain Binding"
    },
    {
      "identity": "v2",
      "uri": "http://hl7.org/v2",
      "name": "HL7 v2 Mapping"
    },
    {
      "identity": "rim",
      "uri": "http://hl7.org/v3",
      "name": "RIM Mapping"
    },
    {
      "identity": "w5",
      "uri": "http://hl7.org/fhir/fivews",
      "name": "FiveWs Pattern Mapping"
    },
    {
      "identity": "sct-attr",
      "uri": "http://snomed.org/attributebinding",
      "name": "SNOMED CT Attribute Binding"
    }
  ],
  "kind": "resource",
  "abstract": false,
  "type": "Observation",
  "baseDefinition": "https://fhir.cambio.se/StructureDefinition/ObservationBodyWeightCore/v1",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Observation.basedOn",
        "path": "Observation.basedOn",
        "max": "0"
      },
      {
        "id": "Observation.partOf",
        "path": "Observation.partOf",
        "max": "0"
      },
      {
        "id": "Observation.status",
        "path": "Observation.status",
        "short": "Preliminary | final | amended | entered in error | cancelled",
        "definition": "The status of th result value. \r\nFHIR - Cambio\r\npreliminary -> unsigned\nfinal -> signed and completednonSignable\nentered in error -> invalidated\ncancelled -> removed\r\namended -> resigned (journal note)",
        "comment": "COSMIC support the statuses mapped to the archetype for the vital sign through CCM REST-API. The Status Amended is supported in Get scenarios when it is mapped from a archetyped attached to a journal note which can be resigned.",
        "binding": {
          "strength": "required",
          "valueSet": "https://cambio.codes/fhir/vs/vital-sign-status/v1"
        }
      },
      {
        "id": "Observation.code.coding",
        "path": "Observation.code.coding",
        "slicing": {
          "rules": "closed"
        },
        "min": 2,
        "max": "2"
      },
      {
        "id": "Observation.code.coding:bodyWeightCodeSct",
        "path": "Observation.code.coding",
        "sliceName": "bodyWeightCodeSct",
        "mustSupport": false,
        "binding": {
          "strength": "required",
          "description": "Value set of codes which are supported in Body weight relative profile",
          "valueSet": "https://fhir.cambio.se/ValueSet/BodyWeightRelative/v1"
        }
      },
      {
        "id": "Observation.code.coding:bodyWeightCodeSct.code",
        "path": "Observation.code.coding.code",
        "binding": {
          "strength": "required",
          "valueSet": "https://fhir.cambio.se/ValueSet/BodyWeightRelative/v1"
        }
      },
      {
        "id": "Observation.focus",
        "path": "Observation.focus",
        "max": "0"
      },
      {
        "id": "Observation.focus.display",
        "path": "Observation.focus.display",
        "fixedString": "Relative"
      },
      {
        "id": "Observation.issued",
        "path": "Observation.issued",
        "max": "0"
      },
      {
        "id": "Observation.performer",
        "path": "Observation.performer",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Observation.value[x]:valueQuantity",
        "path": "Observation.value[x]",
        "sliceName": "valueQuantity",
        "min": 1
      },
      {
        "id": "Observation.dataAbsentReason.coding",
        "path": "Observation.dataAbsentReason.coding",
        "min": 1,
        "max": "1"
      },
      {
        "id": "Observation.dataAbsentReason.coding.system",
        "path": "Observation.dataAbsentReason.coding.system",
        "min": 1,
        "fixedUri": "http://terminology.hl7.org/CodeSystem/data-absent-reason"
      },
      {
        "id": "Observation.dataAbsentReason.coding.code",
        "path": "Observation.dataAbsentReason.coding.code",
        "short": "COSMIC doesn't support data absent reason",
        "min": 1,
        "fixedCode": "unsupported"
      },
      {
        "id": "Observation.interpretation",
        "path": "Observation.interpretation",
        "max": "0"
      },
      {
        "id": "Observation.bodySite",
        "path": "Observation.bodySite",
        "max": "0"
      },
      {
        "id": "Observation.method",
        "path": "Observation.method",
        "max": "0"
      },
      {
        "id": "Observation.specimen",
        "path": "Observation.specimen",
        "max": "0"
      },
      {
        "id": "Observation.device",
        "path": "Observation.device",
        "max": "0"
      },
      {
        "id": "Observation.referenceRange",
        "path": "Observation.referenceRange",
        "max": "0"
      },
      {
        "id": "Observation.hasMember",
        "path": "Observation.hasMember",
        "max": "0"
      },
      {
        "id": "Observation.derivedFrom",
        "path": "Observation.derivedFrom",
        "max": "0"
      },
      {
        "id": "Observation.component",
        "path": "Observation.component",
        "max": "0"
      }
    ]
  }
}