Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

PROBLEM: querying paths are different if one pattern is not consistently used for the same kinds of analyte. E.g. if serum sodium and serum potassium are imported from a message feed and included under a panel by one implementation, but directly by another, and both implementations feed data to the same health record, there will be a problem querying, unless the CONTAINS operator is used.

Use Cases

In the following:

  • (1) - Different labs sending different configurations of the same exam
  • (2) - Different results for the same analyte

Analytes in same test result with relative (%) and absolute Quantity values (1,2)

(Ack: Former user (Deleted) from Core Consulting, Brasilia)

...

Code Block
-- ADL2 syntax

CLUSTER[id9] matches {
    items matches {
		ELEMENT[id2.1] matches {	-- absolute value
    		value matches {
				DV_QUANTITY[id0.1] matches {
					normal_range matches {
						DV_INTERVAL<DV_QUANTITY>[id0.2] 
					}
					other_reference_ranges matches {
						REFERENCE_RANGE<DV_QUANTITY>[id0.3]
					}
				}
			}
        }
		ELEMENT[id2.2] matches {	-- relative value
    		value matches {
				DV_QUANTITY[id0.4] matches {
					units matches {"%"}
					normal_range matches {
						DV_INTERVAL<DV_QUANTITY>[id0.5] 
					}
					other_reference_ranges matches {
						REFERENCE_RANGE<DV_QUANTITY>[id0.6]
					}
				}
			}
        }
    }
}

Quantitative analytes in same test result with 2

...

units (1,2)

(Ack: Former user (Deleted) from Core Consulting, Brasilia)

Some labs report results for the same analyte in 2 different units for better interpretation, e.g. (nmol/L; pg/mL) (mg/dL; mmol/L), resulting in two distinct values for the same analyte. At the same time, labs may adopt different units for the same exam.

Analytes with both Quantity and Text/code

...

value (1,2)

(Ack: Former user (Deleted) from Core Consulting, Brasilia)

...

Code Block
-- ADL2 syntax

CLUSTER[id9] matches {
    items matches {
		ELEMENT[id2.1] matches {	-- quantity
    		value matches {
				DV_QUANTITY[id0.1] matches {
					normal_range matches {
						DV_INTERVAL<DV_QUANTITY>[id0.2] 
					}
					other_reference_ranges matches {
						REFERENCE_RANGE<DV_QUANTITY>[id0.3]
					}
				}
			}
        }
		ELEMENT[id2.2] matches {	-- text value
    		value matches {
				DV_TEXT[id0.4]
			}
        }
    }
}

Microbiology result - what is the analyte? (2)

(Ack: Former user (Deleted) from Core Consulting, Brasilia)

...

This is specifically related to microbiology results, how to deal with analyte elements when the result of the exam is the analyte itself, being a DATA_VALUE for the Result data element? There is no specific analyte being searched (in most cases) in this scenario. How to query?
This is an example of two DATA_VALUEs for the same exam.

Analyte with quantitative value and qualitative reference range (1,2)

(Ack: Former user (Deleted) from Core Consulting, Brasilia)

...

Code Block
-- ADL2 syntax

CLUSTER[id9] matches {
    items matches {
		ELEMENT[id2.1] matches {	-- quantity
    		value matches {
				DV_ORDINAL[id0.1] matches {
					normal_range matches {
						DV_INTERVAL<DV_ORDINAL>[id0.2] 
					}
					other_reference_ranges matches {
						REFERENCE_RANGE<DV_ORDINAL>[id0.3]
					}
				}
			}
        }
    }
}

Same result in different format, depending on lab (1)

(Ack: Former user (Deleted) from Core Consulting, Brasilia)

...