# META-GLARE: A Computer-Interpretable Guideline System Shell
## 2 Background
### META-GLARE Architecture  
META-GLARE is based on the general TNM model. Specifically, it supports any CIG representation formalism based on the main features (1) and (2) below:  
1. CIGs are modeled by **hierarchical** graphs, composed of **nodes** and **arcs**. Notably, in META-GLARE, **any type** of **nodes** and **arcs** can be used, provided that
2. each **type** of node and arc is defined as **a list of attributes**. Additionally, META-GLARE does not impose any constraint on the types of attributes that can be introduced in a specific formalism. For the sake of clarity, however, it differentiates attributes into two main categories: the attributes that affect execution (e.g., decision attributes), termed **control** attributes, and the attributes that do not affect it, termed **non-control** attributes (e.g., textual attributes). Thus, the META-GLARE _interpreter_ (CIG acquisition and execution tools) only assumes that a CIG is a hierarchical graph, and it is _parametrized_ on the **types of nodes** and **arcs**, and on the **types of attributes**. Regarding execution, META-GLARE assumes that the execution of a CIG can be decomposed into the execution of its nodes (in the order defined by the control arcs) and arcs. In turn, each node/arc is executed by interpreting, in sequence, all the attributes describing it. To support such a general interpretation mechanism, _each attribute type must specify the methods used to acquire and visualize it_ and, in the case of control attributes, also _the methods used to execute it_. Such methods are then automatically applied when interpreting a specific CIG. For example, when acquiring a CIG in a given CIG formalism, the META-GLARE acquisition tool acquires the hierarchical graph representing it and applies the methods specified in each attribute type definition in order to acquire the attributes defining each node and arc in the graph. Notably, visualization, acquisition, and execution methods in META-GLARE can be parametrized along two different dimensions: tasks and user type. Such a feature supports task/user-dependent methods (e.g., patients may have different visualization of CIGs with respect to physicians). In the following, we assume the \"standard\" task (i.e., decision support) and the \"standard\" users (i.e., physicians). The \"testing-for-education\" task will be briefly considered in Experiment 3, Section 6. Figure 1 (adapted from [16]) represents a simplified version of the META-GLARE architecture (for a more extensive description, see [16]), with a specific focus only on the execution components. The definition of a new CIG formalism can be provided by system designers through the DEFINITION_EDITOR, which supports them in the definition of its (i) attribute types, (ii) node/arc types, and possibly (iii) graph constraints. The output of the DEFINITION_EDITOR is an internal XML representation, which is stored in the system's libraries. The HG_INTERPRETER (HG stands for \"hierarchical graph\") consists of two components, the HG_ACQUISITION module and the HG_EXECUTION module, and manages the generalities of TNM models. In particular, META-GLARE can deal with all the features which are common to all the formalisms. META-GLARE has been implemented by Java Applets. As a consequence, META-GLARE is a cross-platform application. It can be embedded into a web page and can be executed through web browsers without any installation phase. Libraries (see Figure 1) are implemented in PostgreSQL. In this paper, we focus on the META-GLARE _execution_ engine, i.e., on the description of the _control attribute types_ (i.e., the types of attributes that affect execution; see Section 3) and on the _HG_EXECUTION_ module (see Section 4). Notably, as graphically shown in Figure 2, META-GLARE supports three phases in the CIG system life cycle:  
1. the acquisition of a CIG formalism (see Figure 2A).