Closed rcelebi closed 6 months ago
This problem will be tackled by marking sphn:hasDiastolicPressure and sphn:hasSystolicPressure as deprecated and by resolving issues #9 and #10.
271649006 | Systolic blood pressure (observable entity) |
or 271650006 | Diastolic blood pressure (observable entity) |
46973005 | Blood pressure taking (procedure) |
Issue Overview The current mapping process within the SPHN encounters a issue when dealing with Blood Pressure measurements due to the absence of IF-THEN-ELSE rules support in our mapping tool.
Problem Statement When mapping a JSON file to SPHN, the differentiation between types of Blood Pressure (such as systolic and diastolic pressure) requires forming distinct relations in SPHN: hasSystolicPressure and hasDiastolicPressure. However, achieving this differentiation requires a conditional value check. Depending on this value, the appropriate SPHN relation should be created (either hasSystolicPressure or hasDiastolicPressure). Unfortunately, our current mapping tool lacks the capability to execute IF-THEN-ELSE-based mappings. We need to re-design SPHN Measurement Class to handle this mapping.
Example Scenario For instance, consider the following JSON-to-SPHN mapping scenario:
In SPHN, this JSON should ideally map to hasDiastolicPressure due to the 'type' indicating a diastolic blood pressure reading. However, our mapping tool doesn't provide the functionality to dynamically select between hasSystolicPressure or hasDiastolicPressure based on such conditions.
Proposed Approach The proposed approach involves establishing a connection between the 'sphn:Measurement' entity and the 'sphn:Code' class using the hasCode relation. This way, diverse types of measurements, including but not limited to systolic and diastolic pressures, can be accurately represented under the broader 'sphn:Measurement' category with associated codes. By removing specific relations for individual measurement types, it will enable the simplification of the ontology, facilitate mapping.