Если вы фанат типологий, таксономий и различных других способов организации мира и являетесь веб-разработчиком, вам следует перейти на schema.org ПРЯМО СЕЙЧАС.

Schema.org «представляет собой совместную деятельность сообщества, цель которой - создавать, поддерживать и продвигать схемы для структурированных данных в Интернете, на веб-страницах, в сообщениях электронной почты и т. Д.». Другими словами, это общий проект, предназначенный для сбора и систематизации всех возможных типов данных, существующих в Интернете. Если эта идея не волнует вас до глубины души, тогда ... может быть, этот блог не для вас. В этом блоге я объясню вариант использования schema.org (именно так я и узнал о нем), а затем погрузюсь в некоторые интересные типы и свойства, которые можно найти в этом сокровищнице. -тровь разметки данных. Наконец, я коснусь того, как реализовать код схемы.

Я впервые наткнулся на schema.org, когда просматривал репозиторий GitHub для RecipeFilter, расширения Chrome, которое пропускает историю жизни бабушки блоггера с рецептами и предлагает рецепт для нетерпеливых и голодных читателей.

В приведенном выше коде показан javascript-массив потенциальных селекторов рецептов (как определено разработчиком расширения Chrome). Эти селекторы используются позже в коде для извлечения элемента рецепта из всего остального содержимого на странице. Очевидно, что существует несколько способов определения элемента рецепта на данном сайте, но каково значение «div [itemtype =» http://schema.org/Recipe] »?

Schema.org организован по типам (или классам), которые содержат свойства. Свойства включают в себя различные атрибуты, которые обычно можно включать для данного типа. Так, например, тип Recipe включает такие свойства, как cookTime, CookMethod и даже подходящуюForDiet. Эти свойства могут быть включены в разметку сайта, чтобы упростить чтение содержимого для таких приложений, как RecipeFinder, и эта информация имеет решающее значение для поисковой оптимизации и очистки данных.

Типы также могут иметь несколько родительских типов, от которых они также наследуют свойства. Так, например, глядя на снимок типа Recipe выше, мы видим, что он наследуется от следующих типов: Thing, CreativeWork, HowTo. Каждый из этих типов имеет свой собственный набор свойств, которые также могут быть применены к рецепту.

Если вы еще не собрались, я большой ботаник в подобных вещах, поэтому, конечно, я потратил слишком много времени, щелкая по разным типам, пытаясь найти наиболее интересное / эзотерическое. Наверное, моя любимая категория в супертипе «Вещь - нематериальная». Поскольку большинство вещей в сети и в жизни в целом нематериальны, этот тип содержит множество подтипов. Тем не менее, просматривая список, вы действительно можете понять, почему эти категории важны. Например, нематериальный тип содержит тип «Роль». Роль может означать несколько вещей: это может означать роль, которую актер играет в театральной постановке, или это может означать роль сотрудников в организации. Помните, что компьютеры одновременно очень умны и очень глупы; они не знают разницы между ролью в работе и ролью в театре. Что ж, хорошая новость заключается в том, что schema.org еще больше разбивает тип Role на OrganizationRole и PerformanceRole, устраняя любую потенциальную вычислительную путаницу.

Так почему же вам должен быть интересен schema.org? Кроме того, что это очень-очень круто? Что ж, возвращаясь к примеру RecipeFilter: представьте, если бы все сайты рецептов использовали стандартизированный тип recipe schema.org. То, что было массивом из 11 возможных элементов, можно было сократить до двух, что упростило написание, чтение и выполнение кода. Кроме того, реализация схемы в базе кода позволяет улучшить SEO. Я также могу представить себе специальные приложения, которые упрощают синтаксический анализ информации на сайте для таких вещей, как программы чтения с экрана или переводчики текста.

Реализовать схему в вашем коде можно разными способами, но JSON-LD является наиболее распространенным / простым. Чтобы получить хорошее представление о том, как реализовать схему с использованием JSON-LD, ознакомьтесь с этим сообщением в блоге Northwoods Digital.