a type of Atomic or Composed. The Atomic class
creates an atomic expression within the Rule, and it
can be a type of RefVariable or Constant. The
Composed class creates a composed expression within
the Rule, and it can be a type of LogicalOperator,
RelationalOperator or MathematicalOperator.
The RefVariable class represents an atomic ex-
pression associated with a predefined variable in the
VariableSection, and it is associated with a sin-
gle Variable. The Constant class represents an
atomic expression associated with a constant. The
LogicalOperator class describes which logical op-
erator (And, Or, Not, Not And, Not Or, Or Exclu-
sive or Not Or Exclusive) is used in a composed ex-
pression, and it is composed by up to two Atomic,
by up to two RelationalOperator, and by up to
two LogicalOperator. The RelationalOperator
class describes which relational operator (Equal To,
Different From, Greater Than, Less Than, Greater Or
Equal Than, or Less Or Equal Than) is used in a com-
posed expression, and it is composed by up to two
Atomic, and by up to two MathematicalOperator.
The MathematicalOperator class describes which
mathematical operator (Addition, Subtraction, Mul-
tiplication, Division, Exponentiation, Square Root,
Factorial, Logarithm or Other) is used in a composed
expression, and it is composed by up to two Atomic,
and by up to many MathematicalOperator.
The EvaluationSection class of the Figure 3
defines all possible evaluation models for a clini-
cal score specification, and it can have more than
one model, identifying each one of them. A
EvaluationSection is composed by at least one or
by many Evaluation and by a single Result, and
it is associated with a single RuleSection. The
Evaluation class describes an evaluation of a clin-
ical score specification according to a range of pos-
sible values for its result, assigning an identifier, no-
tification, and minimum and maximum score values,
and it is associated or not with a Result. The Result
class obtains the final result of a clinical score specifi-
cation, and it is associated with a single Evaluation.
5 VALIDATION
According to Yin (Yin, 2014), a case study can be a
single case to evaluate a research theory in order to
obtain results that can generalize or improve this the-
ory. To demonstrate the robustness and expressive-
ness of DSML4ClinicalScore, from those list of 89
clinical scores analyzed in the subsection 4.1, we de-
veloped eight concrete case studies based on clinical
scores that exploit different characteristics regarding
variables, calculation rules and evaluations. The list
of selected clinical scores is described in Table 2 and
all specifications are available on the MD+Calc plat-
form (Mdc, 2005).
Table 2: List of clinical scores used in the case studies.
Clinical Score Disease
4T Score Thrombocytopenia
CHADS
2
Score Stroke
CPIS Score Pneumonia
CURB-65 Score Pneumonia
HAS-BLED Score Bleeding risk
MEWS Score Degree of illness
TIMI Index Acute coronary
Well’s Criteria for PE Pulmonary Embolism
Considering the available space in this section we
will illustrated the clinical score shown in Subsec-
tion 2.1 as our case study. To create the model of
the chosen clinical score, we used EMF metamodel
validation tool.
Figure 4 illustrates the modeling of the MEWS
clinical score using the DSML4ClinicalScore lan-
guage in an UML class diagram. To start modeling
a clinical score the user declares a set of attributes
(id, description and type) which are part of the
Specification object. After that, the user can de-
fine the clinical score variables, rules for calculating
the score and evaluations.
Concerning to the declaration of the MEWS clin-
ical score variables, Figure 4 illustrates how its vari-
ables and attributes can be modeled according to the
DSML4ClinicalScore metamodel. This specifica-
tion contains five objects of the type Variable related
to systolic blood pressure, heart rate, respiratory rate,
temperature, and AVPU score.
About the definition of the score calculation rules,
Figure 4 demonstrates how rules of the MEWS spec-
ification are defined according to the proposed meta-
model. This specification has a total of twenty three
scoring rules, with five objects of the type Rule as-
sociated with systolic blood pressure, six associated
with heart rate, five associated with respiratory rate,
three associated with temperature, and four associ-
ated with AVPU score. Figure 4 shows in detail only
the rules related to systolic blood pressure and AVPU
score variables of this clinical score. For example, to
compose the rule with “id = SBP=[71-80]”, we per-
formed the following:
1. We first created a LogicalOperator of the type
And;
2. From that logical operator, we created two
RelationalOperator, one of the GreaterThan
ENASE 2019 - 14th International Conference on Evaluation of Novel Approaches to Software Engineering
110