{
  "resourceType": "StructureDefinition",
  "id": "aorta-subscription",
  "language": "nl-NL",
  "url": "http://vzvz.nl/fhir/StructureDefinition/aorta-subscription",
  "version": "2.0.0-beta.2",
  "name": "AortaSubscription",
  "title": "Subscription",
  "status": "active",
  "publisher": "VZVZ",
  "contact": [
    {
      "name": "VZVZ",
      "telecom": [
        {
          "system": "email",
          "value": "standaardisatie@vzvz.nl",
          "use": "work"
        }
      ]
    }
  ],
  "description": "Subscription for use in VZVZ applications, specifically AORTA",
  "jurisdiction": [
    {
      "coding": [
        {
          "code": "NL",
          "system": "urn:iso:std:iso:3166",
          "display": "Netherlands"
        }
      ]
    }
  ],
  "copyright": "VZVZ",
  "fhirVersion": "4.0.1",
  "kind": "resource",
  "abstract": false,
  "type": "Subscription",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Subscription",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Subscription",
        "path": "Subscription",
        "constraint": [
          {
            "key": "sub-criteria-01",
            "severity": "error",
            "human": "Criteria should conform to pattern",
            "source": "http://vzvz.nl/fhir/StructureDefinition/aorta-subscription",
            "expression": "Subscription.criteria.matches('AuditEvent[?]_query=log&patientid=[0-9]{9}') or Subscription.criteria.matches('List[?]_query=vwi&patientid=[0-9]{9}&(contextcode|gegevenssoort)=.+') or Subscription.criteria.matches('List[?]_query=vwi&(contextcode|gegevenssoort)=.+&patientid=[0-9]{9}')"
          }
        ]
      },
      {
        "id": "Subscription.extension",
        "path": "Subscription.extension",
        "slicing": {
          "discriminator": [
            {
              "type": "value",
              "path": "url"
            }
          ],
          "ordered": false,
          "rules": "open"
        },
        "min": 1
      },
      {
        "id": "Subscription.extension:identifier",
        "path": "Subscription.extension",
        "sliceName": "identifier",
        "short": "Identifier of a subscription",
        "definition": "Identifier of a Subscription as defined by the client",
        "comment": "Deze identifier wordt op dezelfde manier gevuld als een V3-verwijzing, zodat de manier waarop de verwijzing gemaakt of opgevraagd wordt, niet van belang is.\r\n\r\nBij voorkeur vullen met een OID vanwege de V3-compatibiliteit.",
        "min": 1,
        "max": "1",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://vzvz.nl/fhir/StructureDefinition/aorta-subscription-identifier"
            ]
          }
        ]
      },
      {
        "id": "Subscription.extension:managingEntity",
        "path": "Subscription.extension",
        "sliceName": "managingEntity",
        "short": "managing Entity",
        "min": 0,
        "max": "*",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://vzvz.nl/fhir/StructureDefinition/aorta-subscription-managingEntity"
            ]
          }
        ]
      },
      {
        "id": "Subscription.extension:SourceSystem",
        "path": "Subscription.extension",
        "sliceName": "SourceSystem",
        "short": "Application ID of source Device",
        "definition": "Full OID of application ID of source Device",
        "min": 0,
        "max": "*",
        "type": [
          {
            "code": "Extension",
            "profile": [
              "http://vzvz.nl/fhir/StructureDefinition/SourceSystem"
            ]
          }
        ]
      },
      {
        "id": "Subscription.status",
        "path": "Subscription.status",
        "fixedCode": "requested"
      },
      {
        "id": "Subscription.reason",
        "path": "Subscription.reason",
        "fixedString": "AORTA"
      },
      {
        "id": "Subscription.criteria",
        "path": "Subscription.criteria",
        "definition": "zoekparameters die aangeven waarop de notificatie gebaseerd moet zijn.",
        "comment": "Er zijn named queries `_query=vwi` voor VWI verwijzingen en `_query=log` voor AuditEvent log entries.\r\n\r\nDe log events zijn alleen beschikbaar voor opvraging door de patiënt op wie de logs betrekking hebben.",
        "example": [
          {
            "label": "Voorbeeld met List van patiënt met BSN `bsn` en gegevenssoort huisartswaarneemgegevens",
            "valueString": "List?_query=vwi&patientid=BSN&gegevenssoort=460320"
          },
          {
            "label": "Voorbeeld met List van patiënt met BSN `bsn` en contextcode",
            "valueString": "List?_query=vwi&patientid=999912345&contextcode=MEDGEG"
          },
          {
            "label": "Voorbeeld met AuditEvent van patiënt met BSN `bsn`",
            "valueString": "AuditEvent?_query=log&patientid=BSN"
          }
        ]
      },
      {
        "id": "Subscription.channel.type",
        "path": "Subscription.channel.type",
        "fixedCode": "rest-hook"
      },
      {
        "id": "Subscription.channel.endpoint",
        "path": "Subscription.channel.endpoint",
        "definition": "url van het systeem waarop de notificatie moet worden afgeleverd"
      },
      {
        "id": "Subscription.channel.payload",
        "path": "Subscription.channel.payload",
        "definition": "Geeft gewenste mime type van payload van notification aan, 'application/fhir+xml' of 'application/fhir+json'.\nDe aanwezigheid van een mime type geeft aan dat in de notificatie de volledige resource(s) meegestuurd moet(en) worden.\nAfwezigheid van het `payload` element betekent dat er geen resources meegestuurd worden."
      }
    ]
  }
}