{
"description": "BigQuery at-least-once delivery profile for AidboxTopicDestination.",
"_filename": "StructureDefinition-aidboxtopicdestination-bigquery-at-least-once.json",
"package_name": "io.health-samurai.core.r4b",
"date": null,
"derivation": "constraint",
"publisher": null,
"fhirVersion": "4.3.0",
"name": "aidboxtopicdestination-bigquery-at-least-once",
"abstract": false,
"type": "AidboxTopicDestination",
"experimental": null,
"resourceType": "StructureDefinition",
"title": null,
"package_version": "0.2603.0",
"status": "active",
"id": "c22bcdb2-7264-47b0-9be0-cdfc03791f56",
"kind": "resource",
"url": "http://aidbox.app/StructureDefinition/aidboxtopicdestination-bigquery-at-least-once",
"version": "0.2603.0",
"differential": {
"element": [ {
"id": "AidboxTopicDestination.kind",
"path": "AidboxTopicDestination.kind",
"fixedString": "bigquery-at-least-once"
}, {
"id": "AidboxTopicDestination.parameter",
"path": "AidboxTopicDestination.parameter",
"slicing": {
"rules": "closed",
"discriminator": [ {
"path": "name",
"type": "pattern"
} ]
}
}, {
"id": "AidboxTopicDestination.parameter:projectId",
"max": "1",
"min": 1,
"path": "AidboxTopicDestination.parameter",
"short": "Google Cloud project ID",
"sliceName": "projectId"
}, {
"id": "AidboxTopicDestination.parameter:projectId.name",
"path": "AidboxTopicDestination.parameter.name",
"fixedString": "projectId"
}, {
"id": "AidboxTopicDestination.parameter:projectId.value[x]",
"min": 1,
"path": "AidboxTopicDestination.parameter.value[x]",
"type": [ {
"code": "string"
} ]
}, {
"id": "AidboxTopicDestination.parameter:projectId.resource",
"max": "0",
"path": "AidboxTopicDestination.parameter.resource"
}, {
"id": "AidboxTopicDestination.parameter:projectId.part",
"max": "0",
"path": "AidboxTopicDestination.parameter.part"
}, {
"id": "AidboxTopicDestination.parameter:dataset",
"max": "1",
"min": 1,
"path": "AidboxTopicDestination.parameter",
"short": "BigQuery dataset name",
"sliceName": "dataset"
}, {
"id": "AidboxTopicDestination.parameter:dataset.name",
"path": "AidboxTopicDestination.parameter.name",
"fixedString": "dataset"
}, {
"id": "AidboxTopicDestination.parameter:dataset.value[x]",
"min": 1,
"path": "AidboxTopicDestination.parameter.value[x]",
"type": [ {
"code": "string"
} ]
}, {
"id": "AidboxTopicDestination.parameter:dataset.resource",
"max": "0",
"path": "AidboxTopicDestination.parameter.resource"
}, {
"id": "AidboxTopicDestination.parameter:dataset.part",
"max": "0",
"path": "AidboxTopicDestination.parameter.part"
}, {
"id": "AidboxTopicDestination.parameter:destinationTable",
"max": "1",
"min": 1,
"path": "AidboxTopicDestination.parameter",
"short": "Target table name in BigQuery",
"sliceName": "destinationTable"
}, {
"id": "AidboxTopicDestination.parameter:destinationTable.name",
"path": "AidboxTopicDestination.parameter.name",
"fixedString": "destinationTable"
}, {
"id": "AidboxTopicDestination.parameter:destinationTable.value[x]",
"min": 1,
"path": "AidboxTopicDestination.parameter.value[x]",
"type": [ {
"code": "string"
} ]
}, {
"id": "AidboxTopicDestination.parameter:destinationTable.resource",
"max": "0",
"path": "AidboxTopicDestination.parameter.resource"
}, {
"id": "AidboxTopicDestination.parameter:destinationTable.part",
"max": "0",
"path": "AidboxTopicDestination.parameter.part"
}, {
"id": "AidboxTopicDestination.parameter:viewDefinition",
"max": "1",
"min": 1,
"path": "AidboxTopicDestination.parameter",
"short": "Name of the ViewDefinition resource for data transformation",
"sliceName": "viewDefinition"
}, {
"id": "AidboxTopicDestination.parameter:viewDefinition.name",
"path": "AidboxTopicDestination.parameter.name",
"fixedString": "viewDefinition"
}, {
"id": "AidboxTopicDestination.parameter:viewDefinition.value[x]",
"min": 1,
"path": "AidboxTopicDestination.parameter.value[x]",
"type": [ {
"code": "string"
} ]
}, {
"id": "AidboxTopicDestination.parameter:viewDefinition.resource",
"max": "0",
"path": "AidboxTopicDestination.parameter.resource"
}, {
"id": "AidboxTopicDestination.parameter:viewDefinition.part",
"max": "0",
"path": "AidboxTopicDestination.parameter.part"
}, {
"id": "AidboxTopicDestination.parameter:serviceAccountKey",
"max": "1",
"min": 0,
"path": "AidboxTopicDestination.parameter",
"short": "Google Service Account JSON key (optional, omit for ADC/Workload Identity)",
"sliceName": "serviceAccountKey"
}, {
"id": "AidboxTopicDestination.parameter:serviceAccountKey.name",
"path": "AidboxTopicDestination.parameter.name",
"fixedString": "serviceAccountKey"
}, {
"id": "AidboxTopicDestination.parameter:serviceAccountKey.value[x]",
"min": 0,
"path": "AidboxTopicDestination.parameter.value[x]",
"type": [ {
"code": "string"
} ]
}, {
"id": "AidboxTopicDestination.parameter:serviceAccountKey.resource",
"max": "0",
"path": "AidboxTopicDestination.parameter.resource"
}, {
"id": "AidboxTopicDestination.parameter:serviceAccountKey.part",
"max": "0",
"path": "AidboxTopicDestination.parameter.part"
}, {
"id": "AidboxTopicDestination.parameter:batchSize",
"max": "1",
"min": 1,
"path": "AidboxTopicDestination.parameter",
"short": "Number of messages per batch",
"sliceName": "batchSize"
}, {
"id": "AidboxTopicDestination.parameter:batchSize.name",
"path": "AidboxTopicDestination.parameter.name",
"fixedString": "batchSize"
}, {
"id": "AidboxTopicDestination.parameter:batchSize.value[x]",
"min": 1,
"path": "AidboxTopicDestination.parameter.value[x]",
"type": [ {
"code": "unsignedInt"
} ]
}, {
"id": "AidboxTopicDestination.parameter:batchSize.resource",
"max": "0",
"path": "AidboxTopicDestination.parameter.resource"
}, {
"id": "AidboxTopicDestination.parameter:batchSize.part",
"max": "0",
"path": "AidboxTopicDestination.parameter.part"
}, {
"id": "AidboxTopicDestination.parameter:sendIntervalMs",
"max": "1",
"min": 1,
"path": "AidboxTopicDestination.parameter",
"short": "Maximum time between sends in milliseconds",
"sliceName": "sendIntervalMs"
}, {
"id": "AidboxTopicDestination.parameter:sendIntervalMs.name",
"path": "AidboxTopicDestination.parameter.name",
"fixedString": "sendIntervalMs"
}, {
"id": "AidboxTopicDestination.parameter:sendIntervalMs.value[x]",
"min": 1,
"path": "AidboxTopicDestination.parameter.value[x]",
"type": [ {
"code": "unsignedInt"
} ]
}, {
"id": "AidboxTopicDestination.parameter:sendIntervalMs.resource",
"max": "0",
"path": "AidboxTopicDestination.parameter.resource"
}, {
"id": "AidboxTopicDestination.parameter:sendIntervalMs.part",
"max": "0",
"path": "AidboxTopicDestination.parameter.part"
}, {
"id": "AidboxTopicDestination.parameter:skipInitialExport",
"max": "1",
"min": 0,
"path": "AidboxTopicDestination.parameter",
"short": "Skip initial export of existing data (default: false)",
"sliceName": "skipInitialExport"
}, {
"id": "AidboxTopicDestination.parameter:skipInitialExport.name",
"path": "AidboxTopicDestination.parameter.name",
"fixedString": "skipInitialExport"
}, {
"id": "AidboxTopicDestination.parameter:skipInitialExport.value[x]",
"min": 1,
"path": "AidboxTopicDestination.parameter.value[x]",
"type": [ {
"code": "boolean"
} ]
}, {
"id": "AidboxTopicDestination.parameter:skipInitialExport.resource",
"max": "0",
"path": "AidboxTopicDestination.parameter.resource"
}, {
"id": "AidboxTopicDestination.parameter:skipInitialExport.part",
"max": "0",
"path": "AidboxTopicDestination.parameter.part"
}, {
"id": "AidboxTopicDestination.parameter:emulatorUrl",
"max": "1",
"min": 0,
"path": "AidboxTopicDestination.parameter",
"short": "BigQuery emulator REST URL (e.g. http://bigquery:9050). Skips authentication.",
"sliceName": "emulatorUrl"
}, {
"id": "AidboxTopicDestination.parameter:emulatorUrl.name",
"path": "AidboxTopicDestination.parameter.name",
"fixedString": "emulatorUrl"
}, {
"id": "AidboxTopicDestination.parameter:emulatorUrl.value[x]",
"min": 1,
"path": "AidboxTopicDestination.parameter.value[x]",
"type": [ {
"code": "string"
} ]
}, {
"id": "AidboxTopicDestination.parameter:emulatorUrl.resource",
"max": "0",
"path": "AidboxTopicDestination.parameter.resource"
}, {
"id": "AidboxTopicDestination.parameter:emulatorUrl.part",
"max": "0",
"path": "AidboxTopicDestination.parameter.part"
}, {
"id": "AidboxTopicDestination.parameter:emulatorGrpcHost",
"max": "1",
"min": 0,
"path": "AidboxTopicDestination.parameter",
"short": "BigQuery emulator gRPC host:port (e.g. bigquery:9060). Uses plaintext gRPC.",
"sliceName": "emulatorGrpcHost"
}, {
"id": "AidboxTopicDestination.parameter:emulatorGrpcHost.name",
"path": "AidboxTopicDestination.parameter.name",
"fixedString": "emulatorGrpcHost"
}, {
"id": "AidboxTopicDestination.parameter:emulatorGrpcHost.value[x]",
"min": 1,
"path": "AidboxTopicDestination.parameter.value[x]",
"type": [ {
"code": "string"
} ]
}, {
"id": "AidboxTopicDestination.parameter:emulatorGrpcHost.resource",
"max": "0",
"path": "AidboxTopicDestination.parameter.resource"
}, {
"id": "AidboxTopicDestination.parameter:emulatorGrpcHost.part",
"max": "0",
"path": "AidboxTopicDestination.parameter.part"
} ]
},
"baseDefinition": "http://health-samurai.io/fhir/core/StructureDefinition/AidboxTopicDestination"
}