Publish-box (todo)
FHIR Infrastructure Work Group | Maturity Level: N/A | Standards Status: Informative | Compartments: No defined compartments |
ShEx statement for testplan
PREFIX fhir: <http://hl7.org/fhir/> PREFIX fhirvs: <http://hl7.org/fhir/ValueSet/> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> IMPORT <uri.shex> IMPORT <code.shex> IMPORT <string.shex> IMPORT <Coding.shex> IMPORT <boolean.shex> IMPORT <integer.shex> IMPORT <dateTime.shex> IMPORT <markdown.shex> IMPORT <Reference.shex> IMPORT <Identifier.shex> IMPORT <UsageContext.shex> IMPORT <ContactDetail.shex> IMPORT <DomainResource.shex> IMPORT <CodeableConcept.shex> IMPORT <BackboneElement.shex> IMPORT <CodeableReference.shex> start=@<TestPlan> AND {fhir:nodeRole [fhir:treeRoot]} # Description of intented testing <TestPlan> EXTENDS @<DomainResource> CLOSED { a [fhir:TestPlan]?; fhir:nodeRole [fhir:treeRoot]?; fhir:url @<uri>?; # Canonical identifier for this test # plan, represented as a URI # (globally unique) fhir:identifier @<OneOrMore_Identifier>?; # Business identifier identifier for # the test plan fhir:version @<string>?; # Business version of the test plan fhir:versionAlgorithm @<string> OR @<Coding> ?; # How to compare versions fhir:name @<string>?; # Name for this test plan (computer # friendly) fhir:title @<string>?; # Name for this test plan (human # friendly) fhir:status @<code> AND {fhir:v @fhirvs:publication-status}; # draft | active | retired | unknown fhir:experimental @<boolean>?; # For testing purposes, not real # usage fhir:date @<dateTime>?; # Date last changed fhir:publisher @<string>?; # Name of the publisher/steward # (organization or individual) fhir:contact @<OneOrMore_ContactDetail>?; # Contact details for the publisher fhir:description @<markdown>?; # Natural language description of # the test plan fhir:useContext @<OneOrMore_UsageContext>?; # The context that the content is # intended to support fhir:jurisdiction @<OneOrMore_CodeableConcept>?; # Intended jurisdiction where the # test plan applies (if applicable) fhir:purpose @<markdown>?; # Why this test plan is defined fhir:copyright @<markdown>?; # Use and/or publishing restrictions fhir:copyrightLabel @<string>?; # Copyright holder and year(s) fhir:category @<OneOrMore_CodeableConcept>?; # The category of the Test Plan - # can be acceptance, unit, # performance fhir:scope @<OneOrMore_Reference>?; # What is being tested with this # Test Plan - a conformance # resource, or narrative criteria, # or an external reference fhir:testTools @<markdown>?; # A description of test tools to be # used in the test plan - narrative # for now fhir:dependency @<OneOrMore_TestPlan.dependency>?; # The required criteria to execute # the test plan - e.g. # preconditions, previous tests fhir:exitCriteria @<markdown>?; # The threshold or criteria for the # test plan to be considered # successfully executed - narrative fhir:testCase @<OneOrMore_TestPlan.testCase>?; # The test cases that constitute # this plan } # The test cases in a structured language e.g. gherkin, Postman, or FHIR TestScript <TestPlan.testCase.testRun.script> EXTENDS @<BackboneElement> CLOSED { fhir:language @<CodeableConcept>?; # The language for the test cases # e.g. 'gherkin', 'testscript' fhir:source @<string> OR @<Reference> ?; # The actual content of the cases - # references to TestScripts or # externally defined content } # The test cases that constitute this plan <TestPlan.testCase> EXTENDS @<BackboneElement> CLOSED { fhir:sequence @<integer>?; # Sequence of test case in the test # plan fhir:scope @<OneOrMore_Reference>?; # The scope or artifact covered by # the case fhir:dependency @<OneOrMore_TestPlan.testCase.dependency>?; # Required criteria to execute the # test case fhir:testRun @<OneOrMore_TestPlan.testCase.testRun>?; # The actual test to be executed fhir:testData @<OneOrMore_TestPlan.testCase.testData>?; # The test data used in the test case fhir:assertion @<OneOrMore_TestPlan.testCase.assertion>?; # Test assertions or expectations } # The test data used in the test case <TestPlan.testCase.testData> EXTENDS @<BackboneElement> CLOSED { fhir:type @<Coding>; # The type of test data description, # e.g. 'synthea' fhir:content @<Reference>?; # The actual test resources when # they exist fhir:source @<string> OR @<Reference> ?; # Pointer to a definition of test # resources - narrative or # structured e.g. synthetic data # generation, etc } # The required criteria to execute the test plan - e.g. preconditions, previous tests <TestPlan.dependency> EXTENDS @<BackboneElement> CLOSED { fhir:description @<markdown>?; # Description of the dependency # criterium fhir:predecessor @<Reference>?; # Link to predecessor test plans } # Required criteria to execute the test case <TestPlan.testCase.dependency> EXTENDS @<BackboneElement> CLOSED { fhir:description @<markdown>?; # Description of the criteria fhir:predecessor @<Reference>?; # Link to predecessor test plans } # The actual test to be executed <TestPlan.testCase.testRun> EXTENDS @<BackboneElement> CLOSED { fhir:narrative @<markdown>?; # The narrative description of the # tests fhir:script @<TestPlan.testCase.testRun.script>?; # The test cases in a structured # language e.g. gherkin, Postman, or # FHIR TestScript } # Test assertions or expectations <TestPlan.testCase.assertion> EXTENDS @<BackboneElement> CLOSED { fhir:type @<OneOrMore_CodeableConcept>?; # Assertion type - for example # 'informative' or 'required' fhir:object @<OneOrMore_CodeableReference>?; # The focus or object of the # assertion fhir:result @<OneOrMore_CodeableReference>?; # The actual result assertion } #---------------------- Cardinality Types (OneOrMore) ------------------- <OneOrMore_Identifier> CLOSED { rdf:first @<Identifier> ; rdf:rest [rdf:nil] OR @<OneOrMore_Identifier> } <OneOrMore_ContactDetail> CLOSED { rdf:first @<ContactDetail> ; rdf:rest [rdf:nil] OR @<OneOrMore_ContactDetail> } <OneOrMore_UsageContext> CLOSED { rdf:first @<UsageContext> ; rdf:rest [rdf:nil] OR @<OneOrMore_UsageContext> } <OneOrMore_CodeableConcept> CLOSED { rdf:first @<CodeableConcept> ; rdf:rest [rdf:nil] OR @<OneOrMore_CodeableConcept> } <OneOrMore_Reference> CLOSED { rdf:first @<Reference> ; rdf:rest [rdf:nil] OR @<OneOrMore_Reference> } <OneOrMore_TestPlan.dependency> CLOSED { rdf:first @<TestPlan.dependency> ; rdf:rest [rdf:nil] OR @<OneOrMore_TestPlan.dependency> } <OneOrMore_TestPlan.testCase> CLOSED { rdf:first @<TestPlan.testCase> ; rdf:rest [rdf:nil] OR @<OneOrMore_TestPlan.testCase> } <OneOrMore_TestPlan.testCase.dependency> CLOSED { rdf:first @<TestPlan.testCase.dependency> ; rdf:rest [rdf:nil] OR @<OneOrMore_TestPlan.testCase.dependency> } <OneOrMore_TestPlan.testCase.testRun> CLOSED { rdf:first @<TestPlan.testCase.testRun> ; rdf:rest [rdf:nil] OR @<OneOrMore_TestPlan.testCase.testRun> } <OneOrMore_TestPlan.testCase.testData> CLOSED { rdf:first @<TestPlan.testCase.testData> ; rdf:rest [rdf:nil] OR @<OneOrMore_TestPlan.testCase.testData> } <OneOrMore_TestPlan.testCase.assertion> CLOSED { rdf:first @<TestPlan.testCase.assertion> ; rdf:rest [rdf:nil] OR @<OneOrMore_TestPlan.testCase.assertion> } <OneOrMore_CodeableReference> CLOSED { rdf:first @<CodeableReference> ; rdf:rest [rdf:nil] OR @<OneOrMore_CodeableReference> } #---------------------- Value Sets ------------------------ # The lifecycle status of an artifact. fhirvs:publication-status ["draft" "active" "retired" "unknown"]
Usage note: every effort has been made to ensure that the ShEx files are correct and useful, but they are not a normative part of the specification.
FHIR ®© HL7.org 2011+. FHIR R5 hl7.fhir.core#5.0.0 generated on Sun, Mar 26, 2023 15:26+1100.
Links: Search |
Version History |
Contents |
Glossary |
QA |
Compare to R4 |
Compare to R4B |
|
Propose a change