Binding Syntax
Binding Syntax
This project is a joint effort between Implementation and Conformance and vocabulary.
Scope
Define a way on how to formulate vocabulary constraints when writing implementation guides.
Requirements
- model and context binding
- dynamic/static stability
- identification of MIN/MAX/IGNORE value sets in Value Set Assertion
- allow for a separation of general statements and a realm specific binding
- publication of value set expansions (appendix)
Keywords
The keywords SHALL, SHOULD, MAY, NEED NOT, SHOULD NOT, and SHALL NOT in this document are to be interpreted as described in the HL7 Version 3 Publishing Facilitator's Guide. The keyword "SHALL" implies a lower cardinality of 1 but does not disallow NULL values. If NULL values are to be excluded, it will be via an additional explicit conformance statement.
BNF grammar
BindingSyntax := "A" <elementName> ["SHALL" | "SHOULD" | "MAY" ] "be present where the value of" <elementName> "is" [ <ValueSet> | <CodeX> ] "."
<ValueSet> := "selected from Value Set" <valueSetOID> <localValueSetName> [ "DYNAMIC" | "STATIC"] (valueSetEffectiveDate) "."
<CodeX> := [ <displayName> ] <codeSystemOID> [ <codeSystemName> ] "STATIC".
Examples
CONF-ex1: A code element SHALL be present where the value of @code is selected from Value Set 2.16.840.1.113883.19.3 LoincDocumentTypeCode DYNAMIC.
CONF-ex2: A code element SHALL be present where the value of @code is 34133-9 Summarization of episode note 2.16.840.1.113883.6.1 LOINC STATIC.
Open Issues
- conditions (true/false)
- combined constraints: to be concatenated via "and" (must be reflected in BNF grammar)