0.0.1 - ci-build

TestScriptEngineIG - Local Development build (v0.0.1). See the Directory of published versions

Extension: AssertSubtest

Official URL: https://fhir-crucible.github.io/testscript-engine-ig/StructureDefinition/assert-subtest Version: 0.0.1
Active as of 2022-12-29 Computable Name: AssertSubtest

Execute a TestScript instance as a subtest

Context of Use

This extension may be used on the following element(s):

  • Element ID TestScript.setup.action.assert

Execution Semantics

This complex extension is used within a TestScript assert action. It tells the engine to determine whether the assertion passed based on whether the specified TestScript passes. It optionally includes variable bindings, tying the value of specific variables in the TestScript making the invocation to variables in the target TestScript. Once execution of the invoked TestScript completes, a TestReport instance is generated with a extension flagging that it was a subtest and another extension indicating that it needed to pass, and the engine continues with execution of the invoking TestScript.

Usage info

Usage:

Formal Views of Extension Content

Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.

This structure is derived from Extension

Summary

Mandatory: 2 elements (2 nested mandatory elements)
Fixed Value: 5 elements
Prohibited: 5 elements

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionExtension
... extension 1..*ExtensionExtension
... extension:testName 1..1ExtensionName of the TestScript to execute
.... extension 0..0
.... url 1..1uri"testName"
.... value[x] 0..1stringValue of extension
... extension:bindVariable 0..*ExtensionBinding of a source TestScript variable to a target TestScript variable
.... extension 2..*ExtensionExtension
.... extension:bindSource 1..1ExtensionExecuting TestScript variable name that provides the value
..... extension 0..0
..... url 1..1uri"bindSource"
..... value[x] 0..1stringValue of extension
.... extension:bindTarget 1..1ExtensionExecuted TestScript variable name that receives the value
..... extension 0..0
..... url 1..1uri"bindTarget"
..... value[x] 0..1stringValue of extension
.... url 1..1uri"bindVariable"
.... value[x] 0..0
... value[x] 0..0

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionExtension
... id 0..1stringUnique id for inter-element referencing
... Slices for extension 1..*ExtensionExtension
Slice: Unordered, Open by value:url
... extension:testName 1..1ExtensionName of the TestScript to execute
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..0
.... url 1..1uri"testName"
.... value[x] 0..1stringValue of extension
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 2..*ExtensionExtension
Slice: Unordered, Open by value:url
.... extension:bindSource 1..1ExtensionExecuting TestScript variable name that provides the value
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..0
..... url 1..1uri"bindSource"
..... value[x] 0..1stringValue of extension
.... extension:bindTarget 1..1ExtensionExecuted TestScript variable name that receives the value
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..0
..... url 1..1uri"bindTarget"
..... value[x] 0..1stringValue of extension
.... url 1..1uri"bindVariable"
... url 1..1uri"https://fhir-crucible.github.io/testscript-engine-ig/StructureDefinition/assert-subtest"

doco Documentation for this format

This structure is derived from Extension

Summary

Mandatory: 2 elements (2 nested mandatory elements)
Fixed Value: 5 elements
Prohibited: 5 elements

Differential View

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionExtension
... extension 1..*ExtensionExtension
... extension:testName 1..1ExtensionName of the TestScript to execute
.... extension 0..0
.... url 1..1uri"testName"
.... value[x] 0..1stringValue of extension
... extension:bindVariable 0..*ExtensionBinding of a source TestScript variable to a target TestScript variable
.... extension 2..*ExtensionExtension
.... extension:bindSource 1..1ExtensionExecuting TestScript variable name that provides the value
..... extension 0..0
..... url 1..1uri"bindSource"
..... value[x] 0..1stringValue of extension
.... extension:bindTarget 1..1ExtensionExecuted TestScript variable name that receives the value
..... extension 0..0
..... url 1..1uri"bindTarget"
..... value[x] 0..1stringValue of extension
.... url 1..1uri"bindVariable"
.... value[x] 0..0
... value[x] 0..0

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension 0..*ExtensionExtension
... id 0..1stringUnique id for inter-element referencing
... Slices for extension 1..*ExtensionExtension
Slice: Unordered, Open by value:url
... extension:testName 1..1ExtensionName of the TestScript to execute
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..0
.... url 1..1uri"testName"
.... value[x] 0..1stringValue of extension
.... id 0..1stringUnique id for inter-element referencing
.... Slices for extension 2..*ExtensionExtension
Slice: Unordered, Open by value:url
.... extension:bindSource 1..1ExtensionExecuting TestScript variable name that provides the value
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..0
..... url 1..1uri"bindSource"
..... value[x] 0..1stringValue of extension
.... extension:bindTarget 1..1ExtensionExecuted TestScript variable name that receives the value
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..0
..... url 1..1uri"bindTarget"
..... value[x] 0..1stringValue of extension
.... url 1..1uri"bindVariable"
... url 1..1uri"https://fhir-crucible.github.io/testscript-engine-ig/StructureDefinition/assert-subtest"

doco Documentation for this format

 

Other representations of profile: CSV, Excel, Schematron

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()