This wiki has undergone a migration to Confluence found Here
<meta name="googlebot" content="noindex">

Binding Syntax

From HL7Wiki
Revision as of 01:45, 14 September 2010 by Tklein (talk | contribs) (→‎Requirements)
Jump to navigation Jump to search

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)