{
"description": "Profile for FHIR Bulk Data $export operation POST parameters. Based on https://build.fhir.org/ig/HL7/bulk-data/export.html",
"_filename": "StructureDefinition-parameters-bulkExportProfile.json",
"package_name": "io.health-samurai.core.r3",
"date": null,
"derivation": "constraint",
"publisher": "Health Samurai",
"fhirVersion": "3.0.2",
"name": "BulkExportProfile",
"abstract": false,
"type": "Parameters",
"experimental": null,
"resourceType": "StructureDefinition",
"title": "Bulk Export Profile",
"package_version": "0.2605.0",
"status": "active",
"id": "beb8f18b-04be-4784-bc2b-817d0d52291d",
"kind": "resource",
"url": "http://health-samurai.io/fhir/core/StructureDefinition/parameters-bulkExportProfile",
"version": "0.2605.0",
"differential": {
"element": [ {
"id": "Parameters",
"max": "*",
"min": 0,
"path": "Parameters"
}, {
"id": "Parameters.parameter",
"path": "Parameters.parameter",
"slicing": {
"rules": "closed",
"discriminator": [ {
"path": "name",
"type": "value"
} ]
}
}, {
"id": "Parameters.parameter:_outputFormat",
"max": "1",
"min": 0,
"path": "Parameters.parameter",
"short": "Output format for exported files (default: application/fhir+ndjson).",
"sliceName": "_outputFormat"
}, {
"id": "Parameters.parameter:_outputFormat.name",
"path": "Parameters.parameter.name",
"fixedString": "_outputFormat"
}, {
"id": "Parameters.parameter:_outputFormat.value[x]",
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "string"
} ]
}, {
"id": "Parameters.parameter:_since",
"max": "1",
"min": 0,
"path": "Parameters.parameter",
"short": "Include resources modified after this timestamp.",
"sliceName": "_since"
}, {
"id": "Parameters.parameter:_since.name",
"path": "Parameters.parameter.name",
"fixedString": "_since"
}, {
"id": "Parameters.parameter:_since.value[x]",
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "instant"
} ]
}, {
"id": "Parameters.parameter:_until",
"max": "1",
"min": 0,
"path": "Parameters.parameter",
"short": "Include resources modified before this timestamp. Defaults to operation start time.",
"sliceName": "_until"
}, {
"id": "Parameters.parameter:_until.name",
"path": "Parameters.parameter.name",
"fixedString": "_until"
}, {
"id": "Parameters.parameter:_until.value[x]",
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "instant"
} ]
}, {
"id": "Parameters.parameter:_type",
"max": "*",
"min": 0,
"path": "Parameters.parameter",
"short": "Comma-delimited FHIR resource types to include in the export.",
"sliceName": "_type"
}, {
"id": "Parameters.parameter:_type.name",
"path": "Parameters.parameter.name",
"fixedString": "_type"
}, {
"id": "Parameters.parameter:_type.value[x]",
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "string"
} ]
}, {
"id": "Parameters.parameter:_typeFilter",
"max": "*",
"min": 0,
"path": "Parameters.parameter",
"short": "FHIR REST queries to constrain the exported dataset (ResourceType?params).",
"sliceName": "_typeFilter"
}, {
"id": "Parameters.parameter:_typeFilter.name",
"path": "Parameters.parameter.name",
"fixedString": "_typeFilter"
}, {
"id": "Parameters.parameter:_typeFilter.value[x]",
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "string"
} ]
}, {
"id": "Parameters.parameter:patient",
"max": "*",
"min": 0,
"path": "Parameters.parameter",
"short": "Specific patients to export. Omit to export all.",
"sliceName": "patient"
}, {
"id": "Parameters.parameter:patient.name",
"path": "Parameters.parameter.name",
"fixedString": "patient"
}, {
"id": "Parameters.parameter:patient.value[x]",
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "Reference"
} ]
}, {
"id": "Parameters.parameter:onPatientError",
"max": "1",
"min": 0,
"path": "Parameters.parameter",
"short": "Behavior when patient references are invalid: fail (default, returns 422) or ignore (drop and proceed).",
"sliceName": "onPatientError"
}, {
"id": "Parameters.parameter:onPatientError.name",
"path": "Parameters.parameter.name",
"fixedString": "onPatientError"
}, {
"id": "Parameters.parameter:onPatientError.value[x]",
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "code"
} ],
"binding": {
"strength": "required",
"valueSetUri": "http://health-samurai.io/fhir/core/ValueSet/on-patient-error"
},
"constraint": [ {
"key": "on-patient-error-1",
"human": "onPatientError must be one of: fail, ignore",
"severity": "error",
"expression": "%context.subsetOf('fail' | 'ignore')"
} ]
}, {
"id": "Parameters.parameter:consentStrategy",
"max": "1",
"min": 0,
"path": "Parameters.parameter",
"short": "Consent-based patient filtering strategy: opt-in or opt-out.",
"sliceName": "consentStrategy"
}, {
"id": "Parameters.parameter:consentStrategy.name",
"path": "Parameters.parameter.name",
"fixedString": "consentStrategy"
}, {
"id": "Parameters.parameter:consentStrategy.value[x]",
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "code"
} ],
"binding": {
"strength": "required",
"valueSetUri": "http://health-samurai.io/fhir/core/ValueSet/consent-strategy"
},
"constraint": [ {
"key": "consent-strategy-1",
"human": "consentStrategy must be one of: opt-in, opt-out",
"severity": "error",
"expression": "%context.subsetOf('opt-in' | 'opt-out')"
} ]
}, {
"id": "Parameters.parameter:consentProfile",
"max": "1",
"min": 0,
"path": "Parameters.parameter",
"short": "Consent StructureDefinition URL to filter by meta.profile. Omit to match any Consent.",
"sliceName": "consentProfile"
}, {
"id": "Parameters.parameter:consentProfile.name",
"path": "Parameters.parameter.name",
"fixedString": "consentProfile"
}, {
"id": "Parameters.parameter:consentProfile.value[x]",
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "uri"
} ]
}, {
"id": "Parameters.parameter:organizationIdentifierSystem",
"max": "1",
"min": 0,
"path": "Parameters.parameter",
"short": "Organization.identifier.system to use for consent actor matching.",
"sliceName": "organizationIdentifierSystem"
}, {
"id": "Parameters.parameter:organizationIdentifierSystem.name",
"path": "Parameters.parameter.name",
"fixedString": "organizationIdentifierSystem"
}, {
"id": "Parameters.parameter:organizationIdentifierSystem.value[x]",
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "uri"
} ]
}, {
"id": "Parameters.parameter:aidboxStorageProvider",
"max": "1",
"min": 0,
"path": "Parameters.parameter",
"short": "Aidbox: override storage provider type (gcp, aws, azure).",
"sliceName": "aidboxStorageProvider"
}, {
"id": "Parameters.parameter:aidboxStorageProvider.name",
"path": "Parameters.parameter.name",
"fixedString": "_aidbox.storageProvider"
}, {
"id": "Parameters.parameter:aidboxStorageProvider.value[x]",
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "string"
} ],
"binding": {
"strength": "extensible",
"valueSetUri": "http://health-samurai.io/fhir/core/ValueSet/export-storage-type"
},
"constraint": [ {
"key": "storage-type-1",
"human": "Storage type must be one of: gcp, aws, azure",
"severity": "error",
"expression": "%context.subsetOf('gcp' | 'aws' | 'azure')"
} ]
}, {
"id": "Parameters.parameter:aidboxStorageBucket",
"max": "1",
"min": 0,
"path": "Parameters.parameter",
"short": "Aidbox: override cloud storage bucket name.",
"sliceName": "aidboxStorageBucket"
}, {
"id": "Parameters.parameter:aidboxStorageBucket.name",
"path": "Parameters.parameter.name",
"fixedString": "_aidbox.storageBucket"
}, {
"id": "Parameters.parameter:aidboxStorageBucket.value[x]",
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "string"
} ]
}, {
"id": "Parameters.parameter:aidboxStorageAccount",
"max": "1",
"min": 0,
"path": "Parameters.parameter",
"short": "Aidbox: override cloud account reference (ResourceType/id).",
"sliceName": "aidboxStorageAccount"
}, {
"id": "Parameters.parameter:aidboxStorageAccount.name",
"path": "Parameters.parameter.name",
"fixedString": "_aidbox.storageAccount"
}, {
"id": "Parameters.parameter:aidboxStorageAccount.value[x]",
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "Reference"
} ]
}, {
"id": "Parameters.parameter:aidboxAzureStorage",
"max": "1",
"min": 0,
"path": "Parameters.parameter",
"short": "Aidbox: override Azure storage account name.",
"sliceName": "aidboxAzureStorage"
}, {
"id": "Parameters.parameter:aidboxAzureStorage.name",
"path": "Parameters.parameter.name",
"fixedString": "_aidbox.azureStorage"
}, {
"id": "Parameters.parameter:aidboxAzureStorage.value[x]",
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "string"
} ]
}, {
"id": "Parameters.parameter:aidboxAzureContainer",
"max": "1",
"min": 0,
"path": "Parameters.parameter",
"short": "Aidbox: override Azure container name.",
"sliceName": "aidboxAzureContainer"
}, {
"id": "Parameters.parameter:aidboxAzureContainer.name",
"path": "Parameters.parameter.name",
"fixedString": "_aidbox.azureContainer"
}, {
"id": "Parameters.parameter:aidboxAzureContainer.value[x]",
"path": "Parameters.parameter.value[x]",
"type": [ {
"code": "string"
} ]
} ]
},
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Parameters"
}