description: null package_name: io.health-samurai.core.r5 derivation: specialization name: ViewDefinition type: ViewDefinition elements: description: {type: markdown, short: Natural language description of the view definition, index: 9} where: type: BackboneElement short: A series of zero or more FHIRPath constraints to filter resources for the view. array: true index: 36 elements: path: {type: string, short: A FHIRPath expression defining a filter condition, index: 37} description: {type: string, short: A human-readable description of the above where constraint., index: 38} required: [path] meta: {type: Meta, short: Metadata about the view definition, index: 4} publisher: {type: string, short: Name of the publisher/steward (organization or individual), index: 7} fhirVersion: type: code short: FHIR version(s) of the resource for the ViewDefinition binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/FHIR-version'} array: true index: 13 name: type: string short: Name of view definition (computer and database friendly) constraint: sql-name: {human: 'Name must match ^[A-Za-z][A-Za-z0-9_]*$ (letters, numbers, or underscores; cannot start with underscore).', severity: error, expression: 'empty() or matches(''^[A-Za-z][A-Za-z0-9_]*$'')'} index: 2 constant: type: BackboneElement short: Constant that can be used in FHIRPath expressions array: true index: 14 elements: valueBase64Binary: {type: base64Binary, short: Value of constant, choiceOf: value, index: 18} valueCode: {type: code, short: Value of constant, choiceOf: value, index: 21} valueUri: {type: uri, short: Value of constant, choiceOf: value, index: 33} valueTime: {type: time, short: Value of constant, choiceOf: value, index: 31} valueDecimal: {type: decimal, short: Value of constant, choiceOf: value, index: 24} valueCanonical: {type: canonical, short: Value of constant, choiceOf: value, index: 20} name: type: string short: Name of constant (referred to in FHIRPath as %[name]) constraint: sql-name: {human: 'Name must match ^[A-Za-z][A-Za-z0-9_]*$ (letters, numbers, or underscores; cannot start with underscore).', severity: error, expression: 'empty() or matches(''^[A-Za-z][A-Za-z0-9_]*$'')'} index: 15 value: short: Value of constant choices: [valueBase64Binary, valueBoolean, valueCanonical, valueCode, valueDate, valueDateTime, valueDecimal, valueId, valueInstant, valueInteger, valueOid, valuePositiveInt, valueString, valueTime, valueUnsignedInt, valueUri, valueUrl, valueUuid] index: 17 valueString: {type: string, short: Value of constant, choiceOf: value, index: 30} valueBoolean: {type: boolean, short: Value of constant, choiceOf: value, index: 19} valueInstant: {type: instant, short: Value of constant, choiceOf: value, index: 26} valueDateTime: {type: dateTime, short: Value of constant, choiceOf: value, index: 23} valueDate: {type: date, short: Value of constant, choiceOf: value, index: 22} valueUuid: {type: uuid, short: Value of constant, choiceOf: value, index: 35} valueInteger: {type: integer, short: Value of constant, choiceOf: value, index: 27} valueUnsignedInt: {type: unsignedInt, short: Value of constant, choiceOf: value, index: 32} valueOid: {type: oid, short: Value of constant, choiceOf: value, index: 28} valuePositiveInt: {type: positiveInt, short: Value of constant, choiceOf: value, index: 29} valueId: {type: id, short: Value of constant, choiceOf: value, index: 25} valueUrl: {type: url, short: Value of constant, choiceOf: value, index: 34} required: [valueBase64Binary, valueUri, valueString, valueCode, valuePositiveInt, valueCanonical, valueDecimal, valueDateTime, name, valueInstant, value, valueBoolean, valueDate, valueUnsignedInt, valueUuid, valueTime, valueId, valueUrl, valueOid, valueInteger] useContext: {type: UsageContext, short: The context that the content is intended to support, array: true, index: 10} copyright: {type: markdown, short: Use and/or publishing restrictions, index: 11} experimental: {type: boolean, short: 'For testing purposes, not real usage', index: 6} title: {type: string, short: Name for this view definition (human friendly), index: 3} status: type: code short: draft | active | retired | unknown binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/publication-status'} index: 5 resource: type: code short: FHIR resource for the ViewDefinition binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/resource-types'} index: 12 url: {type: uri, short: 'Canonical identifier for this view definition, represented as a URI (globally unique)', index: 0} identifier: {type: Identifier, short: Additional identifier for the view definition, index: 1} contact: {type: ContactDetail, short: Contact details for the publisher, array: true, index: 8} select: type: BackboneElement short: A collection of columns and nested selects to include in the view. constraint: sql-expressions: {human: 'Can only have at most one of `forEach`, `forEachOrNull`, or `repeat`.', severity: error, expression: select((forEach.exists().toInteger() + forEachOrNull.exists().toInteger() + repeat.exists().toInteger())) <= 1} array: true min: 1 index: 39 elements: column: type: BackboneElement short: A column to be produced in the resulting table. array: true index: 40 elements: path: {type: string, short: FHIRPath expression that creates a column and defines its content, index: 41} name: type: string short: Column name produced in the output constraint: sql-name: {human: 'Name must match ^[A-Za-z][A-Za-z0-9_]*$ (letters, numbers, or underscores; cannot start with underscore).', severity: error, expression: 'empty() or matches(''^[A-Za-z][A-Za-z0-9_]*$'')'} index: 42 type: {type: uri, short: A FHIR StructureDefinition URI for the column's type., index: 43} collection: {type: boolean, short: Indicates whether the column may have multiple values., index: 44} description: {type: markdown, short: Description of the column, index: 45} tag: type: BackboneElement short: Additional metadata describing the column array: true index: 46 elements: name: {type: string, short: Name of tag, index: 47} value: {type: string, short: Value of tag, index: 48} required: [name, value] required: [path, name] select: short: Nested select relative to a parent expression. elementReference: ['http://hl7.org/fhir/uv/sql-on-fhir/StructureDefinition/ViewDefinition', elements, select] array: true index: 49 forEach: {type: string, short: A FHIRPath expression to retrieve the parent element(s) used in the containing select. The default is effectively `$this`., index: 50} forEachOrNull: {type: string, short: 'Same as forEach, but will produce a row with null values if the collection is empty.', index: 51} unionAll: short: Creates a union of all rows in the given selection structures. elementReference: ['http://hl7.org/fhir/uv/sql-on-fhir/StructureDefinition/ViewDefinition', elements, select] array: true index: 52 repeat: {type: string, array: true, index: 53} package_version: 0.2601.0 class: resource kind: resource url: http://hl7.org/fhir/uv/sql-on-fhir/StructureDefinition/ViewDefinition base: http://hl7.org/fhir/StructureDefinition/DomainResource version: 0.2601.0 required: [resource, select, status]