<gmt-macros  lang-id="Asbru7.3"  description="Asbru GMT Macros file">
<macros-def>
<macros-group  description="Plan macros">
<macro  name="Plan"  description="main element plan (used in plan-group)"  standalone="true">
<element-ref  name="plan">
<attribute-ref  name="name"  value="%INPUT%"/>
<element-ref  name="conditions"/>
<element-ref  name="plan-body">
<element-ref  name="to-be-defined"/>
</element-ref>
</element-ref>
</macro>
<macro  name="Intentions"  description="intentions with intention (used in plan)"  standalone="false">
<element-ref  name="intentions">
<macro-include  name="Intention"/>
</element-ref>
</macro>
<macro  name="Intention"  description="intention (used in intentions)"  standalone="false">
<element-ref  name="intention">
<attribute-ref  name="type"  value="%INPUT%"/>
<attribute-ref  name="verb"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Refer-To"  description="refer-to (used in plan-body, any temporal pattern, intentions, ...)"  standalone="true">
<element-ref  name="refer-to">
<attribute-ref  name="plan-name"  value="%INPUT%"/>
<attribute-ref  name="label"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Abort-Condition_with_Comparison"  standalone="false"  description="abort-condition with Simple-Condition / Comparison (used in conditions)">
<element-ref  name="abort-condition">
<macro-include  name="Simple-Condition_Comparison"/>
</element-ref>
</macro>
<macro  name="Filter-Precondition_confirmation-required"  description="filter-precondition with confirmation-required=yes (used in conditions) - former activate-mode"  standalone="true">
<element-ref  name="filter-precondition">
<attribute-ref  name="confirmation-required"  value="yes"/>
<element-ref  name="none"/>
</element-ref>
</macro>
<macros-group  description="Plan-Body">
<macro  name="Plan-Body_user-performed"  description="plan-body with user-performed (used in plan)"  standalone="true">
<element-ref  name="plan-body">
<element-ref  name="user-performed"/>
</element-ref>
</macro>
<macro  name="Plan-Body_plan-activation"  description="plan-body with plan-activation (used in plan)"  standalone="true">
<element-ref  name="plan-body">
<element-ref  name="plan-activation">
<element-ref  name="plan-schema">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</element-ref>
</element-ref>
</macro>
<macro  name="Plan-Body_subplans_plan-activation"  description="plan-body with subplans (used in plan)"  standalone="true">
<element-ref  name="plan-body">
<macro-include  name="Subplans_plan-activation"/>
</element-ref>
</macro>
<macro  name="Plan-Body_Cyclical-Plan"  description="plan-body with cyclical-plan (used in plan)"  standalone="true">
<element-ref  name="plan-body">
<macro-include  name="Cyclical-Plan"/>
</element-ref>
</macro>
<macros-group  description="subplans">
<macro  name="Subplans"  standalone="false"  description="subplans with wait-for / all (used in plan-body)">
<element-ref  name="subplans">
<attribute-ref  name="type"  value="%INPUT%sequentially"/>
<macro-include  name="Wait-For_all"/>
</element-ref>
</macro>
<macro  name="Subplans_plan-activation"  description="subplans with wait-for / all and 2 plan-activation (used in plan-body)"  standalone="true">
<element-ref  name="subplans">
<attribute-ref  name="type"  value="%INPUT%sequentially"/>
<macro-include  name="Wait-For_all"/>
<macro-include  name="Plan-Activation"/>
<macro-include  name="Plan-Activation"/>
</element-ref>
</macro>
<macro  name="Subplans_ask"  description="subplans with wait-for / all and 2 ask (used in plan-body)"  standalone="true">
<element-ref  name="subplans">
<attribute-ref  name="type"  value="%INPUT%sequentially"/>
<macro-include  name="Wait-For_all"/>
<macro-include  name="Ask"/>
<macro-include  name="Ask"/>
</element-ref>
</macro>
<macros-group  description="Wait-For">
<macro  name="Wait-For_all"  standalone="true">
<element-ref  name="wait-for">
<element-ref  name="all"/>
</element-ref>
</macro>
<macro  name="Wait-For_one"  standalone="true">
<element-ref  name="wait-for">
<element-ref  name="one"/>
</element-ref>
</macro>
<macro  name="Wait-For_none"  standalone="true">
<element-ref  name="wait-for">
<element-ref  name="none"/>
</element-ref>
</macro>
<macro  name="Wait-For_plan"  standalone="true">
<element-ref  name="wait-for">
<element-ref  name="static-plan-pointer">
<attribute-ref  name="plan-name"  value="%INPUT%"/>
</element-ref>
</element-ref>
</macro>
<macro  name="Wait-For_plans"  standalone="true">
<element-ref  name="wait-for">
<element-ref  name="wait-for-group">
<attribute-ref  name="type"  value="%INPUT%or"/>
<element-ref  name="static-plan-pointer">
<attribute-ref  name="plan-name"  value="%INPUT%"/>
</element-ref>
<element-ref  name="static-plan-pointer">
<attribute-ref  name="plan-name"  value="%INPUT%"/>
</element-ref>
</element-ref>
</element-ref>
</macro>
</macros-group>
</macros-group>
<macros-group  description="plan-body_stuff">
<macro  name="Cyclical-Plan"  standalone="true">
<element-ref  name="cyclical-plan">
<element-ref  name="start-time">
<element-ref  name="cyclical-time-annotation">
<element-ref  name="time-range">
<element-ref  name="not-yet-defined"/>
</element-ref>
<element-ref  name="set-of-cyclical-time-points">
<element-ref  name="time-point">
<element-ref  name="numerical-constant">
<attribute-ref  name="scale"  value="date"/>
<attribute-ref  name="unit"  value="d"/>
<attribute-ref  name="value"  value="%INPUT%0"/>
</element-ref>
</element-ref>
<element-ref  name="offset">
<element-ref  name="numerical-constant">
<attribute-ref  name="scale"  value="time"/>
<attribute-ref  name="unit"  value="h"/>
<attribute-ref  name="value"  value="%INPUT%0"/>
</element-ref>
</element-ref>
<element-ref  name="frequency">
<element-ref  name="numerical-constant">
<attribute-ref  name="scale"  value="time"/>
<attribute-ref  name="unit"  value="h"/>
<attribute-ref  name="value"  value="%INPUT%1"/>
</element-ref>
</element-ref>
</element-ref>
</element-ref>
</element-ref>
<element-ref  name="cyclical-plan-body">
<element-ref  name="to-be-defined"/>
</element-ref>
<element-ref  name="repeat-specification">
<element-ref  name="retry-delay">
<element-ref  name="minimum">
<element-ref  name="numerical-constant">
<attribute-ref  name="scale"  value="time"/>
<attribute-ref  name="unit"  value="%INPUT%h"/>
<attribute-ref  name="value"  value="%INPUT%1"/>
</element-ref>
</element-ref>
<element-ref  name="maximum">
<element-ref  name="numerical-constant">
<attribute-ref  name="scale"  value="time"/>
<attribute-ref  name="unit"  value="%INPUT%h"/>
<attribute-ref  name="value"  value="%INPUT%2"/>
</element-ref>
</element-ref>
</element-ref>
</element-ref>
</element-ref>
</macro>
<macro  name="Ask"  description="ask with parameter-ref and time-out / now"  standalone="true">
<element-ref  name="ask">
<element-ref  name="parameter-ref">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
<element-ref  name="time-out">
<element-ref  name="now"/>
</element-ref>
</element-ref>
</macro>
<macro  name="Plan-Activation"  description="plan-activation with plan-schema (used in plan-body and subplans)"  standalone="true">
<element-ref  name="plan-activation">
<element-ref  name="plan-schema">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</element-ref>
</macro>
<macro  name="Variable-Assignment_constant"  description="variable-assignment with qualitative-constant (used in plan-body and subplans)"  standalone="true">
<element-ref  name="variable-assignment">
<attribute-ref  name="variable"  value="%INPUT%"/>
<element-ref  name="qualitative-constant">
<attribute-ref  name="value"  value="%INPUT%"/>
</element-ref>
</element-ref>
</macro>
<macro  name="If-then"  description="if-then-else with empty simple-condition and then-branch (used in plan-body and subplans)"  standalone="false">
<element-ref  name="if-then-else">
<element-ref  name="simple-condition"/>
<element-ref  name="then-branch"/>
</element-ref>
</macro>
<macro  name="If-then-else"  description="if-then-else with empty simple-condition, then-branch and else-branch (used in plan-body and subplans)"  standalone="false">
<element-ref  name="if-then-else">
<element-ref  name="simple-condition"/>
<element-ref  name="then-branch"/>
<element-ref  name="else-branch"/>
</element-ref>
</macro>
</macros-group>
</macros-group>
<macros-group  description="Plan Stuff">
<macros-group  description="temporal patterns">
<macro  name="Simple-Condition_Comparison"  standalone="false"  description="simple-condition with comparison (used in any temporal pattern)">
<element-ref  name="simple-condition">
<macro-include  name="Comparison"/>
</element-ref>
</macro>
<macro  name="Simple-Condition_Comparison-parameter_constant"  description="simple-condition with comparison between parameter and constant (used in any temporal pattern)"  standalone="true">
<element-ref  name="simple-condition">
<macro-include  name="Comparison-parameter_constant"/>
</element-ref>
</macro>
<macro  name="Simple-Condition_variables-known"  description="simple-condition with simple-condition-combination / is-known-variable (used in any temporal pattern)"  standalone="true">
<element-ref  name="simple-condition">
<element-ref  name="simple-condition-combination">
<attribute-ref  name="type"  value="%INPUT%and"/>
<macro-include  name="Variable-Known"/>
<macro-include  name="Variable-Known"/>
</element-ref>
</element-ref>
</macro>
<macros-group  description="Simple Condition Stuff">
<macro  name="Simple-Condition-Combination"  standalone="false">
<element-ref  name="simple-condition-combination">
<attribute-ref  name="type"  value="%INPUT%and"/>
</element-ref>
</macro>
<macro  name="Comparison"  standalone="false"  description="comparison with left-hand-side and right-hand-side (used in simple-condition)">
<element-ref  name="comparison">
<attribute-ref  name="type"  value="%INPUT%equal"/>
<element-ref  name="left-hand-side"/>
<element-ref  name="right-hand-side"/>
</element-ref>
</macro>
<macro  name="Comparison-parameter_constant"  standalone="true">
<element-ref  name="comparison">
<attribute-ref  name="type"  value="%INPUT%equal"/>
<element-ref  name="left-hand-side">
<element-ref  name="parameter-ref">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</element-ref>
<element-ref  name="right-hand-side">
<element-ref  name="constant-ref">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</element-ref>
</element-ref>
</macro>
<macro  name="Variable-Known"  description="is-known-variable (used in simple-condition)"  standalone="true">
<element-ref  name="is-known-variable">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</macro>
</macros-group>
<macro  name="Constraint-Combination"  standalone="false">
<element-ref  name="constraint-combination">
<attribute-ref  name="type"  value="%INPUT%and"/>
</element-ref>
</macro>
<macro  name="Parameter-Proposition_is-known_any_now"  description="parameter-proposition with is-known-parameter, context / any and time-annotation / now (used in any temporal pattern)"  standalone="true">
<element-ref  name="parameter-proposition">
<attribute-ref  name="parameter-name"  value="%INPUT%"/>
<element-ref  name="is-known-parameter"/>
<element-ref  name="context">
<element-ref  name="any"/>
</element-ref>
<element-ref  name="time-annotation">
<element-ref  name="now"/>
</element-ref>
</element-ref>
</macro>
<macro  name="Parameter-Proposition_constant_any_now"  description="parameter-proposition with value-description / qualitative-constant, context / any and time-annotation / now (used in any temporal pattern)"  standalone="true">
<element-ref  name="parameter-proposition">
<attribute-ref  name="parameter-name"  value="%INPUT%"/>
<element-ref  name="value-description">
<attribute-ref  name="type"  value="%INPUT%equal"/>
<element-ref  name="qualitative-constant">
<attribute-ref  name="value"  value="%INPUT%"/>
</element-ref>
</element-ref>
<element-ref  name="context">
<element-ref  name="any"/>
</element-ref>
<element-ref  name="time-annotation">
<element-ref  name="now"/>
</element-ref>
</element-ref>
</macro>
</macros-group>
<macro  name="Plan-Group"  description="group of plan's (used in plans)"  standalone="true">
<element-ref  name="plan-group">
<attribute-ref  name="title"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Derived-From"  standalone="true">
<element-ref  name="derived-from">
<attribute-ref  name="plan-name"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Refers-To"  description="refers-to (used in plan)"  standalone="true">
<element-ref  name="refers-to">
<attribute-ref  name="plan-name"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Explanation"  standalone="true">
<element-ref  name="explanation">
<attribute-ref  name="text"  value="%INPUT%"/>
</element-ref>
</macro>
</macros-group>
</macros-group>
<macros-group  description="domain macros">
<macro  name="Domain"  description="domain (used in domain-defs)"  standalone="true">
<element-ref  name="domain">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Use-Domain"  description="use-domain (used in domain-defs)"  standalone="true">
<element-ref  name="use-domain">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Domain-Definition"  description="domain-defs with domain(unit-def, patient-record-def,parameter-group,variable-def, constant-def) (used in plan-library)"  standalone="true">
<element-ref  name="domain-defs">
<element-ref  name="domain">
<attribute-ref  name="name"  value="%INPUT%"/>
<macro-include  name="Unit-Def"/>
<macro-include  name="Qualitative-Scale-Def"/>
<macro-include  name="Patient-Record-Def"/>
<macro-include  name="Parameter-Group"/>
<macro-include  name="Variable-Def"/>
<macro-include  name="Constant-Def"/>
</element-ref>
</element-ref>
</macro>
<macros-group  description="Parameter Definitions">
<macro  name="Parameter-Group"  description="parameter-group (used in domain)"  standalone="false">
<element-ref  name="parameter-group">
<attribute-ref  name="title"  value="%INPUT%"/>
<macro-include  name="Parameter-Def"/>
</element-ref>
</macro>
<macro  name="Parameter-Def"  description="parameter-def (used in parameter-group)"  standalone="false">
<element-ref  name="parameter-def">
<attribute-ref  name="name"  value="%INPUT%"/>
<attribute-ref  name="type"  value="%INPUT%"/>
</element-ref>
</macro>
<macros-group  description="Raw Data Definitions">
<macro  name="Raw-Data-Def"  description="raw-data-def with mode attribute(used in parameter-def)"  standalone="true">
<element-ref  name="raw-data-def">
<attribute-ref  name="mode"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Raw-Data-Def_numerical"  description="raw-data-def with mode and unit attributes (used in parameter-def)"  standalone="true">
<element-ref  name="raw-data-def">
<attribute-ref  name="mode"  value="%INPUT%"/>
<attribute-ref  name="unit"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Raw-data-def_manual"  description="raw-data-def with mode=manual (used in parameter-def)"  standalone="true">
<element-ref  name="raw-data-def">
<attribute-ref  name="mode"  value="manual"/>
<attribute-ref  name="user-text"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Raw-data-def_manual-numerical"  description="raw-data-def with mode=manual and unit input (used in parameter-def)"  standalone="true">
<element-ref  name="raw-data-def">
<attribute-ref  name="mode"  value="manual"/>
<attribute-ref  name="user-text"  value="%INPUT%"/>
<attribute-ref  name="unit"  value="%INPUT%"/>
</element-ref>
</macro>
</macros-group>
<macros-group  description="Qualitative Parameter Definitions">
<macro  name="Qualitative-Parameter-Def"  description="qualitative-parameter-def (used in parameter-def)"  standalone="false">
<element-ref  name="qualitative-parameter-def">
<macro-include  name="Limits_any-context"/>
<element-ref  name="parameter-ref">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</element-ref>
</macro>
<macro  name="Limits_any-context"  description="limits with any context (used in qualitative-parameter-def)"  standalone="true">
<element-ref  name="limits">
<element-ref  name="context">
<element-ref  name="any"/>
</element-ref>
<macro-include  name="Limit-Entry"/>
</element-ref>
</macro>
<macro  name="Limits_with-complex-context"  description="limits with one-of as context (used in qualitative-parameter-def)"  standalone="true">
<element-ref  name="limits">
<element-ref  name="context">
<macro-include  name="One-Of"/>
</element-ref>
<macro-include  name="Limit-Entry"/>
</element-ref>
</macro>
<macro  name="Limit-Entry"  description="limit-entry with link (used in limits)"  standalone="true">
<element-ref  name="limit-entry">
<attribute-ref  name="value"  value="%TEXT%"/>
<GMT-LINK/>
</element-ref>
</macro>
<macros-group  description="Context">
<macro  name="Any_Context"  description="context with any (used in limits)"  standalone="true">
<element-ref  name="context">
<element-ref  name="any"/>
</element-ref>
</macro>
<macro  name="One-Of"  description="one-of (used in context)"  standalone="true">
<element-ref  name="one-of">
<attribute-ref  name="name"  value="%INPUT%"/>
<macro-include  name="Value-Ref"/>
</element-ref>
</macro>
<macro  name="Value-Ref"  description="value-ref (used in one-of)"  standalone="true">
<element-ref  name="value-ref">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</macro>
</macros-group>
</macros-group>
<macro  name="Change-Def"  description="change-def with constant interval and parameter-ref (used in parameter-def)"  standalone="true">
<element-ref  name="change-def">
<element-ref  name="interval">
<element-ref  name="numerical-constant">
<attribute-ref  name="scale"  value="%INPUT%"/>
<attribute-ref  name="value"  value="%INPUT%"/>
</element-ref>
</element-ref>
<element-ref  name="parameter-ref">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</element-ref>
</macro>
</macros-group>
</macros-group>
<macros-group  description="Definitions for Plan, Library and Domain">
<macro  name="Record-Def"  description="Record-Definition with scalar-def"  standalone="true">
<element-ref  name="record-def">
<macro-include  name="Field-Def"/>
</element-ref>
</macro>
<macro  name="Field-Def"  standalone="true">
<element-ref  name="field-def">
<attribute-ref  name="name"  value="%INPUT%"/>
<element-ref  name="scalar-def">
<attribute-ref  name="type"  value="%INPUT%"/>
</element-ref>
</element-ref>
</macro>
<macro  name="Patient-Record-Def"  description="patient-record-def (used in domain and library-defs)"  standalone="true">
<element-ref  name="patient-record-def">
<attribute-ref  name="name"  value="%INPUT%"/>
<element-ref  name="primary-key">
<attribute-ref  name="name"  value="name"/>
</element-ref>
<macro-include  name="Record-Def"/>
</element-ref>
</macro>
<macro  name="Qualitative-Scale-Def"  description="qualitative-scale-def with qualitative-entry (used in domain and library-defs)"  standalone="true">
<element-ref  name="qualitative-scale-def">
<attribute-ref  name="name"  value="%INPUT%"/>
<element-ref  name="qualitative-entry">
<attribute-ref  name="entry"  value="%INPUT%"/>
</element-ref>
</element-ref>
</macro>
<macro  name="Qualitative-Entry"  description="another qualitative-entry (used in qualitative-scale-def)"  standalone="true">
<element-ref  name="qualitative-entry">
<attribute-ref  name="entry"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Numerical-Scale-Def"  description="numerical-scale-def with qualitative-entry (used in domain and library-defs)"  standalone="true">
<element-ref  name="numerical-scale-def">
<attribute-ref  name="name"  value="%INPUT%"/>
<attribute-ref  name="unit-class"  value="%INPUT%"/>
<macro-include  name="Unit-Entry"/>
</element-ref>
</macro>
<macro  name="Unit-Entry"  description="unit-entry with name attribute (used in numerical-scale-def)"  standalone="true">
<element-ref  name="unit-entry">
<attribute-ref  name="factor"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Unit-Def"  description="unit definition (used in domain and library-defs)"  standalone="true">
<element-ref  name="unit-def">
<attribute-ref  name="name"  value="%INPUT%"/>
<attribute-ref  name="default-unit"  value="%INPUT%"/>
<element-ref  name="compound-def">
<element-ref  name="numerator">
<element-ref  name="unit-class">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</element-ref>
<element-ref  name="denominator">
<element-ref  name="unit-class">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</element-ref>
</element-ref>
</element-ref>
</macro>
<macros-group  description="predefined">
<macro  name="Unit-Def_mgdl"  description="predefined unit "mgdl" (used in domain and library-defs)"  standalone="true">
<element-ref  name="unit-def">
<attribute-ref  name="name"  value="mgdl"/>
<attribute-ref  name="default-unit"  value="mg/dl"/>
<element-ref  name="compound-def">
<element-ref  name="numerator">
<element-ref  name="unit-class">
<attribute-ref  name="name"  value="mass"/>
</element-ref>
</element-ref>
<element-ref  name="denominator">
<element-ref  name="unit-class">
<attribute-ref  name="name"  value="volume"/>
</element-ref>
</element-ref>
</element-ref>
</element-ref>
</macro>
</macros-group>
<macro  name="Variable-Def"  description="Variable-Definition used in value-defs(plan), domain or library-defs"  standalone="false">
<element-ref  name="variable-def">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Constant-Def"  description="Constant-Definition used in value-defs(plan), domain or library-defs"  standalone="false">
<element-ref  name="constant-def">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Constant-Def_with-numerical-scalar-def"  description="Constant-Definition used in value-defs(plan), domain or library-defs"  standalone="false">
<element-ref  name="constant-def">
<attribute-ref  name="name"  value="%INPUT%"/>
<element-ref  name="scalar-def">
<attribute-ref  name="type"  value="%INPUT%"/>
<element-ref  name="initial-value">
<element-ref  name="numerical-constant">
<attribute-ref  name="value"  value="%INPUT%0"/>
</element-ref>
</element-ref>
</element-ref>
</element-ref>
</macro>
<macro  name="Iterator-Def"  description="Iterator-Definition used in value-defs(plan), domain or library-defs"  standalone="false">
<element-ref  name="iterator-def">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Iterator-Def_on-variable"  description="Iterator-Definition used in value-defs(plan), domain or library-defs"  standalone="true">
<element-ref  name="iterator-def">
<attribute-ref  name="name"  value="%INPUT%"/>
<element-ref  name="variable-ref">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</element-ref>
</macro>
</macros-group>
<macros-group  description="Pattern">
<macros-group  description="Tables">
<macros-group  description="Qualitative Parameter Definitions">
<macro  name="Param-Def-Table"  standalone="false"  description="empty "Paramter-Defintion" table">
<element-ref  name="parameter-def">
<element-ref  name="qualitative-parameter-def">
<element-ref  name="parameter-ref">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</element-ref>
</element-ref>
</macro>
<macro  name="Param-Def-Row"  standalone="true">
<element-ref  name="limits">
<attribute-ref  name="unit"  value="%INPUT%"/>
<element-ref  name="context">
<element-ref  name="one-of">
<attribute-ref  name="name"  value="%INPUT%"/>
<element-ref  name="value-ref">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</element-ref>
</element-ref>
</element-ref>
</macro>
<macro  name="Param-Def-Column"  description="limit-entry with link"  standalone="true">
<element-ref  name="limit-entry">
<attribute-ref  name="value"  value="%TEXT%"/>
<GMT-LINK/>
</element-ref>
</macro>
</macros-group>
</macros-group>
</macros-group>
<macros-group  description="misc">
<macros-group  description="Expressions">
<macro  name="Numerical-Constant"  standalone="true">
<element-ref  name="numerical-constant">
<attribute-ref  name="value"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Numerical-Constant_with_unit_and_scale"  standalone="true">
<element-ref  name="numerical-constant">
<attribute-ref  name="value"  value="%INPUT%"/>
<attribute-ref  name="unit"  value="%INPUT%"/>
<attribute-ref  name="scale"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Qualitative-Constant"  standalone="true">
<element-ref  name="qualitative-constant">
<attribute-ref  name="value"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="String-Constant"  standalone="true">
<element-ref  name="string-constant">
<attribute-ref  name="value"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Constant-Ref"  standalone="true">
<element-ref  name="constant-ref">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Variable-Ref"  standalone="true">
<element-ref  name="variable-ref">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Argument-Ref"  standalone="true">
<element-ref  name="argument-ref">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Parameter-Ref"  standalone="true">
<element-ref  name="parameter-ref">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Get-Position"  standalone="true">
<element-ref  name="get-position">
<attribute-ref  name="iterator"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Operation"  description="needs one ore more expressions"  standalone="false">
<element-ref  name="operation">
<attribute-ref  name="operator"  value="%INPUT%add"/>
</element-ref>
</macro>
<macro  name="Function-Call"  standalone="true">
<element-ref  name="function-call">
<attribute-ref  name="name"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Plan-state-Transition_self"  description="plan-state-transition with self"  standalone="true">
<element-ref  name="plan-state-transition">
<attribute-ref  name="state"  value="%INPUT%"/>
<attribute-ref  name="instance-type"  value="%INPUT%"/>
<element-ref  name="self"/>
</element-ref>
</macro>
<macro  name="Plan-state-Transition_plan-pointer"  description="plan-state-transition with plan-pointer"  standalone="true">
<element-ref  name="plan-state-transition">
<attribute-ref  name="state"  value="%INPUT%"/>
<attribute-ref  name="instance-type"  value="%INPUT%"/>
<element-ref  name="plan-pointer">
<element-ref  name="static-plan-pointer">
<attribute-ref  name="plan-name"  value="%INPUT%"/>
</element-ref>
</element-ref>
</element-ref>
</macro>
</macros-group>
<macro  name="Library-Info"  description="library-info with administrative-data (used in plan-library)"  standalone="true">
<element-ref  name="library-info">
<attribute-ref  name="title"  value="%INPUT%"/>
<attribute-ref  name="version"  value="1"/>
<element-ref  name="administrative-data">
<attribute-ref  name="original-author"  value="%INPUT%"/>
<attribute-ref  name="creation-date"  value="%DATE%"/>
</element-ref>
</element-ref>
</macro>
<macro  name="Changes"  description="changes (used in administrative-data)"  standalone="true">
<element-ref  name="changes">
<attribute-ref  name="author"  value="%INPUT%"/>
<attribute-ref  name="date"  value="%DATE%"/>
<attribute-ref  name="description"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="Changes_Last-update"  description="changes (used in administrative-data)"  standalone="true">
<element-ref  name="changes">
<attribute-ref  name="author"  value="%INPUT%"/>
<attribute-ref  name="date"  value="%DATE%"/>
<attribute-ref  name="description"  value="Date of last update"/>
</element-ref>
</macro>
<macros-group  description="any-comment">
<macro  name="Link"  description="link macro (used in any element)"  standalone="true">
<GMT-LINK/>
</macro>
<macro  name="Comment"  description="comment (used in any element)"  standalone="true">
<element-ref  name="comment">
<attribute-ref  name="text"  value="%INPUT%"  default-value="%TEXT%"/>
</element-ref>
</macro>
<macro  name="URL"  standalone="true">
<element-ref  name="url">
<attribute-ref  name="text"  value="%INPUT%"/>
</element-ref>
</macro>
<macro  name="BibRef"  standalone="true">
<element-ref  name="bibref">
<attribute-ref  name="key"  value="%INPUT%"/>
</element-ref>
</macro>
</macros-group>
</macros-group>
</macros-def>
<structure-def>
<group  name="Plans">
<macro-ref  name="Plan"/>
<group  name="Conditions">
<single-element-ref  name="conditions"  standalone="true"/>
<separator/>
<single-element-ref  standalone="false"  name="filter-precondition"/>
<macro-ref  label="Filter-Precondition - confirmation"  name="Filter-Precondition_confirmation-required"/>
<separator/>
<single-element-ref  name="abort-condition"  standalone="false"/>
<macro-ref  label="Abort-Condition with Comparison"  name="Abort-Condition_with_Comparison"/>
<separator/>
<single-element-ref  name="complete-condition"  standalone="false"/>
<group-link  name="Temporal Patterns"/>
</group>
<group  name="Intentions">
<macro-ref  name="Intentions"/>
<macro-ref  name="Intention"/>
<separator/>
<group-link  name="Temporal Patterns"/>
</group>
<group  name="Plan-body">
<single-element-ref  name="plan-body"  standalone="true"/>
<separator/>
<macro-ref  name="Plan-Body_user-performed"  label="User-performed"/>
<macro-ref  name="Plan-Body_plan-activation"  label="Plan Activation"/>
<macro-ref  name="Plan-Body_Cyclical-Plan"  label="Cyclical Plan"/>
<separator/>
<macro-ref  name="Plan-Body_subplans_plan-activation"  label="Subplans with plan-activation"/>
<group  name="Subplans">
<macro-ref  name="Subplans"/>
<macro-ref  name="Subplans_ask"/>
<macro-ref  name="Subplans_plan-activation"/>
<group  name="Wait-For">
<macro-ref  name="Wait-For_all"  label="Wait for all subplans"/>
<macro-ref  name="Wait-For_one"  label="Wait for one subplan"/>
<macro-ref  name="Wait-For_none"  label="Wait for none subplan"/>
<macro-ref  name="Wait-For_plan"  label="Wait for a specific subplan"/>
<macro-ref  name="Wait-For_plans"  label="Wait for specific subplans"/>
</group>
<separator/>
<group-link  name="Plan-Body stuff"/>
</group>
<separator/>
<group  name="Plan-Body stuff">
<single-element-ref  name="user-performed"  standalone="true"/>
<macro-ref  name="Plan-Activation"/>
<separator/>
<macro-ref  name="Ask"/>
<macro-ref  name="Cyclical-Plan"/>
<macro-ref  name="Variable-Assignment_constant"  label="Variable-Assignment with constant"/>
<group-link  name="Expressions"/>
<separator/>
<macro-ref  name="If-then"/>
<macro-ref  name="If-then-else"/>
<group-link  name="Simple Conditions"/>
<separator/>
<macro-ref  name="Refer-To"/>
<single-element-ref  name="to-be-defined"  standalone="true"/>
</group>
</group>
<separator/>
<group  name="Plan Stuff">
<group  name="Temporal Patterns">
<group  name="Simple Conditions">
<single-element-ref  name="simple-condition"  standalone="true"/>
<macro-ref  name="Simple-Condition_variables-known"  label="Variables known?"/>
<separator/>
<macro-ref  name="Simple-Condition_Comparison"  label="Comparison"/>
<macro-ref  name="Simple-Condition_Comparison-parameter_constant"  label="Comparison - parameter / constant"/>
<group-link  name="Expressions"/>
<separator/>
<group  name="Simple Condition stuff">
<single-element-ref  name="simple-condition-not"  standalone="true"/>
<macro-ref  name="Simple-Condition-Combination"/>
<separator/>
<macro-ref  name="Variable-Known"  label="Variable known?"/>
<separator/>
<macro-ref  name="Comparison"/>
<macro-ref  name="Comparison-parameter_constant"  label="Comparison - parameter / constant"/>
<group-link  name="Expressions"/>
</group>
</group>
<macro-ref  name="Constraint-Combination"/>
<separator/>
<macro-ref  name="Parameter-Proposition_is-known_any_now"  label="simple Parameter-Proposition: is-known-parameter"/>
<macro-ref  name="Parameter-Proposition_constant_any_now"  label="simple Parameter-Proposition: value-description / qualitative-constant"/>
<separator/>
<macro-ref  name="Refer-To"/>
<single-element-ref  name="none"  standalone="true"/>
<single-element-ref  name="to-be-defined"  standalone="true"/>
</group>
<macro-ref  name="Plan-Group"/>
<single-element-ref  name="value-defs"  standalone="true"/>
<macro-ref  name="Derived-From"/>
<macro-ref  name="Refers-To"/>
<single-element-ref  name="effects"  standalone="true"/>
<single-element-ref  name="defaults"  standalone="true"/>
<single-element-ref  name="arguments"  standalone="true"/>
<single-element-ref  name="preferences"  standalone="true"/>
<single-element-ref  name="returns"  standalone="false"/>
<separator/>
<macro-ref  name="Explanation"/>
<group-link  name="Expressions"/>
</group>
</group>
<group  name="Domains">
<macro-ref  name="Domain-Definition"/>
<single-element-ref  name="domain-defs"  standalone="true"/>
<separator/>
<macro-ref  name="Domain"/>
<macro-ref  name="Use-Domain"/>
<separator/>
<group  name="Parameter Definitions">
<macro-ref  name="Parameter-Group"/>
<macro-ref  name="Parameter-Def"/>
<group-link  name="Parameter-Definition"  label="Paramter-Def. - Table"/>
<separator/>
<group  name="Raw-Data Definitions">
<macro-ref  name="Raw-Data-Def"/>
<macro-ref  name="Raw-Data-Def_numerical"/>
<macro-ref  name="Raw-data-def_manual"/>
<macro-ref  name="Raw-data-def_manual-numerical"/>
<separator/>
<single-element-ref  name="minimum-value"  standalone="true"/>
<single-element-ref  name="maximum-value"  standalone="true"/>
<single-element-ref  name="maximal-increase"  standalone="true"/>
<single-element-ref  name="maximal-decrease"  standalone="true"/>
<single-element-ref  name="trust-period"  standalone="true"/>
</group>
<group  name="Qualitative Parameter Definition">
<macro-ref  name="Qualitative-Parameter-Def"/>
<separator/>
<macro-ref  name="Limits_any-context"/>
<macro-ref  name="Limits_with-complex-context"/>
<group  name="Context">
<macro-ref  name="Any_Context"/>
<separator/>
<single-element-ref  name="context-ref"  standalone="true"/>
<single-element-ref  name="context-combination"  standalone="false"/>
<single-element-ref  name="context-not"  standalone="false"/>
<single-element-ref  name="any"  standalone="true"/>
<separator/>
<macro-ref  name="One-Of"/>
<macro-ref  name="Value-Ref"/>
</group>
<separator/>
<macro-ref  name="Limit-Entry"/>
<single-element-ref  name="positive-infinite"  standalone="true"/>
<single-element-ref  name="negative-infinite"  standalone="true"/>
<separator/>
<group-link  name="Parameter Definitions"  description="qualitative-parameter-def needs any-parameter-def"  label="Parameter Definition"/>
</group>
<macro-ref  name="Change-Def"/>
<single-element-ref  name="parameter-ref"  standalone="true"/>
</group>
<group-link  name="Definitions"  label="Domain Definitions"  description="link to other Domain Definitions"/>
</group>
<group  name="Definitions"  description="Definitions used in domain, library-defs and plan">
<group  name="Record Definitions">
<macro-ref  name="Patient-Record-Def"/>
<macro-ref  name="Record-Def"/>
<macro-ref  name="Field-Def"/>
</group>
<macro-ref  name="Qualitative-Scale-Def"/>
<macro-ref  name="Qualitative-Entry"  label="Entry for Qualitative-Scale-Def"/>
<macro-ref  name="Numerical-Scale-Def"/>
<macro-ref  name="Unit-Entry"/>
<macro-ref  name="Unit-Def"/>
<separator/>
<macro-ref  name="Variable-Def"/>
<macro-ref  name="Constant-Def"/>
<macro-ref  name="Constant-Def_with-numerical-scalar-def"  label="numerical Constant-Def"/>
<macro-ref  name="Iterator-Def"/>
<macro-ref  name="Iterator-Def_on-variable"  label="Iterator-Def on variable"/>
<separator/>
<group  name="predefined Definitions"  description="definition macros with fixed attribute values">
<macro-ref  name="Unit-Def_mgdl"  label="Unit-Def for mg/dl"/>
</group>
</group>
<group  name="Patterns">
<group  name="Tables">
<group  name="Parameter-Definition">
<macro-ref  name="Param-Def-Table"/>
<macro-ref  name="Param-Def-Row"/>
<macro-ref  name="Param-Def-Column"/>
<separator/>
<group-link  name="Domains"  label="Domain Stuff"  description="you have to insert the "Domain-Definition" macro before the "Param-Def-Table" macro"/>
</group>
</group>
</group>
<separator/>
<macro-ref  name="Library-Info"/>
<single-element-ref  name="library-defs"  standalone="true"/>
<group  name="common Stuff"  description="unimportant Asbru elements which are allowed on several locations">
<group  name="Expressions">
<macro-ref  name="Numerical-Constant"/>
<macro-ref  name="Numerical-Constant_with_unit_and_scale"  label="Numerical-Constant with unit and scale"/>
<separator/>
<macro-ref  name="Qualitative-Constant"/>
<macro-ref  name="String-Constant"/>
<macro-ref  name="Constant-Ref"/>
<macro-ref  name="Variable-Ref"/>
<macro-ref  name="Argument-Ref"/>
<macro-ref  name="Parameter-Ref"/>
<macro-ref  name="Get-Position"/>
<macro-ref  name="Operation"/>
<macro-ref  name="Function-Call"/>
<single-element-ref  name="now"  standalone="true"/>
<separator/>
<macro-ref  name="Plan-state-Transition_self"  label="Plan-state transition - same plan"/>
<macro-ref  name="Plan-state-Transition_plan-pointer"  label="Plan-state transition - other plan"/>
</group>
<group  name="any-comment">
<macro-ref  name="Link"/>
<separator/>
<macro-ref  name="Comment"/>
<macro-ref  name="URL"/>
<macro-ref  name="BibRef"/>
<single-element-ref  name="not-yet-defined"  standalone="true"/>
</group>
<single-element-ref  name="administrative-data"  description="for library-info or plan"  standalone="true"/>
<macro-ref  name="Changes_Last-update"  label="Last update for administrative-data"/>
<macro-ref  name="Changes"  label="Changes for administrative-data"/>
</group>
</structure-def>
</gmt-macros>