Resource validate

An operation to support validation of resources against a GraphDefinition. This OperationDefinition is an extension to the Resource-validate operation (please see the deifinition for this operation to determine functionality for the base input/output parameters).

Use of this operation SHALL invoke FHIR validation (structural validation), Ontology Server validation (semantic validation) and Business Rules/Genomic MDS validation (business validation) by default.

This Operation is intended to support two specific use cases:

  1. To allow validation of resources before submission/creation on the central order management broker, e.g. in the case of a client/front-end system for constructing an order form, allowing display of validation issues to the user.

  2. To allow downstream systems to validate or check test orders for warnings, e.g. omitted items marked as Mandatory in the Genomic Test Order MDS, allowing these systems to assess validity before injecting resources into their own pipelines.

Base

Validate a resource

Invocations

URL: [base]/$genomics-validate

This operation does NOT change content

Parameters (In)

NameCardinalityTypeBindingDocumentation
resource0..1Resource

Must be present unless the mode is "delete"

mode0..1codeResourceValidationMode (required)

Default is 'no action'; (e.g. general validation)

profile0..1uri

If this is nominated, then the resource is validated against this specific profile. If a profile is nominated, and the server cannot validate against the nominated profile, it SHALL return an error

graph0..1string

The GraphDefinition to validate the set of resources against, e.g. if used at the instance level for ServiceRequest, the genomic-test-order graphdefinition will pull all references required to compile a full genomic test order and validate the complete bundle of resources rather than the ServiceRequest in isolation. The graph parameter SHALL match the canonical URL segment used to invoke the graph, e.g. genomic-test-order. The GraphDefinition SHALL be accessible by the server, either as a resource on the server itself or retrievable via the canonical URL, e.g. through a public FHIR registry.

Return Values (Out)

NameCardinalityTypeDocumentation
return1..1OperationOutcome

If the operation outcome does not list any errors, and a mode was specified, then this is an indication that the operation would be expected to succeed (excepting for transactional integrity issues, see below)