{
  "resourceType": "StructureDefinition",
  "id": "MyCabCareTeam",
  "url": "https://www.esante.lu/fhir-spec/StructureDefinition/MyCabCareTeam",
  "version": "0.0.1",
  "name": "MyCabCareTeam",
  "status": "draft",
  "fhirVersion": "5.0.0",
  "kind": "resource",
  "abstract": false,
  "type": "CareTeam",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/CareTeam",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "CareTeam.meta",
        "path": "CareTeam.meta",
        "min": 1
      },
      {
        "id": "CareTeam.meta.versionId",
        "path": "CareTeam.meta.versionId",
        "max": "0"
      },
      {
        "id": "CareTeam.meta.lastUpdated",
        "path": "CareTeam.meta.lastUpdated",
        "max": "0"
      },
      {
        "id": "CareTeam.meta.source",
        "path": "CareTeam.meta.source",
        "max": "0"
      },
      {
        "id": "CareTeam.meta.profile",
        "path": "CareTeam.meta.profile",
        "min": 1,
        "max": "1",
        "fixedCanonical": "https://www.esante.lu/fhir-spec/StructureDefinition/MyCabCareTeam"
      },
      {
        "id": "CareTeam.meta.security",
        "path": "CareTeam.meta.security",
        "max": "0"
      },
      {
        "id": "CareTeam.meta.tag",
        "path": "CareTeam.meta.tag",
        "max": "0"
      },
      {
        "id": "CareTeam.implicitRules",
        "path": "CareTeam.implicitRules",
        "max": "0"
      },
      {
        "id": "CareTeam.language",
        "path": "CareTeam.language",
        "max": "0"
      },
      {
        "id": "CareTeam.identifier",
        "path": "CareTeam.identifier",
        "max": "0"
      },
      {
        "id": "CareTeam.status",
        "path": "CareTeam.status",
        "max": "0"
      },
      {
        "id": "CareTeam.category",
        "path": "CareTeam.category",
        "min": 1,
        "max": "1"
      },
      {
        "id": "CareTeam.category.coding",
        "path": "CareTeam.category.coding",
        "min": 1,
        "max": "1"
      },
      {
        "id": "CareTeam.category.coding.system",
        "path": "CareTeam.category.coding.system",
        "min": 1,
        "fixedUri": "https://www.esante.lu/fhir-spec/CodeSystem/ESanteCareTeamCat"
      },
      {
        "id": "CareTeam.category.coding.version",
        "path": "CareTeam.category.coding.version",
        "max": "0"
      },
      {
        "id": "CareTeam.category.coding.code",
        "path": "CareTeam.category.coding.code",
        "min": 1,
        "fixedCode": "HP-SEC"
      },
      {
        "id": "CareTeam.category.coding.display",
        "path": "CareTeam.category.coding.display",
        "max": "0"
      },
      {
        "id": "CareTeam.category.coding.userSelected",
        "path": "CareTeam.category.coding.userSelected",
        "max": "0"
      },
      {
        "id": "CareTeam.category.text",
        "path": "CareTeam.category.text",
        "max": "0"
      },
      {
        "id": "CareTeam.name",
        "path": "CareTeam.name",
        "max": "0"
      },
      {
        "id": "CareTeam.subject",
        "path": "CareTeam.subject",
        "max": "0"
      },
      {
        "id": "CareTeam.period",
        "path": "CareTeam.period",
        "max": "0"
      },
      {
        "id": "CareTeam.participant.id",
        "path": "CareTeam.participant.id",
        "short": "Logical id of the relationship",
        "definition": "Do not provide for the person which is in the request criteria"
      },
      {
        "id": "CareTeam.participant.extension",
        "path": "CareTeam.participant.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "rules": "closed"
        }
      },
      {
        "id": "CareTeam.participant.extension:ParticipationStatus",
        "path": "CareTeam.participant.extension",
        "sliceName": "ParticipationStatus",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "https://www.esante.lu/fhir-spec/StructureDefinition/ParticipationStatus"
            ]
          }
        ]
      },
      {
        "id": "CareTeam.participant.role",
        "path": "CareTeam.participant.role",
        "min": 1
      },
      {
        "id": "CareTeam.participant.role.coding",
        "path": "CareTeam.participant.role.coding",
        "min": 1,
        "max": "1",
        "binding": {
          "strength": "required",
          "valueSet": "https://www.esante.lu/fhir-spec/ValueSet/ESanteMyCabTeamRoles"
        }
      },
      {
        "id": "CareTeam.participant.role.coding.system",
        "path": "CareTeam.participant.role.coding.system",
        "min": 1
      },
      {
        "id": "CareTeam.participant.role.coding.version",
        "path": "CareTeam.participant.role.coding.version",
        "max": "0"
      },
      {
        "id": "CareTeam.participant.role.coding.code",
        "path": "CareTeam.participant.role.coding.code",
        "min": 1
      },
      {
        "id": "CareTeam.participant.role.coding.display",
        "path": "CareTeam.participant.role.coding.display",
        "max": "0"
      },
      {
        "id": "CareTeam.participant.role.coding.userSelected",
        "path": "CareTeam.participant.role.coding.userSelected",
        "max": "0"
      },
      {
        "id": "CareTeam.participant.role.text",
        "path": "CareTeam.participant.role.text",
        "max": "0"
      },
      {
        "id": "CareTeam.participant.member",
        "path": "CareTeam.participant.member",
        "min": 1,
        "type": [
          {
            "code": "Reference",
            "targetProfile": [
              "https://www.esante.lu/fhir-spec/StructureDefinition/MyCabPerson"
            ]
          }
        ]
      },
      {
        "id": "CareTeam.participant.member.reference",
        "path": "CareTeam.participant.member.reference",
        "short": "The practitioner identified by its identifier",
        "min": 1,
        "example": [
          {
            "label": "Example",
            "valueString": "urn:uuid:e799f9f5-c6b9-4138-9ab2-6bea32e85dcd"
          }
        ],
        "condition": [
          "val-uuid",
          "ref-1"
        ],
        "constraint": [
          {
            "key": "val-uuid",
            "severity": "error",
            "human": "SHALL be a v4 UUID prefixed by urn:uuid:",
            "expression": "startsWith('urn:uuid:') and length()=45",
            "source": "https://www.esante.lu/fhir-spec/StructureDefinition/MyCabCareTeam"
          }
        ]
      },
      {
        "id": "CareTeam.participant.member.type",
        "path": "CareTeam.participant.member.type",
        "max": "0"
      },
      {
        "id": "CareTeam.participant.member.identifier",
        "path": "CareTeam.participant.member.identifier",
        "max": "0"
      },
      {
        "id": "CareTeam.participant.member.display",
        "path": "CareTeam.participant.member.display",
        "max": "0"
      },
      {
        "id": "CareTeam.participant.onBehalfOf",
        "path": "CareTeam.participant.onBehalfOf",
        "max": "0"
      },
      {
        "id": "CareTeam.participant.coverage[x]",
        "path": "CareTeam.participant.coverage[x]",
        "slicing": {
          "discriminator": [
            {
              "type": "type",
              "path": "$this"
            }
          ],
          "ordered": false,
          "rules": "open"
        }
      },
      {
        "id": "CareTeam.participant.coverage[x]:coverageTiming",
        "path": "CareTeam.participant.coverage[x]",
        "sliceName": "coverageTiming",
        "min": 0,
        "max": "0",
        "type": [
          {
            "code": "Timing"
          }
        ]
      },
      {
        "id": "CareTeam.participant.coverage[x]:coveragePeriod",
        "path": "CareTeam.participant.coverage[x]",
        "sliceName": "coveragePeriod",
        "short": "Start and end date of the relationship",
        "definition": "Do not provide for the person which is in the request criteria",
        "min": 0,
        "max": "1",
        "type": [
          {
            "code": "Period"
          }
        ]
      },
      {
        "id": "CareTeam.reason",
        "path": "CareTeam.reason",
        "max": "0"
      },
      {
        "id": "CareTeam.managingOrganization",
        "path": "CareTeam.managingOrganization",
        "max": "0"
      },
      {
        "id": "CareTeam.telecom",
        "path": "CareTeam.telecom",
        "max": "0"
      },
      {
        "id": "CareTeam.note",
        "path": "CareTeam.note",
        "max": "0"
      }
    ]
  }
}