Представь Schema.org как большой словарь: слева — названия сущностей мира (человек, организация, книга, событие, товар, рецепт), справа — их свойства (имя, дата рождения, автор, цена). Твоя задача при разметке — найти в словаре подходящий тип и заполнить его релевантные свойства.

К 2026 году словарь Schema.org содержит более 800 типов, 1390 свойств, 15 базовых типов данных и десятки enumeration-значений. Найти нужное с первого захода — половина успеха. Разбираем, как ориентироваться.

Иерархия типов

Типы устроены как дерево наследования от одного корня — Thing. От него отходят фундаментальные ветви: CreativeWork (для медиа, статей, книг), Person, Organization, Place, Event, Product, Intangible. Каждый разветвляется дальше.

Thing
├── CreativeWork
│   ├── Article
│   │   ├── NewsArticle
│   │   ├── BlogPosting
│   │   ├── ScholarlyArticle
│   │   └── TechArticle
│   ├── Book
│   ├── Course
│   ├── Movie
│   ├── MusicRecording
│   └── Recipe
├── Event
│   ├── BusinessEvent
│   ├── ChildrensEvent
│   ├── ComedyEvent
│   ├── EducationEvent
│   └── SportsEvent
├── Person
├── Organization
│   ├── Corporation
│   ├── EducationalOrganization
│   ├── LocalBusiness
│   │   ├── Restaurant
│   │   ├── Store
│   │   └── AutoDealer
│   └── SportsOrganization
├── Place
│   ├── LocalBusiness       ← пересечение веток
│   ├── TouristAttraction
│   └── Residence
└── Product
    ├── IndividualProduct
    ├── ProductGroup
    └── SomeProducts

Иерархия важна для двух вещей. Первое — наследование свойств: подтип автоматически получает все свойства родителя. У NewsArticle есть все свойства Article, а у него — все свойства CreativeWork, а у того — все свойства Thing (базовые: name, description, image, url).

Второе — выбор между общим и специфичным типом. Для новостной статьи можно использовать Article, но NewsArticle точнее описывает контент и включается в Google News. Для ресторана — можно Organization, но Restaurant даёт доступ к специальным свойствам (меню, часы работы, кухня) и попадает в Google Maps.

Правило: используй самый специфичный тип, свойства которого ты можешь заполнить

Не гонись за наиболее специфичным типом ради специфичности. Ориентир — если у тебя есть данные под большинство свойств специфичного типа, выбирай его. Если нет, поднимись выше по иерархии.

У тебя товар с ценой, картинкой, названием — но без serial-number, model, aggregateRating
→ используй Product, не переусложняй до IndividualProduct

У тебя ресторан с меню, часами работы, адресом
→ используй Restaurant (получишь Google Maps и Rich Results для ресторанов)

У тебя блог-пост со всеми стандартными полями
→ используй BlogPosting или NewsArticle, не голый Article

Как найти нужный тип

Три пути:

  1. Поиск по полному списку типов. Все типы одной страницей, можно грепать. Медленный, но исчерпывающий.
  2. Google «schema.org <тема>». Например, «schema.org recipe» выведет прямо на https://schema.org/Recipe. Быстрее всего.
  3. Google Search Central → Structured Data Reference. Не все типы Schema.org одинаково полезны — Google рендерит Rich Results только для ~30 из 800+ типов. Список Google-supported типов и требуемых свойств — здесь.

Третий путь — практический ориентир. Если ты разметишь TVSeries по Schema.org полностью, но Google не поддерживает Rich Results для этого типа — SEO-эффект будет только косвенный. Не бесполезный (Knowledge Graph, голосовые ассистенты, будущие фичи), но не даст видимого прироста в SERP.

Enumeration-значения

Некоторые свойства ожидают не произвольную строку, а одно из чётко определённых значений — enumeration. Пример — свойство availability у Offer:

availability допускает только эти значения:
- https://schema.org/InStock
- https://schema.org/OutOfStock
- https://schema.org/OnlineOnly
- https://schema.org/InStoreOnly
- https://schema.org/PreOrder
- https://schema.org/Discontinued
- https://schema.org/LimitedAvailability
- https://schema.org/SoldOut

Любая другая строка (даже "in stock" без ссылки) — невалидна.

Enumeration-значения записываются как URL, начинающийся с https://schema.org/. В JSON-LD это выглядит естественно: "availability": "https://schema.org/InStock". В микроданных — так же, как значение href или содержимое <meta content="...">.

Расширения (Schema.org Extensions)

Помимо основного словаря есть «расширения» для специфичных доменов — auto (машины), bib (библиография), pending (тестовые типы). Они находятся на поддоменах, например https://auto.schema.org/.

Расширения имеют смысл только если ты работаешь в узкой нише (авто, библиотека, здравоохранение), и стандартный словарь не покрывает специфику. В большинстве случаев основного Schema.org достаточно.

Не изобретай своих типов

Соблазн ввести свой тип (MyCompany:Product) появляется, когда стандартный не идеально ложится на данные. Не поддавайся: поисковики понимают только официальные типы. Твой самопальный тип попадёт в разметку, но никто его не распознает.

Если стандартный тип не покрывает всё, что нужно — используй его как основу и добавь свои свойства через additionalProperty или расширение через сообщество Schema.org (github/schemaorg). Приватные типы редко когда оправданы.