Methods - ndobb/clinical-trials-seq2seq-annotation GitHub Wiki
.acute()
.caused_by()
.change()
.chronic()
.duration()
.equiv()
.except()
.for()
.found_by()
.loc()
.min_count()
.mod()
.num_filter()
.pol()
.possible()
.prov()
.temporality()
.type()
.severity()
.stable()
.acute()
.acute()
indicates that a given cond()
has been suffered a relatively short time.
Arguments -
- No arguments.
Example -
'INC'
'- patient with acute() respiratory failure , not intubated'
'- patient with acute() cond("respiratory failure") , neg() proc("intubated")'
intersect(
cond("respiratory failure")
.acute(),
neg(
proc("intubated")
)
)
.caused_by()
.caused_by()
indicates that the function is caused by another function.
Arguments -
- A function which is the cause.
Example -
'EXC'
'- Patients with a prior documented infection with mycormycetes'
'- Patients with a eq(temporal_per(PAST)) documented cond("infection") with org("mycormycetes")'
cond("infection")
.caused_by(
org("mycormycetes")
)
.temporality(
eq(temporal_per(PAST))
)
.change()
.change()
represents that a function may change or is unstable.
Arguments -
- A function which is changing or unstable.
Example -
'EXC'
'- 4. uncontrolled hypertension ( diastolic BP > 110 mmHg )'
'- 4. change() cond("hypertension") ( vital("diastolic BP") eq(op(GT), val("110"), unit("mmHg")) )'
cond("hypertension")
.change()
.equiv(
vital("diastolic BP")
.num_filter(
eq(op(GT), val("110"), unit("mmHg"))
)
)
.chronic()
.chronic()
indicates that a given cond()
has been suffered for a longer span of time.
Arguments -
- No arguments.
Example -
'INC'
'- Patients suffering from chronic pain due to tennis elbow for at least 3 months'
'- Patients suffering from chronic() obs("pain") due to cond("tennis elbow") for
eq(op(GTEQ), val("3"), temporal_unit(MONTH))'
obs("pain")
.chronic()
.caused_by(
cond("tennis elbow")
)
.duration(
eq(op(GTEQ), val("3"), temporal_unit(MONTH))
)
.duration()
.duration()
represents a temporal filter describing a duration of time.
Arguments -
- An
eq()
,and()
, oror()
.
Example -
'INC'
'- Patients suffering from chronic pain due to tennis elbow for at least 3 months'
'- Patients suffering from chronic() obs("pain") due to cond("tennis elbow")
for eq(op(GTEQ), val("3"), temporal_unit(MONTH))'
obs("pain")
.chronic()
.caused_by(
cond("tennis elbow")
)
.duration(
eq(op(GTEQ), val("3"), temporal_unit(MONTH))
)
.equiv()
.equiv()
represents an abbreviation, example, or criterion which should be equivalent.
Arguments -
- One or more functions.
Example -
'INC'
'- Prepubertal children 2 to < 12 years old ( i . e . , before 12 th birthday )'
'- Prepubertal child() eq(val("2"), op(BETWEEN), op(LT), val("12"), temporal_unit(YEAR))
age() ( i . e . , before eq(op(LT), val("12")) th age() )'
intersect(
child(),
age()
.num_filter(
eq(val("2"), op(BETWEEN), op(LT), val("12"), temporal_unit(YEAR))
)
.equiv(
age()
.eq(op(LT), val("12"))
)
)
.except()
.except()
represents an exception to a criterion.
Arguments -
- One or more functions.
Example -
'EXC'
'- greater than mild substance use disorder on drugs other than alcohol , nicotine , and marijuana'
'- eq(op(GT), severity(MILD)) cond("substance use disorder") on drug() except() drug("alcohol") ,
drug("nicotine") , and drug("marijuana")'
cond("substance use disorder")
.severity(
eq(op(GT), val(MILD))
)
.using(
drug()
.except(
drug("alcohol"),
drug("nicotine"),
drug("marijuana")
)
)
.for()
.for()
indicates that a drug()
, enc()
, proc()
is use used or done as treatment for something else.
Arguments -
- A function (nearly always a
cond()
) to be treated.
Example -
'EXC'
'6. hospitalized for AF in the past three months .'
'6. enc(INPATIENT) for cond("AF") in the
eq(temporal_per(PAST), val("three"), temporal_unit(MONTH)) .'
enc(INPATIENT)
.for(
cond("AF")
)
.temporality(
eq(temporal_per(PAST), val("three"), temporal_unit(MONTH))
)
.found_by()
.found_by()
indicates that a cond()
or obs()
was found by the use of one or more proc()
s.
Arguments -
- One or more
proc()
s.
Example -
'INC'
'- Likely suffer from moderate to severe OSA based on history and physical'
'- possible() suffer from eq(severity(MILD), op(BETWEEN), severity(SEVERE)) cond("OSA")
based on eq(temporal_per(PAST)) and proc("physical")'
cond("OSA")
.possible()
.found_by(
proc("physical")
)
.severity(
eq(severity(MILD), op(BETWEEN), severity(SEVERE))
)
.temporality(
eq(temporal_per(PAST))
)
.loc()
.loc()
represents a location.
Arguments -
- A quoted string, e.g.,
loc("Vermont")
, or - A
hosp()
,res()
,clinic()
, orunit()
Example -
'EXC'
'4. patients transferred from other acute care hospitals ;'
'4. patients enc(TRANSFER) from other loc(hosp("acute care hospitals")) ;'
enc(TRANSFER)
.loc(hosp("acute care hospitals"))
.min_count()
.min_count()
represents the minimum number of times an event must occur.
Arguments -
- An
eq()
,and()
, oror()
.
Example -
'INC'
'1. At least two relatives willing to participate in the screening programme .'
'1. eq(op(GTEQ), val("two")) family_member() willing to participate participate
in the screening programme .'
family_member()
.min_count(
eq(op(GTEQ), val("two"))
)
.mod()
.mod()
represents modification or specification to an entity.
Arguments -
- A quoted string, e.g.,
mod("lung")
Example -
'INC'
'- No cardiometabolic or inflammatory illness'
'- neg() mod("cardiometabolic") or mod("inflammatory") cond()'
neg(
cond()
.mod("cardiometabolic")
.mod("inflammatory")
)
.num_filter()
.num_filter()
represents a numeric filter (if a quantitative function, like a lab()
or vital()
), or alternatively a stage or grade of disease.
Arguments -
- An
eq()
,and()
, oror()
.
Example -
'EXC'
'- Chronic kidney disease with a Glomerular Filtration Rate < 50 ml / min'
'- chronic() cond("kidney disease") with a lab("Glomerular Filtration Rate")
eq(op(LT), val("50"), unit("ml"), per(MINUTE))'
intersect(
cond("kidney disease")
.chronic(),
lab("Glomerular Filtration Rate")
.num_filter(
eq(op(LT), val("50"), unit("ml"), per(MINUTE))
)
)
.pol()
.pol()
is an abbreviation for "polarity", and represents a range of states such as normal, high, low, positive, and negative.
Arguments -
- An all-caps enum-like value of one of the following:
LOW
NORMAL
HIGH
POSITIVE
NEGATIVE
Example -
'INC'
'- Helicobacter pylori negative'
'- org("Helicobacter pylori") pol(NEGATIVE)'
org("Helicobacter pylori")
.pol(NEGATIVE)
.possible()
.possible()
indicates that a condition (or other function) may be unproven or unknown.
Arguments -
- No arguments.
Example -
'INC'
'- Female patients who have symptoms consistent with endometriosis such as pelvic pain ,
dysmenorrhea , deep dyspareunia , and infertility'
'- female() patients who have possible() consistent with cond("endometriosis") such as
mod("pelvic") obs("pain") , cond("dysmenorrhea") , cond("deep dyspareunia") , and cond("infertility")'
intersect(
female(),
cond("endometriosis")
.possible()
.equiv(
obs("pain")
.mod("pelvic"),
cond("dysmenorrhea"),
cond("deep dyspareunia"),
cond("infertility")
)
)
.prov()
.prov()
represents a provider or specialty.
Arguments -
- A quoted string, e.g.,
prov("pediatrician")
Example -
'INC'
'- Referred to a psychological therapies service'
'- enc(REFERRAL) to a prov("psychological therapies service")'
enc(REFERRAL)
.prov("psychological therapies service")
.temporality()
.temporality()
represents a filter of time or dates.
Arguments -
- An
eq()
,and()
, oror()
.
Example -
'INC'
'- Have not participated in any systematic exercise program for at least six months
prior to the start of this project .'
'- Have neg() participated in any mod("systematic") proc("exercise program") for
eq(op(GTEQ), val("six"), temporal_unit(MONTH)) prior to the start of this project .'
neg(
proc("exercise program")
.mod("systematic")
.temporality(
eq(op(GTEQ), val("six"), temporal_unit(MONTH))
)
)
.type()
.type()
represents the type or source of a diagnosis or condition.
Arguments -
- An all-caps enum-like value of one of the following:
ADMITTING
DISCHARGE
PROBLEM_LIST
Example -
'EXC'
'- Hypertensive urgency or emergency as an admission diagnosis'
'- cond("Hypertensive") mod("urgency") or mod("emergency") as an type(ADMITTING) diagnosis'
cond("Hypertensive")
.mod("urgency")
.mod("emergency")
.type(ADMITTING)
.severity()
.severity()
represents the severity of a condition.
Arguments -
- An all-caps enum-like value of one of the following:
MILD
MODERATE
SEVERE
Example -
'EXC'
'- Severe orbital or ophthalmic injury'
'- severity(SEVERE) mod("orbital") or mod("ophthalmic") obs("injury")'
obs("injury")
.severity(SEVERE)
.mod("orbital")
.mod("ophthalmic")
.stable()
.stable()
indicates that a condition (or other function) is stable and not fluctuating, etc.
Arguments -
- No arguments.
Example -
'INC'
'- Weight stable ( ± 5 kg ) for at least 6 months'
'- measurement("Weight") stable() ( eq(op(PLUS_MINUS), val("5"), unit("kg")) )
for eq(op(GTEQ), val("6"), temporal_unit(MONTH))'
measurement("Weight")
.stable()
.num_filter(
eq(op(PLUS_MINUS), val("5"), unit("kg"))
)
.duration(
eq(op(GTEQ), val("6"), temporal_unit(MONTH))
)