{
  "resourceType": "StructureDefinition",
  "id": "sgrdv-release-lock-request-parameters",
  "url": "http://sante.quebec/fhir/StructureDefinition/sgrdv-release-lock-request-parameters",
  "name": "SGRDVReleaseLockRequestParameters",
  "title": "Paramètres de demande de retrait de verrou — Surface API SGRDV",
  "status": "draft",
  "experimental": true,
  "description": "Paramètres d'entrée de l'opération $release-lock pour la surface API SGRDV (portail → SGRDV). Le portail fournit le lockIdentifier reçu lors du $lock initial pour identifier le verrou à retirer, ainsi que la provenance. Interdit lockRequestedDuration et lockEndTime (sans objet pour le retrait). En sortie : HTTP 204 en succès, ou HTTP 400 avec OperationOutcome en erreur.",
  "fhirVersion": "4.0.1",
  "kind": "resource",
  "abstract": false,
  "type": "Parameters",
  "baseDefinition": "http://sante.quebec/fhir/StructureDefinition/sgrdv-base-lock-payload-parameters",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Parameters.parameter",
        "path": "Parameters.parameter",
        "min": 3
      },
      {
        "id": "Parameters.parameter:appointment",
        "path": "Parameters.parameter",
        "sliceName": "appointment",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Parameters.parameter:appointment.name",
        "path": "Parameters.parameter.name",
        "mustSupport": true
      },
      {
        "id": "Parameters.parameter:appointment.resource",
        "path": "Parameters.parameter.resource",
        "mustSupport": true
      },
      {
        "id": "Parameters.parameter:lockIdentifier",
        "path": "Parameters.parameter",
        "sliceName": "lockIdentifier",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Parameters.parameter:lockIdentifier.name",
        "path": "Parameters.parameter.name",
        "mustSupport": true
      },
      {
        "id": "Parameters.parameter:lockIdentifier.value[x]",
        "path": "Parameters.parameter.value[x]",
        "mustSupport": true
      },
      {
        "id": "Parameters.parameter:lockRequestedDuration",
        "path": "Parameters.parameter",
        "sliceName": "lockRequestedDuration",
        "max": "0"
      },
      {
        "id": "Parameters.parameter:lockEndTime",
        "path": "Parameters.parameter",
        "sliceName": "lockEndTime",
        "max": "0"
      },
      {
        "id": "Parameters.parameter:provenance",
        "path": "Parameters.parameter",
        "sliceName": "provenance",
        "min": 1,
        "mustSupport": true
      },
      {
        "id": "Parameters.parameter:provenance.name",
        "path": "Parameters.parameter.name",
        "mustSupport": true
      },
      {
        "id": "Parameters.parameter:provenance.resource",
        "path": "Parameters.parameter.resource",
        "mustSupport": true
      }
    ]
  }
}