Extract Medical Conditions from Text (ICD-10-CM) v1.0.0 Help
Detects possible medical conditions as entities and links them to codes from the 2022 version of the International Classification of Diseases, 10th Revision, Clinical Modification (ICD-10-CM). Refers to Named entity recognition (NER).
How can I use the Step?
The Step lets you find potential medical conditions in unstructured clinical text such as physician's notes, discharge summaries, test results, and medical records. You can use the Step to help with clinical research and trials, early disease detection and diagnosis, or assist with professional medical record coding.
Warning: This Step is not a substitute for professional medical advice, diagnosis, or treatment. In any medical scenario, review and validate results before use.
How does the Step work?
The Step returns the matching ICD-10-CM codes and descriptions for each detected medical condition, listing them in descending order according to the confidence scores. These scores indicate confidence in the accuracy of the entities matched to the ICD-10-CM concepts. To learn more, review Entity categories and Output example.
Input settings
- To set up this section, provide the text to analyze in the Input text field. You can enter text manually or use the Merge fields here.
Input text
The input text must be a UTF-8 string. The string must contain at least one character. The maximum string size is 10 KB. English is the only valid language.
Entity categories
This Step detects entities in the following categories:
Each entity category has its types, attributes, and traits, that provide additional information related to found entities to help you manage the particular task.
Medical condition category
The medicalCondition
category includes entities related to a health condition, such as pain, nausea, fever, anorexia, or chills.
Types
dxName
: All medical conditions listed. ThedxName
type includes present illness, reason for visit, and medical history.
Attributes
acuity
: Determination of disease instance, such as chronic, acute, sudden, persistent, or gradual.direction
: Directional terms. For example, left, right medial, lateral, upper, lower, posterior, anterior, distal, proximal, contralateral, bilateral, ipsilateral, dorsal, or ventral.systemOrganSite
: anatomical location.
Traits
diagnosis
: A medical condition that is determined as the cause or result of the symptoms. Symptoms can be found through physical findings, laboratory or radiological reports, or any other means. Applies only to thedxName
type.negation
: An indication that a result or action is negative or not being performed.sign
: A medical condition that the physician reported. Applies only to thedxName
type.symptom
: A medical condition reported by the patient. Applies only to thedxName
type.
Time expression category
The timeExpression
category includes entities related to the dates and time expressions, such as three days ago, today, currently, day of admission, last month, or 16 days.
Types
timeToMedicationName
: The date medication was taken. The attributes specific to this type arebrandName
andgenericName
.timeToDxName
: The date a medical condition occurred. The attribute for this type isdxName
.timeToTestName
: The date a test was performed. The attribute for this type istestName
.timeToProcedureName
: The date a procedure was performed. The attribute for this type isprocedureName
.timeToTreatmentName
: The date treatment was administered. The attribute for this type istreatmentName
.
Relationship Type
The relationship between an entity and an attribute. The recognized relationshipType
is: overlap
– The timeExpression
concurs with the entity detected.
Merge field settings
The Step returns the result as a JSON object and stores it in the Merge field variable. Thus you can access the output JSON object from any point of your Flow.
Output example
The Step's output contains information about each entity detected, including its category, type, score, attributes, traits, and ICD-10-CM concepts.
For example, using the input text "Yesterday, the patient was diagnosed with influenza," the Step returns two following entities:
{
...
"entities": [
{
"id": 0,
"text": "Yesterday",
"category": "timeExpression",
"type": "timeToDxName",
"score": 0.9999809265136719,
"beginOffset": 0,
"endOffset": 9,
"attributes": [
{
"type": "dxName",
"score": 0.9401737451553345,
"relationshipScore": 0.646794855594635,
"id": 1,
"beginOffset": 42,
"endOffset": 51,
"text": "influenza",
"traits": []
}
],
"traits": [],
"iCD10CMConcepts": []
},
{
"id": 1,
"text": "influenza",
"category": "medicalCondition",
"type": "dxName",
"score": 0.9401737451553345,
"beginOffset": 42,
"endOffset": 51,
"attributes": [],
"traits": [],
"iCD10CMConcepts": [
{
"description": "Influenza due to unidentified influenza virus with other respiratory manifestations",
"code": "J11.1",
"score": 0.6440569162368774
},
{
"description": "Influenza due to other identified influenza virus with other respiratory manifestations",
"code": "J10.1",
"score": 0.46903014183044434
},
...
]
}
]
}
{
...
"entities": [
{
"id": 0,
"text": "Yesterday",
"category": "timeExpression",
"type": "timeToDxName",
"score": 0.9999809265136719,
"beginOffset": 0,
"endOffset": 9,
"attributes": [
{
"type": "dxName",
"score": 0.9401737451553345,
"relationshipScore": 0.646794855594635,
"id": 1,
"beginOffset": 42,
"endOffset": 51,
"text": "influenza",
"traits": []
}
],
"traits": [],
"iCD10CMConcepts": []
},
{
"id": 1,
"text": "influenza",
"category": "medicalCondition",
"type": "dxName",
"score": 0.9401737451553345,
"beginOffset": 42,
"endOffset": 51,
"attributes": [],
"traits": [],
"iCD10CMConcepts": [
{
"description": "Influenza due to unidentified influenza virus with other respiratory manifestations",
"code": "J11.1",
"score": 0.6440569162368774
},
{
"description": "Influenza due to other identified influenza virus with other respiratory manifestations",
"code": "J10.1",
"score": 0.46903014183044434
},
...
]
}
]
}
Error Handling
By default, the Step handles errors using a separate exit. So if any error occurs during the Step execution, the Flow proceeds down the error
exit.
Note: If you disable the Handle error toggle, the Step does not handle errors. With this setup, if any error occurs during the Step execution, the Flow fails immediately after exceeding the Flow's timeout. To prevent the Flow from being suspended while continuing to handle errors in the Flow, place the Flow Error Handling Step before the main Flow logic.
Reporting
The Step reports once after its execution. You can change the Step log level and add new tags in the section.
Log level
By default, the Step inherits its log level from Flow's log level. You can change the Step's log level by selecting an appropriate option from the Log level list.
Tags
Tags help organize and filter session information when generating reports. You can specify the tag category, label, and value when adding a new tag.
Service dependencies
- flow builder - v2.28.3
- event-manager - v2.3.0
- deployer - v2.6.0
- comprehend medical provider - v1.0.0
Release notes
v1.0.0
- Initial release