XooCode(){

MedicalSpecialty

MedicalSpecialty is the schema.org enumeration used as the value of the medicalSpecialty property across every medical type: Hospital, Physician, MedicalClinic, Pharmacy, Dentist, MedicalEntity, and many more.

The enum has 42 members, grouped roughly by specialty area:

Full example of schema.org/MedicalSpecialty json-ld markup

The markup is verified as valid with Rich Results Test from Google.

schema.org/MedicalSpecialty
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "MedicalClinic",
  "name": "Dunmore Family Clinic",
  "medicalSpecialty": [
    "https://schema.org/PrimaryCare",
    "https://schema.org/Pediatric"
  ]
}
</script>

Internal medicine and surgery

  • Anesthesia, Cardiovascular, DermatologicSurgery, Dermatology, Emergency, Endocrine, Gastroenterologic, Genetic, Geriatric, Gynecologic, Hematologic, Infectious, Musculoskeletal, Neurologic, Obstetric, Oncologic, Otolaryngologic, Pediatric, PlasticSurgery, PrimaryCare, Psychiatric, Pulmonary, Renal, Rheumatologic, Surgical, Toxicologic, Urologic.

Allied health and diagnostic

  • CommunityHealth, Dentistry, DietNutrition, LaboratoryScience, Midwifery, Nursing, Optometric, Pathology, PharmacySpecialty, Physiotherapy, Podiatric, PublicHealth, Radiography, RespiratoryTherapy, SpeechPathology.

Using values

Always use the full schema.org URL: "medicalSpecialty": "https://schema.org/Cardiovascular". The shorthand "Cardiovascular" still validates, but URL form is what Google's healthcare entity matching keys on. Multi-specialty practices use an array.

What MedicalSpecialty does not cover

The enum is a fixed list of broad specialties; it does not include sub-specialties (interventional cardiology, paediatric cardiology, transplant nephrology). For sub-specialty signalling, combine the enum value with free-text in description or keywords. There is also no value for "veterinary" — see VeterinaryCare for that distinction.

Minimal valid version

The smallest markup that still produces a valid MedicalSpecialty 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.

schema.org/MedicalSpecialty (minimal)
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Physician",
  "name": "Priya Chen, MD",
  "medicalSpecialty": "https://schema.org/Cardiovascular"
}
</script>

Google rich results this unlocks

MedicalSpecialty is a structural type. It does not produce a rich result on its own.

Its value comes from combining it with a primary type whose markup earns a rich result (Article, Product, Event, and so on). MedicalSpecialty becomes the trunk that the primary type branches off viamainEntityorbreadcrumb. Include it on every page as the backbone of your markup.

Common MedicalSpecialty 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.

  1. 01

    Free-text specialty names

    Wrong
    "medicalSpecialty": "Cardiology"
    Right
    "medicalSpecialty": "https://schema.org/Cardiovascular"

    The enum URL is what Google healthcare-search matches on. Free text is parsed but not filtered.

  2. 02

    Inventing sub-specialty values

    Wrong
    "medicalSpecialty": "https://schema.org/InterventionalCardiology"
    Right
    Use https://schema.org/Cardiovascular and add the sub-specialty in description / keywords

    The enum is fixed; invented URLs do not match anything.

  3. 03

    Single specialty for a multi-specialty practice

    Wrong
    Single value on a clinic that does primary care AND paediatrics
    Right
    Array of all relevant enum URLs

    Multi-specialty matching depends on the array; single values understate the practice's reach.

About the example data

The medicalSpecialty values used across Xoo Code's fictional Dunmore healthcare cluster: Hospital, Family Clinic, Cardiology, Pharmacy, Pet Hospital, Eyewear.

Comments

Loading comments...

Leave a comment