{
"description": "Input parameters for the $configure-storage operation.",
"_filename": "StructureDefinition-parameters-configureStorageProfile.json",
"package_name": "io.health-samurai.core.r5",
"date": null,
"derivation": "constraint",
"publisher": "Health Samurai",
"fhirVersion": "5.0.0",
"name": "ConfigureStorageProfile",
"abstract": false,
"type": "Parameters",
"experimental": null,
"resourceType": "StructureDefinition",
"title": "Configure Storage Profile",
"package_version": "0.2608.0",
"status": "active",
"id": "cfaa1c07-e2f1-41d3-8e5f-2cddf3e5d21e",
"kind": "resource",
"url": "http://health-samurai.io/fhir/core/StructureDefinition/parameters-configureStorageProfile",
"version": "0.2608.0",
"differential": {
"element": [ {
"id": "Parameters",
"path": "Parameters",
"constraint": [ {
"key": "mount-storage-history-1",
"human": "historyTableName is required when history is true",
"severity": "error",
"expression": "parameter.where(name = 'history' and value = true).exists() implies parameter.where(name = 'historyTableName').exists()"
}, {
"key": "mount-storage-history-2",
"human": "historyTableName must not be set when history is false",
"severity": "error",
"expression": "parameter.where(name = 'historyTableName').exists() implies parameter.where(name = 'history' and value = true).exists()"
} ]
}, {
"id": "Parameters.parameter",
"min": 1,
"path": "Parameters.parameter",
"slicing": {
"rules": "closed",
"discriminator": [ {
"path": "name",
"type": "value"
} ]
}
}, {
"id": "Parameters.parameter:storageType",
"max": "1",
"min": 1,
"path": "Parameters.parameter",
"sliceName": "storageType"
}, {
"id": "Parameters.parameter:storageType.name",
"path": "Parameters.parameter.name",
"fixedString": "storageType"
}, {
"id": "Parameters.parameter:storageType.value[x]",
"min": 1,
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "string"
} ],
"fixedString": "default"
}, {
"id": "Parameters.parameter:storageType.resource",
"max": "0",
"path": "Parameters.parameter.resource"
}, {
"id": "Parameters.parameter:storageType.part",
"max": "0",
"path": "Parameters.parameter.part"
}, {
"id": "Parameters.parameter:tableName",
"max": "1",
"min": 1,
"path": "Parameters.parameter",
"sliceName": "tableName"
}, {
"id": "Parameters.parameter:tableName.name",
"path": "Parameters.parameter.name",
"fixedString": "tableName"
}, {
"id": "Parameters.parameter:tableName.value[x]",
"min": 1,
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "string"
} ],
"constraint": [ {
"key": "mount-table-name-length",
"human": "tableName must be at most 63 characters (PostgreSQL identifier limit)",
"severity": "error",
"expression": "%context.length() <= 63"
} ]
}, {
"id": "Parameters.parameter:tableName.resource",
"max": "0",
"path": "Parameters.parameter.resource"
}, {
"id": "Parameters.parameter:tableName.part",
"max": "0",
"path": "Parameters.parameter.part"
}, {
"id": "Parameters.parameter:structureDefinition",
"max": "1",
"min": 1,
"path": "Parameters.parameter",
"sliceName": "structureDefinition"
}, {
"id": "Parameters.parameter:structureDefinition.name",
"path": "Parameters.parameter.name",
"fixedString": "structureDefinition"
}, {
"id": "Parameters.parameter:structureDefinition.value[x]",
"min": 1,
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "canonical"
} ]
}, {
"id": "Parameters.parameter:structureDefinition.resource",
"max": "0",
"path": "Parameters.parameter.resource"
}, {
"id": "Parameters.parameter:structureDefinition.part",
"max": "0",
"path": "Parameters.parameter.part"
}, {
"id": "Parameters.parameter:history",
"max": "1",
"min": 0,
"path": "Parameters.parameter",
"sliceName": "history"
}, {
"id": "Parameters.parameter:history.name",
"path": "Parameters.parameter.name",
"fixedString": "history"
}, {
"id": "Parameters.parameter:history.value[x]",
"min": 1,
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "boolean"
} ]
}, {
"id": "Parameters.parameter:history.resource",
"max": "0",
"path": "Parameters.parameter.resource"
}, {
"id": "Parameters.parameter:history.part",
"max": "0",
"path": "Parameters.parameter.part"
}, {
"id": "Parameters.parameter:historyTableName",
"max": "1",
"min": 0,
"path": "Parameters.parameter",
"sliceName": "historyTableName"
}, {
"id": "Parameters.parameter:historyTableName.name",
"path": "Parameters.parameter.name",
"fixedString": "historyTableName"
}, {
"id": "Parameters.parameter:historyTableName.value[x]",
"min": 1,
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "string"
} ],
"constraint": [ {
"key": "mount-history-table-name-length",
"human": "historyTableName must be at most 63 characters (PostgreSQL identifier limit)",
"severity": "error",
"expression": "%context.length() <= 63"
} ]
}, {
"id": "Parameters.parameter:historyTableName.resource",
"max": "0",
"path": "Parameters.parameter.resource"
}, {
"id": "Parameters.parameter:historyTableName.part",
"max": "0",
"path": "Parameters.parameter.part"
}, {
"id": "Parameters.parameter:storageId",
"max": "1",
"min": 1,
"path": "Parameters.parameter",
"sliceName": "storageId"
}, {
"id": "Parameters.parameter:storageId.name",
"path": "Parameters.parameter.name",
"fixedString": "storageId"
}, {
"id": "Parameters.parameter:storageId.value[x]",
"min": 1,
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "string"
} ]
}, {
"id": "Parameters.parameter:storageId.resource",
"max": "0",
"path": "Parameters.parameter.resource"
}, {
"id": "Parameters.parameter:storageId.part",
"max": "0",
"path": "Parameters.parameter.part"
} ]
},
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Parameters"
}