Resource: Hl7V2Store
Represents an HL7v2 store.
JSON representation |
---|
{ "name": string, "parserConfig": { object( |
Fields | |
---|---|
name |
Identifier. Resource name of the HL7v2 store, of the form |
parser |
Optional. The configuration for the parser. It determines how the server parses the messages. |
labels |
User-supplied key-value pairs used to organize HL7v2 stores. Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62} Label values are optional, must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63} No more than 64 labels can be associated with a given store. An object containing a list of |
notification |
Optional. A list of notification configs. Each configuration uses a filter to determine whether to publish a message (both Ingest & Create) on the corresponding notification destination. Only the message name is sent as part of the notification. Supplied by the client. |
reject |
Optional. Determines whether to reject duplicate messages. A duplicate message is a message with the same raw bytes as a message that has already been ingested/created in this HL7v2 store. The default value is false, meaning that the store accepts the duplicate messages and it also returns the same ACK message in the |
ParserConfig
The configuration for the parser. It determines how the server parses the messages.
JSON representation |
---|
{ "allowNullHeader": boolean, "segmentTerminator": string, "schema": { object( |
Fields | |
---|---|
allow |
Optional. Determines whether messages with no header are allowed. |
segment |
Optional. Byte(s) to use as the segment terminator. If this is unset, '\r' is used as segment terminator, matching the HL7 version 2 specification. A base64-encoded string. |
schema |
Optional. Schemas used to parse messages in this store, if schematized parsing is desired. |
version |
Immutable. Determines the version of both the default parser to be used when |
SchemaPackage
A schema package contains a set of schemas and type definitions.
JSON representation |
---|
{ "schematizedParsingType": enum( |
Fields | |
---|---|
schematized |
Optional. Determines how messages that fail to parse are handled. |
schemas[] |
Optional. Schema configs that are layered based on their VersionSources that match the incoming message. Schema configs present in higher indices override those in lower indices with the same message type and trigger event if their VersionSources all match an incoming message. |
types[] |
Optional. Schema type definitions that are layered based on their VersionSources that match the incoming message. Type definitions present in higher indices override those in lower indices with the same type name if their VersionSources all match an incoming message. |
ignore |
Optional. Flag to ignore all minOccurs restrictions in the schema. This means that incoming messages can omit any group, segment, field, component, or subcomponent. |
unexpected |
Optional. Determines how unexpected segments (segments not matched to the schema) are handled. |
SchematizedParsingType
Determines the failure mode for schematized parsing.
Enums | |
---|---|
SCHEMATIZED_PARSING_TYPE_UNSPECIFIED |
Unspecified schematized parsing type, equivalent to SOFT_FAIL . |
SOFT_FAIL |
Messages that fail to parse are still stored and ACKed but a parser error is stored in place of the schematized data. |
HARD_FAIL |
Messages that fail to parse are rejected from ingestion/insertion and return an error code. |
Hl7SchemaConfig
Root config message for HL7v2 schema. This contains a schema structure of groups and segments, and filters that determine which messages to apply the schema structure to.
JSON representation |
---|
{ "version": [ { object( |
Fields | |
---|---|
version[] |
Each VersionSource is tested and only if they all match is the schema used for the message. |
message |
Map from each HL7v2 message type and trigger event pair, such as ADT_A04, to its schema configuration root group. An object containing a list of |
VersionSource
Describes a selector for extracting and matching an MSH field to a value.
JSON representation |
---|
{ "mshField": string, "value": string } |
Fields | |
---|---|
msh |
The field to extract from the MSH segment. For example, "3.1" or "18[1].1". |
value |
The value to match with the field. For example, "My Application Name" or "2.3". |
SchemaGroup
An HL7v2 logical group construct.
JSON representation |
---|
{
"name": string,
"choice": boolean,
"minOccurs": integer,
"maxOccurs": integer,
"members": [
{
object( |
Fields | |
---|---|
name |
The name of this group. For example, "ORDER_DETAIL". |
choice |
True indicates that this is a choice group, meaning that only one of its segments can exist in a given message. |
min |
The minimum number of times this group must be present/repeated. |
max |
The maximum number of times this group can be repeated. 0 or -1 means unbounded. |
members[] |
Nested groups and/or segments. |
GroupOrSegment
Construct representing a logical group or a segment.
JSON representation |
---|
{ // Union field |
Fields | |
---|---|
Union field
|
|
segment |
|
group |
|
SchemaSegment
An HL7v2 Segment.
JSON representation |
---|
{ "type": string, "minOccurs": integer, "maxOccurs": integer } |
Fields | |
---|---|
type |
The Segment type. For example, "PID". |
min |
The minimum number of times this segment can be present in this group. |
max |
The maximum number of times this segment can be present in this group. 0 or -1 means unbounded. |
Hl7TypesConfig
Root config for HL7v2 datatype definitions for a specific HL7v2 version.
JSON representation |
---|
{ "version": [ { object( |
Fields | |
---|---|
version[] |
The version selectors that this config applies to. A message must match ALL version sources to apply. |
type[] |
The HL7v2 type definitions. |
Type
A type definition for some HL7v2 type (incl. Segments and Datatypes).
JSON representation |
---|
{ "name": string, "primitive": enum( |
Fields | |
---|---|
name |
The name of this type. This would be the segment or datatype name. For example, "PID" or "XPN". |
primitive |
If this is a primitive type then this field is the type of the primitive For example, STRING. Leave unspecified for composite types. |
fields[] |
The (sub) fields this type has (if not primitive). |
Primitive
Enums | |
---|---|
PRIMITIVE_UNSPECIFIED |
Not a primitive. |
STRING |
String primitive. |
VARIES |
Element that can have unschematized children. |
UNESCAPED_STRING |
Like STRING, but all delimiters below this element are ignored. |
Field
A (sub) field of a type.
JSON representation |
---|
{ "name": string, "type": string, "table": string, "minOccurs": integer, "maxOccurs": integer } |
Fields | |
---|---|
name |
The name of the field. For example, "PID-1" or just "1". |
type |
The type of this field. A Type with this name must be defined in an Hl7TypesConfig. |
table |
The HL7v2 table this field refers to. For example, PID-15 (Patient's Primary Language) usually refers to table "0296". |
min |
The minimum number of times this field must be present/repeated. |
max |
The maximum number of times this field can be repeated. 0 or -1 means unbounded. |
UnexpectedSegmentHandlingMode
Determines how unexpected segments are handled. An unexpected segment is a segment that is present in a message but has no corresponding match in the message type definition.
Enums | |
---|---|
UNEXPECTED_SEGMENT_HANDLING_MODE_UNSPECIFIED |
Unspecified handling mode, equivalent to FAIL. |
FAIL |
Unexpected segments fail to parse and return an error. |
SKIP |
Unexpected segments do not fail, but are omitted from the output. |
PARSE |
Unexpected segments do not fail, but are parsed in place and added to the current group. If a segment has a type definition, it is used, otherwise it is parsed as VARIES. |
ParserVersion
The parser version. Applies to both the default parser and the schematized parser. The highest version of the parser is recommended.
Enums | |
---|---|
PARSER_VERSION_UNSPECIFIED |
Unspecified parser version, equivalent to V1. |
V1 |
The parsedData includes every given non-empty message field except the Field Separator (MSH-1) field. As a result, the parsed MSH segment starts with the MSH-2 field and the field numbers are off-by-one with respect to the HL7 standard. |
V2 |
The parsedData includes every given non-empty message field. |
V3 |
This version is the same as V2, with the following change. The If |
Hl7V2NotificationConfig
Specifies where and whether to send notifications upon changes to a data store.
JSON representation |
---|
{ "pubsubTopic": string, "filter": string } |
Fields | |
---|---|
pubsub |
The Pub/Sub topic that notifications of changes are published on. Supplied by the client. The notification is a
Note that notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. The Cloud Healthcare API service account, service-PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com, must have publisher permissions on the given Pub/Sub topic. Not having adequate permissions causes the calls that send notifications to fail. If a notification cannot be published to Pub/Sub, errors are logged to Cloud Logging. For more information, see Viewing error logs in Cloud Logging). |
filter |
Optional. Restricts notifications sent for messages matching a filter. If this is empty, all messages are matched. The following syntax is available:
The following fields and functions are available for filtering:
|
Methods |
|
---|---|
|
Creates a new HL7v2 store within the parent dataset. |
|
Deletes the specified HL7v2 store and removes all messages that it contains. |
|
Exports the messages to a destination. |
|
Gets the specified HL7v2 store. |
|
Gets metrics associated with the HL7v2 store. |
|
Gets the access control policy for a resource. |
|
Import messages to the HL7v2 store by loading data from the specified sources. |
|
Lists the HL7v2 stores in the given dataset. |
|
Updates the HL7v2 store. |
|
Rolls back messages from the HL7v2 store to the specified time. |
|
Sets the access control policy on the specified resource. |
|
Returns permissions that a caller has on the specified resource. |