WHO Antenatal Care Guideline Implementation Guide
0.3.0 - CI Build
WHO Antenatal Care Guideline Implementation Guide, published by World Health Organization (WHO). This guide is not an authorized publication; it is the continuous build for version 0.3.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/WorldHealthOrganization/smart-anc/ and changes regularly. See the Directory of published versions
Active as of 2025-06-24 |
<PlanDefinition xmlns="http://hl7.org/fhir">
<id value="ANCDT12"/>
<text>
<status value="extensions"/>
<div xmlns="http://www.w3.org/1999/xhtml">
<div>
<table class="grid dict">
<tr>
<th scope="row"><b>Id: </b></th>
<td style="padding-left: 4px;">ANCDT12</td>
</tr>
<tr>
<th scope="row"><b>Url: </b></th>
<td style="padding-left: 4px;"><a href="PlanDefinition-ANCDT12.html">ANC.DT.12 Urine testing</a></td>
</tr>
<tr>
<th scope="row"><b>Version: </b></th>
<td style="padding-left: 4px;">0.3.0</td>
</tr>
<tr>
<th scope="row">
<b>
Official
</b>
</th>
<td style="padding-left: 4px;">
<p style="margin-bottom: 5px;">
<span>ANC.DT.12</span>
</p>
</td>
</tr>
<tr>
<th scope="row"><b>Title: </b></th>
<td style="padding-left: 4px;">ANC.DT.12 Urine testing</td>
</tr>
<tr>
<th scope="row"><b>Type: </b></th>
<td style="padding-left: 4px;">
<p style="margin-bottom: 5px;">
<b>system: </b> <span><a href="http://terminology.hl7.org/6.4.0/CodeSystem-plan-definition-type.html">http://terminology.hl7.org/CodeSystem/plan-definition-type</a></span>
</p>
<p style="margin-bottom: 5px;">
<b>code: </b> <span>eca-rule</span>
</p>
</td>
</tr>
<tr>
<th scope="row"><b>Date: </b></th>
<td style="padding-left: 4px;">2025-06-24 13:58:48-0600</td>
</tr>
<tr>
<th scope="row"><b>Publisher: </b></th>
<td style="padding-left: 4px;">World Health Organization (WHO)</td>
</tr>
<tr>
<th scope="row"><b>Description: </b></th>
<td style="padding-left: 4px;"><div><p>Conditions in which urine testing is required</p>
</div></td>
</tr>
<tr>
<th scope="row"><b>Use Context: </b></th>
<td style="padding-left: 4px;">
<table class="grid-dict">
<tr>
<th><b>code</b></th>
<th><b>value</b></th>
</tr>
<tr>
<td>task</td>
<td/>
</tr>
</table>
</td>
</tr>
<tr>
<th scope="row"><b>Jurisdiction: </b></th>
<td style="padding-left: 4px;">001</td>
</tr>
<tr>
<th scope="row"><b>Libraries: </b></th>
<td style="padding-left: 4px;">
<table class="grid-dict">
<tr>
<td><a href="Library-ANCDT12.html">ANC.DT.12 Urine testing</a></td>
</tr>
</table>
</td>
</tr>
<tr>
<th scope="row"><b>Actions: </b></th>
<td style="padding-left: 4px;">
<table class="grid-dict">
<tr>
<td>
<b> ANC.DT.12 Urine testing:</b>
<br/>
<b>When:</b>
<i>Named Event:</i> ANC.B9. Conduct laboratory tests and imaging
<br/>
<b>Then:</b>
<table class="grid-dict">
<tr>
<td>
Urine test is required any time the woman reports pain during urination (dysuria)
<br/>
<b>If:</b>
<i>Applicability:</i>
"Current physiological symptoms" = "Pain during urination (dysuria)"
<i>(Should Conduct urine test)</i>
<br/>
</td>
</tr>
<tr>
<td>
Given high values (SBP ≥ 140 or DBP ≥ 90) upon second measure, urine dipstick test should be done to check for protein in the urine, a symptom of pre-eclampsia
<br/>
<b>If:</b>
<i>Applicability:</i>
("Repeat systolic blood pressure" ≥ 140 mmHg)
OR ("Repeat diastolic blood pressure" ≥ 90mmHg)
<i>(Should Do urine dipstick test for protein)</i>
<br/>
</td>
</tr>
<tr>
<td>
The urine test checks for bacterial or other infections that can lead to adverse outcomes for the neonate. The urine dipstick test can check for proteins in the urine, which can be a sign of pre-eclampsia. Midstream urine culture is the preferred method for testing for asymptomatic bacteriuria (ASB) in pregnancy; if culture is not available, midstream urine Gram-staining is recommended over dipstick.
Urine dipstick tests should only be used to diagnose ASB in pregnancy if midstream culture and Gram-staining are not possible. Dipstick tests are required to check for protein in the urine, a symptom of pre-eclampsia.
<br/>
<b>If:</b>
<i>Applicability:</i>
(("ANC contact number" = 1)
OR ("Gestational age" ≥ 26 weeks))
OR ("Gestational age" ≥ 34 weeks)
<i>(Should Conduct urine test 2)</i>
<br/>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</div>
</text>
<contained>
<Library>
<id value="effective-data-requirements"/>
<name value="EffectiveDataRequirements"/>
<status value="active"/>
<type>
<coding>
<system value="http://terminology.hl7.org/CodeSystem/library-type"/>
<code value="module-definition"/>
</coding>
</type>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library FHIRHelpers"/>
<resource value="http://smart.who.int/anc/Library/FHIRHelpers|4.0.1"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library ContactData"/>
<resource
value="http://smart.who.int/anc/Library/ANCContactDataElements"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library WC"/>
<resource value="http://smart.who.int/anc/Library/WHOCommon"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library Cx"/>
<resource value="http://smart.who.int/anc/Library/ANCConcepts"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Library AC"/>
<resource value="http://smart.who.int/anc/Library/ANCCommon"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Value set Repeat systolic blood pressure"/>
<resource value="http://smart.who.int/anc/ValueSet/anc-b8-de20"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Value set Repeat diastolic blood pressure"/>
<resource value="http://smart.who.int/anc/ValueSet/anc-b8-de21"/>
</relatedArtifact>
<relatedArtifact>
<type value="depends-on"/>
<display value="Value set Gestational age"/>
<resource value="http://smart.who.int/anc/ValueSet/anc-b6-de17"/>
</relatedArtifact>
<parameter>
<name value="encounter"/>
<use value="in"/>
<min value="0"/>
<max value="1"/>
<type value="string"/>
</parameter>
<parameter>
<name value="Should Do urine dipstick test for protein"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<parameter>
<name value="Should Conduct urine test 2"/>
<use value="out"/>
<min value="0"/>
<max value="1"/>
<type value="boolean"/>
</parameter>
<dataRequirement>
<type value="Observation"/>
<profile value="http://hl7.org/fhir/StructureDefinition/Observation"/>
<mustSupport value="code"/>
<mustSupport value="status"/>
<mustSupport value="encounter"/>
<mustSupport value="encounter.reference"/>
<codeFilter>
<path value="code"/>
<valueSet value="http://smart.who.int/anc/ValueSet/anc-b8-de20"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Observation"/>
<profile value="http://hl7.org/fhir/StructureDefinition/Observation"/>
<mustSupport value="code"/>
<mustSupport value="status"/>
<mustSupport value="encounter"/>
<mustSupport value="encounter.reference"/>
<codeFilter>
<path value="code"/>
<valueSet value="http://smart.who.int/anc/ValueSet/anc-b8-de21"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Observation"/>
<profile value="http://hl7.org/fhir/StructureDefinition/Observation"/>
<mustSupport value="code"/>
<mustSupport value="status"/>
<mustSupport value="encounter"/>
<mustSupport value="encounter.reference"/>
<codeFilter>
<path value="code"/>
<valueSet value="http://smart.who.int/anc/ValueSet/anc-b6-de17"/>
</codeFilter>
</dataRequirement>
<dataRequirement>
<type value="Encounter"/>
<profile value="http://hl7.org/fhir/StructureDefinition/Encounter"/>
<mustSupport value="id"/>
</dataRequirement>
</Library>
</contained>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="ANCContactDataElements"/>
</extension>
<extension url="name">
<valueString value="Repeat systolic blood pressure"/>
</extension>
<extension url="statement">
<valueString
value="/*
@dataElement: ANC.B8.DE20 Repeat systolic blood pressure
@activity: ANC.B8 Physical exam
@description: Repeat measurement of the woman's systolic blood pressure in mmHg after 10–15 minutes rest
*/
define "Repeat systolic blood pressure":
WC.MostRecent(
[Observation: Cx."Repeat systolic blood pressure"] O
where O.status in { 'final', 'amended', 'corrected' }
and Coalesce(WC.ModifierExtension(O, 'who-notDone').value, false) is false
and Last(Split(O.encounter.reference, '/')) = Last(Split(encounter, '/'))
).value as FHIR.Quantity"/>
</extension>
<extension url="displaySequence">
<valueInteger value="0"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="ANCContactDataElements"/>
</extension>
<extension url="name">
<valueString value="Repeat diastolic blood pressure"/>
</extension>
<extension url="statement">
<valueString
value="/*
@dataElement: ANC.B8.DE21 Repeat diastolic blood pressure
@activity: ANC.B8 Physical exam
@description: Repeat measurement of the woman's diastolic blood pressure in mmHg after 10–15 minutes rest
*/
define "Repeat diastolic blood pressure":
WC.MostRecent(
[Observation: Cx."Repeat diastolic blood pressure"] O
where O.status in { 'final', 'amended', 'corrected' }
and Coalesce(WC.ModifierExtension(O, 'who-notDone').value, false) is false
and Last(Split(O.encounter.reference, '/')) = Last(Split(encounter, '/'))
).value as FHIR.Quantity"/>
</extension>
<extension url="displaySequence">
<valueInteger value="1"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="ANCDT12"/>
</extension>
<extension url="name">
<valueString value="Should Do urine dipstick test for protein"/>
</extension>
<extension url="statement">
<valueString
value="/*
("Repeat systolic blood pressure" ≥ 140 mmHg)
OR ("Repeat diastolic blood pressure" ≥ 90mmHg)
*/
define "Should Do urine dipstick test for protein":
ContactData."Repeat systolic blood pressure" >= 140 'mm[Hg]'
or ContactData."Repeat diastolic blood pressure" >= 90 'mm[Hg]'"/>
</extension>
<extension url="displaySequence">
<valueInteger value="2"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="ANCContactDataElements"/>
</extension>
<extension url="name">
<valueString value="ANC contact number"/>
</extension>
<extension url="statement">
<valueString
value="/*
@dataElement: ANC.A.DE12 ANC contact number
@activity: ANC.A4 Gather client details
@description: The ANC contact or visit number – recommended minimum is 8 contacts
*/
define "ANC contact number":
AC.Extension(WC.Only(
[Encounter] E
where E.id = Last(Split(encounter, '/'))
), 'contactNumber').value as integer"/>
</extension>
<extension url="displaySequence">
<valueInteger value="3"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="ANCContactDataElements"/>
</extension>
<extension url="name">
<valueString value="Gestational age"/>
</extension>
<extension url="statement">
<valueString
value="/*
@dataElement: ANC.B6.DE17 Gestational age
@activity: ANC.B6 Profile
@description: Gestational age in weeks and/or days depending on the source of gestational age
*/
define "Gestational age":
WC.MostRecent(
[Observation: Cx."Gestational age"] O
where O.status in { 'final', 'amended', 'corrected' }
and Coalesce(WC.ModifierExtension(O, 'who-notDone').value, false) is false
and Last(Split(O.encounter.reference, '/')) = Last(Split(encounter, '/'))
).value as FHIR.Quantity"/>
</extension>
<extension url="displaySequence">
<valueInteger value="4"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="ANCDT12"/>
</extension>
<extension url="name">
<valueString value="Should Conduct urine test 2"/>
</extension>
<extension url="statement">
<valueString
value="/*
(("ANC contact number" = 1)
OR ("Gestational age" ≥ 26 weeks))
OR ("Gestational age" ≥ 34 weeks)
*/
define "Should Conduct urine test 2":
ContactData."ANC contact number" = 1
or ContactData."Gestational age" >= 26 'weeks'
or ContactData."Gestational age" >= 34 'weeks'"/>
</extension>
<extension url="displaySequence">
<valueInteger value="5"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="FHIRHelpers"/>
</extension>
<extension url="name">
<valueString value="ToQuantity"/>
</extension>
<extension url="statement">
<valueString
value="define function ToQuantity(quantity FHIR.Quantity):
case
when quantity is null then null
when quantity.value is null then null
when quantity.comparator is not null then
Message(null, true, 'FHIRHelpers.ToQuantity.ComparatorQuantityNotSupported', 'Error', 'FHIR Quantity value has a comparator and cannot be converted to a System.Quantity value.')
when quantity.system is null or quantity.system.value = 'http://unitsofmeasure.org'
or quantity.system.value = 'http://hl7.org/fhirpath/CodeSystem/calendar-units' then
System.Quantity { value: quantity.value.value, unit: ToCalendarUnit(Coalesce(quantity.code.value, quantity.unit.value, '1')) }
else
Message(null, true, 'FHIRHelpers.ToQuantity.InvalidFHIRQuantity', 'Error', 'Invalid FHIR Quantity code: ' & quantity.unit.value & ' (' & quantity.system.value & '|' & quantity.code.value & ')')
end"/>
</extension>
<extension url="displaySequence">
<valueInteger value="6"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="FHIRHelpers"/>
</extension>
<extension url="name">
<valueString value="ToCalendarUnit"/>
</extension>
<extension url="statement">
<valueString
value="define function ToCalendarUnit(unit System.String):
case unit
when 'ms' then 'millisecond'
when 's' then 'second'
when 'min' then 'minute'
when 'h' then 'hour'
when 'd' then 'day'
when 'wk' then 'week'
when 'mo' then 'month'
when 'a' then 'year'
else unit
end"/>
</extension>
<extension url="displaySequence">
<valueInteger value="7"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="WHOCommon"/>
</extension>
<extension url="name">
<valueString value="MostRecent"/>
</extension>
<extension url="statement">
<valueString
value="define function MostRecent(observations List<Observation>):
Last(
observations O
sort by issued
)"/>
</extension>
<extension url="displaySequence">
<valueInteger value="8"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="FHIRHelpers"/>
</extension>
<extension url="name">
<valueString value="ToString"/>
</extension>
<extension url="statement">
<valueString
value="define function ToString(value ObservationStatus): value.value"/>
</extension>
<extension url="displaySequence">
<valueInteger value="9"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="FHIRHelpers"/>
</extension>
<extension url="name">
<valueString value="ToBoolean"/>
</extension>
<extension url="statement">
<valueString
value="define function ToBoolean(value boolean): value.value"/>
</extension>
<extension url="displaySequence">
<valueInteger value="10"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="WHOCommon"/>
</extension>
<extension url="name">
<valueString value="ModifierExtension"/>
</extension>
<extension url="statement">
<valueString
value="/*
@description: Returns the single WHO core modifier extension (if present) on the given resource with the specified id.
@comment: This function uses singleton from to ensure that a run-time exception is thrown if there
is more than one extension on the given resource with the specified url.
*/
define function ModifierExtension(domainResource DomainResource, id String):
singleton from ModifierExtensions(domainResource, id)"/>
</extension>
<extension url="displaySequence">
<valueInteger value="11"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="WHOCommon"/>
</extension>
<extension url="name">
<valueString value="ModifierExtensions"/>
</extension>
<extension url="statement">
<valueString
value="/*
@description: Returns any WHO core modifier extensions defined on the given resource with the specified id.
@comment: NOTE: Extensions are not the preferred approach, but are used as a way to access
content that is defined by extensions but not yet surfaced in the
CQL model info.
*/
define function ModifierExtensions(domainResource DomainResource, id String):
domainResource.modifierExtension E
where E.url = ('http://fhir.org/guides/who/core/StructureDefinition/' + id)
return E"/>
</extension>
<extension url="displaySequence">
<valueInteger value="12"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="FHIRHelpers"/>
</extension>
<extension url="name">
<valueString value="ToString"/>
</extension>
<extension url="statement">
<valueString value="define function ToString(value uri): value.value"/>
</extension>
<extension url="displaySequence">
<valueInteger value="13"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="FHIRHelpers"/>
</extension>
<extension url="name">
<valueString value="ToString"/>
</extension>
<extension url="statement">
<valueString
value="define function ToString(value string): value.value"/>
</extension>
<extension url="displaySequence">
<valueInteger value="14"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="FHIRHelpers"/>
</extension>
<extension url="name">
<valueString value="ToInteger"/>
</extension>
<extension url="statement">
<valueString
value="define function ToInteger(value integer): value.value"/>
</extension>
<extension url="displaySequence">
<valueInteger value="15"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="ANCCommon"/>
</extension>
<extension url="name">
<valueString value="Extension"/>
</extension>
<extension url="statement">
<valueString
value="/*
@description: Returns the single ANC extension (if present) on the given resource with the specified id.
@comment: This function uses singleton from to ensure that a run-time exception is thrown if there
is more than one extension on the given resource with the specified id.
*/
define function Extension(domainResource DomainResource, id String):
singleton from "Extensions"(domainResource, id)"/>
</extension>
<extension url="displaySequence">
<valueInteger value="16"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="ANCCommon"/>
</extension>
<extension url="name">
<valueString value="Extensions"/>
</extension>
<extension url="statement">
<valueString
value="/*
@description: Returns any ANC extensions defined on the given resource with the specified id.
@comment: NOTE: Extensions are not the preferred approach, but are used as a way to access
content that is defined by extensions but not yet surfaced in the
CQL model info.
*/
define function Extensions(domainResource DomainResource, id String):
domainResource.extension E
where E.url = ('http://smart.who.int/anc/StructureDefinition/' + id)
return E"/>
</extension>
<extension url="displaySequence">
<valueInteger value="17"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/cqf-logicDefinition">
<extension url="libraryName">
<valueString value="WHOCommon"/>
</extension>
<extension url="name">
<valueString value="Only"/>
</extension>
<extension url="statement">
<valueString
value="define function Only(encounters List<Encounter>):
singleton from encounters"/>
</extension>
<extension url="displaySequence">
<valueInteger value="18"/>
</extension>
</extension>
<extension
url="http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-effectiveDataRequirements" id="effective-data-requirements">
<valueCanonical value="#effective-data-requirements"/>
</extension>
<extension
url="http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-softwaresystem">
<valueReference>🔗
<reference value="Device/cqf-tooling"/>
</valueReference>
</extension>
<url value="http://smart.who.int/anc/PlanDefinition/ANCDT12"/>
<identifier>
<use value="official"/>
<value value="ANC.DT.12"/>
</identifier>
<version value="0.3.0"/>
<name value="ANCDT12"/>
<title value="ANC.DT.12 Urine testing"/>
<type>
<coding>
<system
value="http://terminology.hl7.org/CodeSystem/plan-definition-type"/>
<code value="eca-rule"/>
</coding>
</type>
<status value="active"/>
<experimental value="false"/>
<date value="2025-06-24T13:58:48-06:00"/>
<publisher value="World Health Organization (WHO)"/>
<contact>
<telecom>
<system value="url"/>
<value value="https://www.who.int"/>
</telecom>
</contact>
<description value="Conditions in which urine testing is required"/>
<useContext>
<code>
<system
value="http://terminology.hl7.org/CodeSystem/usage-context-type"/>
<code value="task"/>
<display value="Workflow Task"/>
</code>
<valueCodeableConcept>
<coding>
<system value="http://smart.who.int/anc/CodeSystem/activity-codes"/>
<code value="ANC.B9."/>
<display value="Conduct laboratory tests and imaging"/>
</coding>
</valueCodeableConcept>
</useContext>
<jurisdiction>
<coding>
<system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/>
<code value="001"/>
</coding>
</jurisdiction>
<library value="http://smart.who.int/anc/Library/ANCDT12"/>
<action>
<title value="ANC.DT.12 Urine testing"/>
<trigger>
<type value="named-event"/>
<name value="ANC.B9. Conduct laboratory tests and imaging"/>
</trigger>
<action id="1">
<title value="Conduct urine test"/>
<description value="Conduct urine test"/>
<textEquivalent
value="Urine test is required any time the woman reports pain during urination (dysuria)"/>
<documentation>
<type value="citation"/>
<label
value="Managing complications guide (IMPAC) (2017): Section S-51 (3)"/>
</documentation>
<condition>
<kind value="applicability"/>
<expression>
<description
value=""Current physiological symptoms" = "Pain during urination (dysuria)""/>
<language value="text/cql-identifier"/>
<expression value="Should Conduct urine test"/>
</expression>
</condition>
</action>
<action id="2">
<title value="Do urine dipstick test for protein"/>
<description value="Do urine dipstick test for protein"/>
<textEquivalent
value="Given high values (SBP ≥ 140 or DBP ≥ 90) upon second measure, urine dipstick test should be done to check for protein in the urine, a symptom of pre-eclampsia"/>
<documentation>
<type value="citation"/>
<label
value="Managing complications guide (IMPAC) (2017): Section S-51 (3)"/>
</documentation>
<condition>
<kind value="applicability"/>
<expression>
<description
value="("Repeat systolic blood pressure" ≥ 140 mmHg)
OR ("Repeat diastolic blood pressure" ≥ 90mmHg)"/>
<language value="text/cql-identifier"/>
<expression value="Should Do urine dipstick test for protein"/>
</expression>
</condition>
</action>
<action id="3">
<title value="Conduct urine test"/>
<description value="Conduct urine test 2"/>
<textEquivalent
value="The urine test checks for bacterial or other infections that can lead to adverse outcomes for the neonate. The urine dipstick test can check for proteins in the urine, which can be a sign of pre-eclampsia. Midstream urine culture is the preferred method for testing for asymptomatic bacteriuria (ASB) in pregnancy; if culture is not available, midstream urine Gram-staining is recommended over dipstick.
Urine dipstick tests should only be used to diagnose ASB in pregnancy if midstream culture and Gram-staining are not possible. Dipstick tests are required to check for protein in the urine, a symptom of pre-eclampsia."/>
<documentation>
<type value="citation"/>
<label
value="WHO ANC recommendations (2016): B.1.2. Asymptomatic bacteriuria (ASB) (3)"/>
</documentation>
<condition>
<kind value="applicability"/>
<expression>
<description
value="(("ANC contact number" = 1)
OR ("Gestational age" ≥ 26 weeks))
OR ("Gestational age" ≥ 34 weeks)"/>
<language value="text/cql-identifier"/>
<expression value="Should Conduct urine test 2"/>
</expression>
</condition>
</action>
</action>
</PlanDefinition>