Hi Georg,
The generic way to do this is to do what archetype tools do. An
archetype itself mentioned class and attribute names from a 'reference
model', but it doesn't know anything about any particular model. SUch
tools have to be told to load a representation of the model in order to
validate an archetype against it (i.e. in addition to validating correct
ADL structures etc). Today, every tool is doing this by loading the BMM
schemas of the reference models. Probably the Archie project
<https://github.com/openEHR/archie>contains the easiest to use code that
does this. (Note: the latest Marand ADL-designer, and LinkEHR, as well
as the original ADL Workbench all use BMM files these days; but Archie
is probably going to have the cleanest, most modern source code to work
with).
The general picture is the same for AQL queries: figure out from some
environment var, config setting or the RM names in the archetype ids in
the queries which BMM to use to do the validation. Once you have that it
is easy.
If you want to know more on Archie, ask here, the authors will no doubt
respond.
- thomas
On 03/05/2019 12:09, Georg Fette wrote:
Hello,
I have a question the is a bit related to the discussion about the
constraining of the ELEMENT type in the laboratory_analytes.
The current specification defines the field "ehr_status" of the class
EHR with the type OBJECT_REF. In the AQL specification there is an
example (chapter 3.7.2.3. NOT) that accesses this field with the
assumption that the field is of type EHR_STATUS.
I have written a type checker for AQL queries, so I am now stumbling
across queries that access fields of potential subclasses or derived
archetypes.
Does/should the specification generally allow such a thing ?
Greetings
Georg
--
Thomas Beale
Principal, Ars Semantica <http://www.arssemantica.com>
Consultant, ABD Project, Intermountain Healthcare
<https://intermountainhealthcare.org/>
Management Board, Specifications Program Lead, openEHR Foundation
<http://www.openehr.org>
Chartered IT Professional Fellow, BCS, British Computer Society
<http://www.bcs.org/category/6044>
Health IT blog <http://wolandscat.net/> | Culture blog
<http://wolandsothercat.net/> | The Objective Stance
<https://theobjectivestance.net/>
_______________________________________________
openEHR-technical mailing list
openEHR-technical@lists.openehr.org
http://lists.openehr.org/mailman/listinfo/openehr-technical_lists.openehr.org