PackagesCanonicalsLogsProblems
    Packages
    io.health-samurai.core.r6@0.2609.0
    http://health-samurai.io/fhir/core/StructureDefinition/aidboxmaterialization-pgProfile
{
  "description": "PostgreSQL materialization: the schema and object name to build, and which kind of object to build.",
  "_filename": "StructureDefinition-aidboxmaterialization-pgProfile.json",
  "package_name": "io.health-samurai.core.r6",
  "date": null,
  "derivation": "constraint",
  "publisher": "Health Samurai",
  "fhirVersion": "6.0.0-ballot5",
  "name": "PgProfile",
  "abstract": false,
  "type": "AidboxMaterialization",
  "experimental": null,
  "resourceType": "StructureDefinition",
  "title": "PG Profile",
  "package_version": "0.2609.0",
  "extension": [ {
    "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-category",
    "valueString": "sql-on-fhir"
  } ],
  "status": "active",
  "id": "9540213a-5d45-497d-af97-98c0bcc15b8b",
  "kind": "resource",
  "url": "http://health-samurai.io/fhir/core/StructureDefinition/aidboxmaterialization-pgProfile",
  "version": "0.2609.0",
  "differential": {
    "element": [ {
      "id": "AidboxMaterialization.parameter",
      "path": "AidboxMaterialization.parameter",
      "slicing": {
        "rules": "closed",
        "discriminator": [ {
          "path": "name",
          "type": "pattern"
        } ]
      }
    }, {
      "id": "AidboxMaterialization.parameter:schema",
      "max": "1",
      "min": 1,
      "path": "AidboxMaterialization.parameter",
      "sliceName": "schema"
    }, {
      "id": "AidboxMaterialization.parameter:schema.name",
      "path": "AidboxMaterialization.parameter.name",
      "fixedString": "schema"
    }, {
      "id": "AidboxMaterialization.parameter:schema.value[x]",
      "min": 1,
      "path": "AidboxMaterialization.parameter.value[x]",
      "type": [ {
        "code": "string"
      } ],
      "constraint": [ {
        "key": "materialization-pg-identifier",
        "human": "must be a plain SQL identifier: letters, digits or underscore, not starting with a digit",
        "severity": "error",
        "expression": "$this.matches('^[A-Za-z_][A-Za-z0-9_]*$')"
      } ]
    }, {
      "id": "AidboxMaterialization.parameter:schema.resource",
      "max": "0",
      "path": "AidboxMaterialization.parameter.resource"
    }, {
      "id": "AidboxMaterialization.parameter:schema.part",
      "max": "0",
      "path": "AidboxMaterialization.parameter.part"
    }, {
      "id": "AidboxMaterialization.parameter:name",
      "max": "1",
      "min": 1,
      "path": "AidboxMaterialization.parameter",
      "sliceName": "name"
    }, {
      "id": "AidboxMaterialization.parameter:name.name",
      "path": "AidboxMaterialization.parameter.name",
      "fixedString": "name"
    }, {
      "id": "AidboxMaterialization.parameter:name.value[x]",
      "min": 1,
      "path": "AidboxMaterialization.parameter.value[x]",
      "type": [ {
        "code": "string"
      } ],
      "constraint": [ {
        "key": "materialization-pg-identifier",
        "human": "must be a plain SQL identifier: letters, digits or underscore, not starting with a digit",
        "severity": "error",
        "expression": "$this.matches('^[A-Za-z_][A-Za-z0-9_]*$')"
      } ]
    }, {
      "id": "AidboxMaterialization.parameter:name.resource",
      "max": "0",
      "path": "AidboxMaterialization.parameter.resource"
    }, {
      "id": "AidboxMaterialization.parameter:name.part",
      "max": "0",
      "path": "AidboxMaterialization.parameter.part"
    }, {
      "id": "AidboxMaterialization.parameter:materializationType",
      "max": "1",
      "min": 0,
      "path": "AidboxMaterialization.parameter",
      "sliceName": "materializationType"
    }, {
      "id": "AidboxMaterialization.parameter:materializationType.name",
      "path": "AidboxMaterialization.parameter.name",
      "fixedString": "materializationType"
    }, {
      "id": "AidboxMaterialization.parameter:materializationType.value[x]",
      "min": 1,
      "path": "AidboxMaterialization.parameter.value[x]",
      "type": [ {
        "code": "code"
      } ],
      "constraint": [ {
        "key": "materialization-pg-object-type",
        "human": "materializationType shall be one of: view, materialized-view",
        "severity": "error",
        "expression": "$this.subsetOf('view' | 'materialized-view')"
      } ]
    }, {
      "id": "AidboxMaterialization.parameter:materializationType.resource",
      "max": "0",
      "path": "AidboxMaterialization.parameter.resource"
    }, {
      "id": "AidboxMaterialization.parameter:materializationType.part",
      "max": "0",
      "path": "AidboxMaterialization.parameter.part"
    } ]
  },
  "baseDefinition": "http://health-samurai.io/fhir/core/StructureDefinition/AidboxMaterialization"
}