Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
This file defines the expression extensions that introduce clinically relevant dependencies such as clinical data access, terminology, and value set considerations.
The retrieve expression defines clinical data that will be used by the artifact. This expression allows clinically relevant filtering criteria to be provided in a well-defined and computable way. This operation defines the integration boundary for artifacts. The result of a retrieve is defined to return the same data for subsequent invocations within the same evaluation request. This means in particular that patient data updates made during the evaluation request are not visible to the artifact. In effect, the patient data is a snapshot of the data as of the start of the evaluation. This ensures strict deterministic and functional behavior of the artifact, and allows the implementation engine freedom to cache intermediate results in order to improve performance.The codes element optionally allows a set of codes to be provided. The codes list restricts the set of clinical statements returned to only those clinical statements that matched some code in the set.The dateRange element optionally allows a date range to be provided. The clinical statements returned would be only those clinical statements whose date fell within the range specified.The dataType attribute specifies the type of data being requested.The templateId attribute specifies an optional template to be used. If specified, the retrieve is defined to return only objects that conform to the template.The idProperty attribute specifies which property of the model contains the Id for the clinical statement.The codeProperty attribute optionally specifies which property of the model contains the Code or Codes for the clinical statement.
Note that this property could potentially be specified elsewhere as part of an implementation catalog, rather than on each Retrieve expression, but allowing them at the retrieve expression level gives the most flexibility.The dateProperty attribute optionally specifies which property of the model contains the clinically relevant date for the clinical statement.
This property is expected to reference a property that is either a Date or DateTime, or an interval of Date or DateTime. In either case, the result set will only include instances where the value of the dateProperty is during the date range. For date/time values, this means the date is both the same or after the beginning of the range, and the same or before the end of the range. For date/time interval values, this means that the entire interval is included in the date range.
Instances with no value for the dateProperty will not be included in the result set if a date range is specified.
Note that if the dateProperty is specified, the dateLowProperty and dateHighProperty attributes must not be present. And conversely, if the dateLowProperty and dateHighProperty attributes are specified, the dateProperty must not be present.The dateLowProperty attribute optionally specifies which property of the model contains the low component of the clinically relevant date for the clinical statement.
Note that if the dateProperty is specified, the dateLowProperty and dateHighProperty attributes must not be present. And conversely, if the dateLowProperty and dateHighProperty attributes are specified, the dateProperty must not be present.
If the dateLowProperty is present, the dateHighProperty must also be present, and will be used to determine the date range value of instances. Filtering using the specified date range occurs as described in the dateProperty.The dateHighProperty attribute optionally specifies which property of the model contains the high component of the clinically relevant date for the clinical statement.
Note that if the dateProperty is specified, the dateLowProperty and dateHighProperty attributes must not be present. And conversely, if the dateLowProperty and dateHighProperty attributes are specified, the dateProperty must not be present.
If the dateHighProperty is present, the dateLowProperty must also be present, and will be used to determine the date range value of instances. Filtering using the specified date range occurs as described in the dateProperty.The scope attribute optionally specifies a name for the scope for this operator that can be used within expressions to reference the current element.The CodeSystemDef type defines a code system identifier that can then be used to identify code systems involved in value set definitions.The name of the code system used for reference.The unique identifier of the code system.The version of the code system to be used. If no version is specified, the most current published version of the code system is assumed.The ValueSetDef type defines a value set identifier that can be referenced by name anywhere within an expression.
The id specifies the globally unique identifier for the value set. This may be an HL7 OID, a FHIR URL, or a CTS2 value set URL.
If version is specified, it will be used to resolve the version of the value set definition to be used. Otherwise, the most current published version of the value set is assumed.
If codeSystems are specified, they will be used to resolve the code systems used within the value set definition to construct the expansion set.
Note that the recommended approach to statically binding to an expansion set is to use a value set definition that specifies the version of each code system used. The codeSystemVersions attribute is provided only to ensure static binding can be achieved when the value set definition does not specify code system versions as part of the definition header. The code system that should be used to construct the expansion set. Note that the recommended approach to statically binding to an expansion set is to use a value set definition that specifies the version of each code system used. The codeSystem elements are provided only to ensure static binding can be achieved when the value set definition does not specify code system versions as part of the definition header.The unique identifier of the value set to be retrieved.The version of the value set to be retrieved. If no version is provided, the most current published version of the value set is assumed.The CodeDef type defines a code identifier that can then be used to reference single codes anywhere within an expression.The code system that contains the code being referenced.The name of the code used for reference.The unique identifier of the code.An optional display string used to describe the code.The ConceptDef type defines a concept identifier that can then be used to reference single concepts anywhere within an expression.A code that makes up the concept. All codes within a given concept must be synonyms.The name of the concept used for reference.An optional display string used to describe the concept.The CodeSystemRef expression allows a previously defined named code system to be referenced within an expression. Conceptually, referencing a code system returns the set of codes in the code system. Note that this operation should almost never be performed in practice. Code system references are allowed in order to allow for testing of code membership in a particular code system.The ValueSetRef expression allows a previously defined named value set to be referenced within an expression. Conceptually, referencing a value set returns the expansion set for the value set as a list of codes.The CodeRef expression allows a previously defined code to be referenced within an expression.The ConceptRef expression allows a previously defined concept to be referenced within an expression.The Code type represents a literal code selector.The Concept type represents a literal concept selector.The InCodeSystem operator returns true if the given code is in the given code system.
Note that this operator explicitly requires a CodeSystemRef as its codesystem argument. This allows for both static analysis of the code system references within an artifact, as well as the implementation of code system membership by the target environment as a service call to a terminology server, if desired.The AnyInCodeSystem operator returns true if any of the given codes are in the given code system.
Note that this operator explicitly requires a CodeSystemRef as its codesystem argument. This allows for both static analysis of the code system references within an artifact, as well as the implementation of code system membership by the target environment as a service call to a terminology server, if desired.The InValueSet operator returns true if the given code is in the given value set.
Note that this operator explicitly requires a ValueSetRef as its valueset argument. This allows for both static analysis of the value set references within an artifact, as well as the implementation of valueset membership by the target environment as a service call to a terminology server, if desired.The AnyInValueSet operator returns true if any of the given codes are in the given value set.
Note that this operator explicitly requires a ValueSetRef as its valueset argument. This allows for both static analysis of the value set references within an artifact, as well as the implementation of valueset membership by the target environment as a service call to a terminology server, if desired.The Subsumes operator returns true if the given codes are equivalent, or if the first code subsumes the second (i.e. the first code is an ancestor of the second in a subsumption hierarchy), and false otherwise.
For the Concept overload, this operator returns true if any code in the first concept subsumes any code in the second.
If either or both arguments are null, the result is null.The SubsumedBy operator returns true if the given codes are equivalent, or if the first code is subsumed by the second code (i.e. the first code is a descendent of the second code in a subsumption hierarchy), and false otherwise.
For the Concept overload, this operator returns true if any code in the first concept is subsumed by any code in the second.
If either or both arguments are null, the result is null.The Quantity type defines a clinical quantity. For example, the quantity 10 days or 30 mmHg. The value is a decimal, while the unit is expected to be a valid UCUM unit.The Ratio type defines a ratio between two quantities. For example, the titre 1:128, or the concentration ratio 5 mg/10 mL. The numerator and denominator are both quantities.Calculates the age in the specified precision of a person born on the given Date or DateTime as of Today or Now.
The CalculateAge operator is defined for Date and DateTime.
For the Date overload, the calculation is performed using Today(), and the precision must be one of year, month, week, or day.
For the DateTime overload, the calculation is performed using Now().
The result of the calculation is always the number of whole calendar periods that have elapsed between the given date/time and today/now.Calculates the age in the specified precision of a person born on the first Date or DateTime as of the second Date or DateTime.
The CalculateAgeAt operator has two signatures:
Date, Date
DateTime, DateTime
For the Date overload, precision must be one of year, month, week, or day.
The result of the calculation is the number of whole calendar periods that have elapsed between the first date/time and the second.