PackagesCanonicalsLogsProblems
    Packages
    hsg.asg-well@1.0.11
    http://ihis.sg/extension/organization-period
{
  "description": null,
  "_filename": "extension-Organization-organizationPeriod.StructureDefinition.json",
  "package_name": "hsg.asg-well",
  "date": null,
  "derivation": "constraint",
  "publisher": null,
  "fhirVersion": "4.3.0",
  "name": "extension-Organization-organizationPeriod",
  "abstract": false,
  "type": "Extension",
  "experimental": null,
  "resourceType": "StructureDefinition",
  "title": null,
  "package_version": "1.0.11",
  "status": "active",
  "id": "86d73387-1864-40af-b9aa-cb453b6f1485",
  "kind": "complex-type",
  "url": "http://ihis.sg/extension/organization-period",
  "context": [ {
    "type": "element",
    "expression": "Organization"
  } ],
  "version": "1",
  "differential": {
    "element": [ {
      "id": "Extension",
      "max": "1",
      "min": 1,
      "path": "Extension",
      "short": "n/a",
      "definition": "AAC LOA period"
    }, {
      "id": "Extension.id",
      "max": "0",
      "path": "Extension.id"
    }, {
      "id": "Extension.extension",
      "max": "0",
      "path": "Extension.extension"
    }, {
      "id": "Extension.url",
      "path": "Extension.url",
      "fixedUri": "http://ihis.sg/extension/organization-period"
    }, {
      "id": "Extension.value[x]",
      "min": 1,
      "path": "Extension.value[x]",
      "slicing": {
        "rules": "closed",
        "ordered": false,
        "discriminator": [ {
          "path": "$this",
          "type": "type"
        } ]
      }
    }, {
      "id": "Extension.value[x]:valuePeriod",
      "min": 1,
      "path": "Extension.value[x]",
      "type": [ {
        "code": "Period"
      } ],
      "short": "n/a",
      "sliceName": "valuePeriod",
      "definition": "AAC LOA Period"
    }, {
      "id": "Extension.value[x]:valuePeriod.id",
      "max": "0",
      "path": "Extension.value[x].id"
    }, {
      "id": "Extension.value[x]:valuePeriod.start",
      "min": 1,
      "path": "Extension.value[x].start",
      "short": "n/a",
      "comment": "Sample Value: \"2024-01-01\". Should not be future date.",
      "constraint": [ {
        "key": "organization-period-start-format",
        "human": "start date must be in format: yyyy-mm-dd",
        "severity": "error",
        "expression": "$this.toString().matches('^([1-9][0-9][0-9][0-9])(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2][0-9]|3[0-1])))$')"
      }, {
        "key": "organization-period-start-not-future",
        "human": "AAC LOA Start Date cannot be a future date",
        "severity": "error",
        "expression": "$this <= (now() + 5 minutes).toString().substring(0,10).toDate()"
      } ],
      "definition": "LOA start date"
    }, {
      "id": "Extension.value[x]:valuePeriod.end",
      "path": "Extension.value[x].end",
      "short": "n/a",
      "comment": "Sample Value: \"2025-01-01\".\r\nShould be greater than or equal to LOA start date.\r\nIf missing, LOA period is ongoing.",
      "constraint": [ {
        "key": "organization-period-end-format",
        "human": "end date must be in format: yyyy-mm-dd",
        "severity": "error",
        "expression": "$this.toString().matches('^([1-9][0-9][0-9][0-9])(-(0[1-9]|1[0-2])(-(0[1-9]|[1-2][0-9]|3[0-1])))$')"
      }, {
        "key": "organization-period-end-not-future",
        "human": "AAC LOA End Date cannot be a future date or the current date",
        "severity": "error",
        "expression": "$this < (now() + 5 minutes).toString().substring(0,10).toDate()"
      } ],
      "definition": "LOA end date",
      "meaningWhenMissing": "n/a"
    } ]
  },
  "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Extension"
}