MedicalTest
MedicalTest is a direct MedicalEntity subtype for clinical tests. It is the parent of BloodTest, ImagingTest, PathologyTest, and MedicalTestPanel; use the most specific subtype where it applies.
It has 5 direct properties:
normalRange(Text): the reference range for a typical patient.signDetected(MedicalSign): a sign the test detects.usedToDiagnose(MedicalCondition): the condition the test diagnoses or rules out.affectedBy(Drug): drugs known to affect the test result.usesDevice(MedicalDevice): the device the test runs on.
Full example of schema.org/MedicalTest json-ld markup
The markup is verified as valid with Rich Results Test from Google.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": ["MedicalTest", "BloodTest"],
"name": "Hemoglobin A1c (HbA1c)",
"alternateName": "Glycated haemoglobin",
"description": "Measures the percentage of haemoglobin in the blood that is glycated, reflecting average blood glucose over the previous 8-12 weeks. Primary monitoring test for diabetes mellitus.",
"normalRange": "4.0%-5.6% (non-diabetic); 5.7%-6.4% (prediabetes); >=6.5% (diabetes)",
"usedToDiagnose": [
{ "@type": "MedicalCondition", "name": "Type 2 diabetes mellitus" },
{ "@type": "MedicalCondition", "name": "Prediabetes" }
],
"signDetected": { "@type": "MedicalSign", "name": "Hyperglycaemia" },
"affectedBy": [
{ "@type": "Drug", "name": "Erythropoietin (falsely lowers A1c)" },
{ "@type": "Drug", "name": "Iron supplements (variable effect)" }
],
"code": [
{ "@type": "MedicalCode", "codeValue": "4548-4", "codingSystem": "LOINC" },
{ "@type": "MedicalCode", "codeValue": "83036", "codingSystem": "CPT" }
],
"relevantSpecialty": ["https://schema.org/Endocrine", "https://schema.org/PrimaryCare", "https://schema.org/LaboratoryScience"]
}
</script>Where MedicalTest lives
It appears as the value of availableTest on DiagnosticLab and on Hospital via availableService. It also lives standalone on patient-education pages explaining what a particular test measures.
Always pair MedicalTest with one or more MedicalCode entries (LOINC for lab tests, CPT for procedure billing). Multi-coded tests collapse cleanly into healthcare knowledge graphs.
Minimal valid version
The smallest markup that still produces a valid MedicalTest entity. Use it as the floor. Reach for the advanced example above when you want search engines and AI agents to understand more about your content.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "MedicalTest",
"name": "Hemoglobin A1c",
"normalRange": "4.0%-5.6%",
"usedToDiagnose": { "@type": "MedicalCondition", "name": "Type 2 diabetes mellitus" }
}
</script>Google rich results this unlocks
Markup matching this example makes your page eligible for the following Google Search rich results. The primary target drives the required / recommended property classification in the advanced code block above.
- Google docsNo dedicated rich result (used by patient-information graphs and AI healthcare assistants)
Common MedicalTest mistakes
Mistakes that pass validation but silently fail to earn rich results or mislead consumers walking the graph. Avoid these and your markup will be ahead of most sites in the wild.
- 01
MedicalTest where BloodTest / ImagingTest fits
WrongBare MedicalTest on an HbA1c or chest X-rayRightDual-type to the most specific subtype: ["MedicalTest", "BloodTest"]Subtype signalling lets healthcare consumers route tests to the right discipline (haematology lab vs radiology suite).
- 02
normalRange omitted on quantitative tests
WrongQuantitative test with no reference rangeRightAlways populate normalRange in the format clinical readers expectThe reference range is what makes a number actionable; without it, the test result is uninterpretable.
- 03
Missing LOINC code
WrongLab test with no LOINC codeRightPair every lab test with at least its LOINC code (and ideally CPT for billing)LOINC is the universal lab-test identifier; FHIR / EHR consumers cannot reconcile tests across labs without it.
Schema properties in this example
About the example data
HbA1c (haemoglobin A1c) as offered by Lackawanna Diagnostic Services and used in Dunmore Family Clinic's diabetes-management workflow.
Comments
Loading comments...