{
  "resourceType": "StructureDefinition",
  "id": "gap-task-profile",
  "url": "http://akinox.com/fhir/StructureDefinition/gap-task-profile",
  "version": "1.0.0",
  "name": "GapTask",
  "title": "GAP Task Profile",
  "status": "draft",
  "description": "A FHIR Task profile for GAP requests. The Task must have at least one identifier.",
  "fhirVersion": "4.0.1",
  "kind": "resource",
  "abstract": false,
  "type": "Task",
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Task",
  "derivation": "constraint",
  "differential": {
    "element": [
      {
        "id": "Task.id",
        "path": "Task.id",
        "min": 1,
        "constraint": [
          {
            "key": "gap-task-id-format",
            "severity": "error",
            "human": "Task id must be a valid GUID (non-empty)",
            "expression": "matches('^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$')",
            "source": "http://akinox.com/fhir/StructureDefinition/gap-task-profile"
          }
        ]
      },
      {
        "id": "Task.identifier",
        "path": "Task.identifier",
        "min": 1
      },
      {
        "id": "Task.identifier.system",
        "path": "Task.identifier.system",
        "min": 1,
        "patternUri": "http://vitr.ai/orientation-identifier"
      }
    ]
  }
}