Практические задачи

Чтобы учащимся, родителям и преподавателям было проще находить ваши обучающие материалы, добавьте на сайт структурированные данные для практических задач. В этом руководстве рассказывается, как это можно сделать. После этого ваши задачи будут появляться на страницах результатов Google Поиска в особом блоке.

Изображение с примером задачи в расширенных результатах

Как добавлять структурированные данные

Структурированные данные – стандартизированный формат, используемый для представления сведений о странице и классификации ее контента. Подробнее о принципах работы структурированных данных

Ниже в общих чертах описано, как создать, проверить и добавить на сайт структурированные данные. Пошаговые инструкции вы найдете в этой практической работе.

  1. Добавьте обязательные свойства. Узнайте, в каких частях страницы нужно размещать структурированные данные выбранного вами формата.
  2. Следуйте рекомендациям.
  3. Протестируйте свой код с помощью инструмента проверки расширенных результатов.
  4. Опубликуйте страницу и с помощью инструмента проверки URL посмотрите, как она выглядит в результатах поиска Google. Убедитесь, что доступ Google к странице не заблокирован файлом robots.txt или метатегом noindex и для доступа к странице не требуется авторизация. Если все в порядке, запросите повторное сканирование ваших URL.
  5. Отправляйте нам файл Sitemap, чтобы информировать нас об изменениях на сайте. Отправку такого файла можно автоматизировать с помощью Search Console Sitemap API.

Доступность

Разметка для практических задач доступна для сайтов на английском языке во всех регионах, где есть Google Поиск. Ее можно использовать для задач в области математики, физики и других наук. Поддерживаются вопросы с одним или несколькими вариантами ответа. Разметка доступна как для компьютеров, так и для мобильных устройств.

Примеры

Тест с одним вопросом

Вот пример теста, в котором есть только один вопрос. Верный ответ тоже только один.

<html>
  <head>
    <title>Quiz about fractions</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Quiz",
      "name": "Quiz about fractions",
      "hasPart": {
        "@type": "Question",
        "typicalAgeRange": "7-12",
        "educationalAlignment": [
          {
            "@type": "AlignmentObject",
            "alignmentType": "educationalSubject",
            "targetName": "Mathematics"
          },
          {
            "@type": "AlignmentObject",
            "alignmentType": "educationalSubject",
            "targetName": "Algebra"
          },
          {
            "@type": "AlignmentObject",
            "alignmentType": "educationalLevel",
            "targetName": "Grade 5 » Number & Operations—Fractions » Apply and extend previous understandings of multiplication and division. » 3",
            "educationalFramework": "Common Core",
            "targetUrl": "http://www.corestandards.org/Math/Content/5/NF/B/3/"
          }
        ],
        "about": {
          "@type": "Thing",
          "name": "Fractions"
        },
        "educationalLevel": "intermediate",
        "eduQuestionType": "Multiple choice",
        "learningResourceType": "Practice problem",
        "assesses": "Multiplying fractions by whole numbers",
        "name": "Choose the model",
        "comment": {
          "@type": "Comment",
          "text": "This is a hint about the question."
        },
        "encodingFormat": "text/markdown",
        "text": "Which model represents the product $$2 * \\frac{2}{3}$$?",
        "suggestedAnswer": [
          {
            "@type": "Answer",
            "position": 0,
            "encodingFormat": "text/html",
            "text": "<img src=\"www.test.com/practice-problems-fractions/…image2.png\" alt=\"Answer 2\" />",
            "comment": {
              "@type": "Comment",
              "text": "This is a hint about the answer."
            }
          }
        ],
        "acceptedAnswer": {
          "@type": "Answer",
          "position": 1,
          "encodingFormat": "text/html",
          "text": "<img src=\"www.test.com/practice-problems-fractions/…image1.png\" alt=\"Answer 1\" />",
          "comment": {
            "@type": "Comment",
            "text": "This is a hint about the answer."
          },
          "answerExplanation": {
            "@type": "Comment",
            "text": "This is a full explanation on how this answer was achieved."
          }
        }
      }
    }
    </script>
  </head>
  <body>
  </body>
</html>

Тест с одним вопросом и несколькими вариантами ответа

Вот пример теста, в котором есть только один вопрос. Правильных вариантов ответа при этом несколько.

<html>
  <head>
    <title>Quiz about laws of Physics</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Quiz",
      "name": "Quiz about laws of physics",
      "about": {
        "@type": "Thing",
        "name": "Laws of Physics And Applications"
      },
      "educationalLevel": "intermediate",
      "assesses": "Laws of physics",
      "hasPart": {
        "@type": "Question",
        "eduQuestionType": "Checkbox",
        "learningResourceType": "Practice problem",
        "name": "Laws of Physics And Applications",
        "typicalAgeRange": "12-15",
        "text": "Identify laws of Physics. (Select all valid answers)",
        "suggestedAnswer": [
          {
            "@type": "Answer",
            "position": 0,
            "text": "Nevada's Law",
            "comment": {
              "@type": "Comment",
              "text": "This is a hint"
            }
          },
          {
            "@type": "Answer",
            "position": 2,
            "text": "EUA law",
            "comment": {
              "@type": "Comment",
              "text": "This is a hint"
            }
          }
        ],
        "acceptedAnswer": [
          {
            "@type": "Answer",
            "position": 1,
            "text": "Newton's law",
            "comment": {
              "@type": "Comment",
              "text": "This is a hint"
            },
            "answerExplanation": {
              "@type": "Comment",
              "text": "This is a full explanation on how this answer was achieved."
            }
          },
          {
            "@type": "Answer",
            "position": 3,
            "text": "Ohm's law",
            "comment": {
              "@type": "Comment",
              "text": "This is a hint"
            },
            "answerExplanation": {
              "@type": "Comment",
              "text": "This is a full explanation on how this answer was achieved."
            }
          }
        ]
      }
    }
    </script>
  </head>
  <body>
  </body>
</html>

Тест с несколькими вопросами

Вот пример теста с несколькими вопросами.

<html>
  <head>
    <title>Quiz about displacement, velocity and time</title>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Quiz",
      "typicalAgeRange": "7-12",
      "educationalLevel": "intermediate",
      "assesses": "Velocity and speed",
      "educationalAlignment": [
        {
          "@type": "AlignmentObject",
          "alignmentType": "educationalSubject",
          "targetName": "Science"
        },
        {
          "@type": "AlignmentObject",
          "alignmentType": "educationalSubject",
          "targetName": "Physics"
        }
      ],
      "name": "Quiz about displacement, velocity and time",
      "about": {
        "@type": "Thing",
        "name": "Displacement, velocity, and time"
      },
      "hasPart": [
        {
          "@type": "Question",
          "eduQuestionType": "Multiple choice",
          "learningResourceType": "Practice problem",
          "name": "Average velocity and average speed from graphs",
          "text": "A bug crawls on a wall. What is the average velocity of the bug between the times $$t = 1s$$ and $$t = 10s$$?",
          "comment": {
            "@type": "Comment",
            "text": "This is a hint about the question."
          },
          "encodingFormat": "text/markdown",
          "suggestedAnswer": [
            {
              "@type": "Answer",
              "position": 0,
              "encodingFormat": "text/markdown",
              "text": "$$0.5 \\frac{m}{s}$$",
              "comment": {
                "@type": "Comment",
                "text": "This is a hint"
              }
            },
            {
              "@type": "Answer",
              "position": 1,
              "encodingFormat": "text/markdown",
              "text": "$$-0.5 \\frac{m}{s}$$",
              "comment": {
                "@type": "Comment",
                "text": "This is a hint"
              }
            },
            {
              "@type": "Answer",
              "position": 3,
              "encodingFormat": "text/markdown",
              "text": "$$1.5 \\frac{m}{s}$$",
              "comment": {
                "@type": "Comment",
                "text": "This is a hint"
              }
            }
          ],
          "acceptedAnswer": {
            "@type": "Answer",
            "position": 2,
            "encodingFormat": "text/markdown",
            "text": "$$0 \\frac{m}{s}$$",
            "comment": {
              "@type": "Comment",
              "text": "This is a hint"
            }
          }
        },
        {
          "@type": "Question",
          "eduQuestionType": "Multiple choice",
          "learningResourceType": "Practice problem",
          "name": "Average velocity and average speed from graphs",
          "text": "A swimmer motion is shown on the following graph of position x vs. time t. What is the average speed?",
          "encodingFormat": "text/markdown",
          "comment": {
            "@type": "Comment",
            "text": "This is a hint about the question."
          },
          "suggestedAnswer": [
            {
              "@type": "Answer",
              "position": 0,
              "text": "1",
              "encodingFormat": "text/html",
              "comment": {
                "@type": "Comment",
                "text": "This is a hint"
              }
            },
            {
              "@type": "Answer",
              "position": 2,
              "text": "3",
              "encodingFormat": "text/html",
              "comment": {
                "@type": "Comment",
                "text": "This is a hint"
              }
            },
            {
              "@type": "Answer",
              "position": 3,
              "text": "4",
              "encodingFormat": "text/html",
              "comment": {
                "@type": "Comment",
                "text": "This is a hint"
              }
            }
          ],
          "acceptedAnswer": {
            "@type": "Answer",
            "position": 1,
            "text": "2",
            "encodingFormat": "text/html",
            "comment": {
              "@type": "Comment",
              "text": "This is a hint"
            },
            "answerExplanation": {
              "@type": "Comment",
              "text": "This is a full explanation on how this answer was achieved."
            }
          }
        }
      ]
    }
    </script>
  </head>
  <body>
  </body>
</html>

Правила

Чтобы информация о практических задачах появлялась в Google Поиске, необходимо соблюдать перечисленные ниже правила.

Технические требования

  • Размещайте структурированные данные на страницах, содержащих самые подробные сведения об отдельных задачах. Не добавляйте структурированные данные на страницы без задач.
  • Используйте свойство Quiz для каждой задачи, которую вы хотите показывать в результатах поиска. Структурированные данные нужно вставить в код страницы, которая содержит задачу и доступна для пользователей.
  • На вашей веб-странице должны присутствовать все обязательные свойства структурированных данных.
  • Разметьте как минимум две практические задачи на каждую тему (например, "Квадратные уравнения"). Разметьте темы и задачи, которые вы хотите показывать в расширенных результатах. При этом задачи могут находиться на разных страницах.
  • Практические задачи на сайте должны быть доступны для пользователей. Не размещайте их в файле с данными или PDF.
  • Проверьте, допускают ли настройки нагрузки на хост частое сканирование.
  • Если на сайте есть несколько копий задачи с разными URL, используйте для каждой страницы канонические URL.
  • Для задач, где есть только текст:
    • Текст вопроса не должен быть длиннее 320 символов.
    • Каждый ответ на вопрос с несколькими вариантами не должен превышать 70 символов.
  • Для задач с текстом и изображением:
    • Длина вопроса не должна превышать 160 символов.
    • Максимальная высота изображения составляет 200 пикселей.
  • Доступность. Нельзя публиковать задачи, для просмотра которых необходимо войти в систему или заплатить. Контент должен быть доступен сразу же после перехода на страницу из результатов поиска Google. Дополнительные материалы могут предоставляться за плату или только зарегистрированным пользователям.
  • Искажение фактов. Мы не публикуем задачи, которые созданы с целью исказить факты или ввести пользователей в заблуждение. В том числе нельзя добавлять структурированные данные для материалов, не связанных с темой вопроса.

Требования к контенту

Мы ввели эти правила для того, чтобы пользователи наших сервисов всегда могли найти подходящие обучающие материалы. Если мы обнаружим контент, нарушающий эти правила, то предпримем необходимые в конкретном случае действия. В частности, мы можем принять меры вручную и удалить неприемлемые материалы из специального раздела Google Поиска.

Непристойная и грубая лексика

В практических задачах не должно быть непристойной, грубой и оскорбительной лексики.

Маскировка рекламы под задачи

Запрещается публиковать под видом задачи рекламу, в том числе от третьих лиц (например, информацию о партнерских программах).

Если мы получим жалобу на какое-либо нарушение в практической задаче, решение будет приниматься согласно правилам Поиска.

Качество

  • Ответственность за точность и качество контента в практических задачах несете вы. Если какие-то ваши данные в ходе проверки будут признаны неточными, то мы удалим из Поиска все ваши задачи или их часть до тех пор, пока вы не исправите ошибки. Меры зависят от серьезности нарушений. Обратите внимание на следующее:
    • Соответствие размеченных теоретических материалов вопросу, который вы задаете.
    • Формат и точность вопроса, ответов, подсказок и пояснений.
    • Правильный порядок ответов (например, вариант "Ничего из перечисленного выше" не должен быть первым в списке).
    • Качество изображений и формул, а также их соответствие вопросу.
    • Отображение математических символов и разделителей.

Разметка контента, связанного с образовательными стандартами

Образовательные стандарты определяют цели для учащихся: что они должны знать и уметь на каждом конкретном уровне. Такие стандарты используются в различных целях. Например, на них можно ссылаться в материалах или определять по ним уровень пользователя. Указав в разметке стандарты (поля educationalAlignment и hasPart.educationalAlignment), вы поможете Google лучше структурировать данные и показывать пользователям контент, который будет для них актуален.

Вот некоторые примеры стандартов:

  • Common Core State Standards
  • Texas Essential Knowledge and Skills (TEKS)
  • Virginia Standards of Learning (SOL)
  • BC Performance Standards
  • Alberta Programs of Studies
  • The Australian Curriculum (ACARA)
  • The Victorian Curriculum (F-10)
  • UK National Curriculum

Типы структурированных данных

Чтобы контент мог появиться в расширенных результатах, необходимо задать все обязательные свойства. Советуем задать и рекомендуемые нами свойства: так пользователям будет удобнее.

Quiz

Тест (Quiz) – это одна или несколько практических задач, объединенных общей темой.

Полное описание типа Quiz приведено на сайте schema.org.

Обязательные свойства
about Thing

Вложенная информация о теме, с которой связан Quiz. Если для вопроса задано свойство hasPart.about, то это свойство не требуется.


{
  "@type": "Quiz",
  "about": {
    "@type": "Thing"
  }
}
about.name Text

Вложенная информация о теме, с которой связан Quiz. Если для вопроса задано свойство hasPart.about.name, то это свойство не требуется. Допускается несколько экземпляров этого свойства.


{
  "@type": "Quiz",
  "about": {
    "@type": "Thing",
    "name": "Fractions"
  }
}
hasPart Question

Вложенная информация о конкретной практической задаче, которой посвящен тест. Используйте одно свойство hasPart для каждой конкретной задачи.

Если задач в тесте должно быть несколько, добавьте это свойство несколько раз.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question"
  }
}
hasPart.acceptedAnswer Answer

Правильный ответ на вопрос. Если правильных ответов несколько, добавьте это свойство несколько раз.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "acceptedAnswer": {
      "@type": "Answer"
    }
  }
}
hasPart.eduQuestionType Text

Тип практической задачи. Для Google Поиска крайне важно получать и проверять данные о правильных и неправильных ответах. У каждого вопроса может быть от двух до шести вариантов ответа.

Используйте одно из поддерживаемых значений:

  • Multiple choice – если верный ответ только один. Варианты ответа работают как переключатель, то есть пользователь может выбрать только один из них.
  • Checkbox – если верных ответов несколько. Варианты ответа отображаются как список флажков, а пользователь может отметить несколько из них.

{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "eduQuestionType": "Multiple choice"
  }
}
hasPart.learningResourceType Text

Тип образовательного ресурса. Используйте фиксированное значение: Practice problem.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "learningResourceType": "Practice problem"
  }
}
hasPart.suggestedAnswer Answer

Все остальные (верные и неверные) ответы на вопрос. Чтобы указать несколько ответов, добавьте несколько экземпляров свойства.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "suggestedAnswer": {
      "@type": "Answer",
    }
  }
}
hasPart.suggestedAnswer.text Text

Содержание ответа. Можно использовать синтаксис Markdown или HTML. Узнайте, как размечать практические задачи с помощью синтаксиса HTML или Markdown.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "suggestedAnswer": {
      "@type": "Answer",
      "text": "$$x = 1$$"
    }
  }
}
hasPart.text Text

Содержание вопроса. Можно использовать синтаксис Markdown или HTML. Узнайте, как размечать практические задачи с помощью синтаксиса HTML или Markdown.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "text": "Which diagram represents the product $$3 *\frac{2}{3}$$?"
  }
}
Рекомендуемые свойства
educationalAlignment AlignmentObject

Соответствие теста официальному образовательному стандарту. Это свойство может повторяться, если вам необходимо соотнести тест с определенной дисциплиной, областью знаний, целевой оценкой или образовательным стандартом. Вы можете добавить эти сведения непосредственно в элемент Quiz или, для большей точности, в Question.


{
  "@type": "Quiz",
  "educationalAlignment": []
}
educationalAlignment.alignmentType Text

Категория соответствия образовательного ресурса и уровня образовательного стандарта для теста. В Google Поиске используется стандарт LRMI.

Добавьте несколько экземпляров alignmentType, чтобы указать дисциплину и целевую оценку или образовательный стандарт.

  • Чтобы указать для теста дисциплину или область знаний, задайте для alignmentType значение educationalSubject.
  • Чтобы указать целевую оценку или образовательный стандарт, задайте для alignmentType значение educationalLevel.

Если используются другие отрасли и подотрасли знаний, вы можете добавить несколько объектов. Чтобы указать тематику вопроса, используйте свойство about.

Ниже показано, как указать и educationalSubject, и educationalLevel:


{
  "@type": "Quiz",
  "educationalAlignment": [
    {
      "@type": "AlignmentObject",
      "alignmentType": "educationalSubject",
      "targetName": "Mathematics"
    },
    {
      "@type": "AlignmentObject",
      "alignmentType": "educationalLevel",
      "targetName": "Fifth grade"
    }
  ]
}

Чтобы сослаться на образовательные стандарты, используйте свойства educationalAlignment.educationalFramework и educationalAlignment.targetUrl .


{
  "@type": "Quiz",
  "educationalAlignment: [
  {
    "@type": "AlignmentObject",
    "alignmentType": "educationalLevel",
    "educationalFramework": "Common Core",
    "targetName": "Grade 8: Expressions & Equations",
    "targetUrl": "http://www.corestandards.org/Math/Content/8/EE/A/2/"
    }
  ]
}
educationalAlignment.educationalFramework Text

Стандарт, которому соответствует тест (например, Common Core). Дополнительную информацию о том, почему это свойство важно, вы можете найти в разделе Разметка контента, связанного с образовательными стандартами. Допускается несколько экземпляров этого свойства.

educationalAlignment.targetName Text

Название уровня по официальному образовательному стандарту. Пример: "Уровень 8: выражения и уравнения".


{
  "@type": "Quiz",
  "educationalAlignment: [
  {
    "@type": "AlignmentObject",
    "targetName": "Grade 8: Expressions & Equations"
    }
  ]
}
educationalAlignment.targetUrl URL

URL сайта определенного образовательного стандарта. Например, ссылка на стандарт Common Core по математике для 8-го класса.


{
  "@type": "Quiz",
  "educationalAlignment: [
  {
    "@type": "AlignmentObject",
    "targetUrl": "http://www.corestandards.org/Math/Content/8/EE/A/2/"
    }
  ]
}
educationalLevel Text

Уровень сложности теста. Вот некоторые примеры значений:

  • beginner
  • intermediate
  • advanced

{
  "@type": "Quiz",
  "educationalLevel": "beginner"
}
hasPart.about Thing

Вложенная информация о теме, с которой связан вопрос. Если для объекта Quiz не указано свойство about, то свойство hasPart.about является обязательным. Допускается несколько экземпляров этого свойства.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "about": {
      "@type": "Thing"
    }
  }
}
hasPart.about.name Text

Тема, с которой связан вопрос. Если для объекта Quiz не указано свойство about.name, то свойство hasPart.about.name является обязательным.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "about": {
      "@type": "Thing",
      "name": "Fractions"
    }
  }
}
hasPart.acceptedAnswer.answerExplanation Comment

Подробное описание того, как получить результат, указанный в ответе. Обычно это свойство применяется только для правильных ответов. Используйте вложенное свойство hasPart.suggestedAnswer.comment.text для пояснений.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "acceptedAnswer": {
      "@type": "Answer",
      "answerExplanation": {
        "@type": "Comment"
       }
    }
  }
}
hasPart.acceptedAnswer.answerExplanation.text Text

Контент с пояснением предложенного ответа. Чтобы изменить формат контента (HTML или Markdown), используйте свойство encodingFormat. Узнайте, как размечать практические задачи с помощью синтаксиса HTML или Markdown.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "suggestedAnswer": {
      "@type": "Answer",
      "answerExplanation": {
        "@type": "Comment",
        "text": "*In order to get to this result..*",
        "encodingFormat": "text/markdown"
       }
    }
  }
}
hasPart.acceptedAnswer.comment Comment

Подсказка, которая может помочь пользователю понять, почему ответ верен. Чтобы добавить контент подсказки, используйте вложенное свойство hasPart.acceptedAnswer.comment.text.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "acceptedAnswer": {
      "@type": "Answer",
      "comment": {
        "@type": "Comment"
      }
    }
  }
}
hasPart.acceptedAnswer.comment.text Text

Контент подсказки для предложенного ответа. Чтобы изменить формат контента (HTML или Markdown), используйте свойство encodingFormat. Узнайте, как размечать практические задачи с помощью синтаксиса HTML или Markdown.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "acceptedAnswer": {
      "@type": "Answer",
      "comment": {
        "@type": "Comment",
        "text": "<p>This is a hint</p>"
      }
    }
  }
}
hasPart.acceptedAnswer.position Integer

Положение ответа при показе пользователю.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "acceptedAnswer": {
      "@type": "Answer",
      "position": "2"
    }
  }
}
hasPart.assesses DefinedTerm или Text

Навыки, необходимые для решения задачи. Если вы укажете эти данные, пользователям будет проще найти ваш контент.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "assesses": "Multiplying fractions by whole numbers"
  }
}
hasPart.comment Comment

Подсказка, которая может помочь пользователю найти ответ на вопрос. Чтобы добавить контент подсказки, используйте вложенное свойство hasPart.comment.text.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "comment": {
      "@type": "Comment"
    }
  }
}
hasPart.comment.text Text

Контент подсказки для вопроса. Чтобы изменить формат контента (HTML или Markdown), используйте свойство encodingFormat. Узнайте, как размечать практические задачи с помощью синтаксиса HTML или Markdown.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "comment": {
      "@type": "Comment",
      "text": "<p>This is a hint</p>"
    }
  }
}
hasPart.educationalAlignment AlignmentObject

Соответствие вопроса официальному образовательному стандарту. Это свойство переопределяет данные, указанные в объекте Quiz.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "educationalAlignment": []
}
hasPart.educationalAlignment.alignmentType Text

Категория соответствия образовательного ресурса и уровня образовательного стандарта для вопроса. В Google Поиске используется стандарт LRMI.

Добавьте несколько экземпляров alignmentType, чтобы указать дисциплину и целевую оценку или образовательный стандарт.

  • Чтобы указать для вопроса дисциплину или область знаний, задайте для alignmentType значение educationalSubject.
  • Чтобы указать целевую оценку или образовательный стандарт, задайте для alignmentType значение educationalLevel.

Если используются другие отрасли и подотрасли знаний, вы можете добавить несколько объектов. Чтобы указать тематику вопроса, используйте свойство hasPart.about.

Ниже показано, как указать и educationalSubject, и educationalLevel:


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "educationalAlignment": [
      {
      "@type": "AlignmentObject",
      "alignmentType": "educationalSubject",
      "targetName": "Mathematics"
      },
      {
      "@type": "AlignmentObject",
      "alignmentType": "educationalLevel",
      "targetName": "Fifth grade"
      }
    ]
  }
}

Чтобы сослаться на образовательные стандарты, используйте свойства hasPart.educationalAlignment.educationalFramework и hasPart.educationalAlignment.targetUrl.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "educationalAlignment: [
      {
      "@type": "AlignmentObject",
      "alignmentType": "educationalLevel",
      "educationalFramework": "Common Core",
      "targetName": "Grade 8: Expressions & Equations",
      "targetUrl": "http://www.corestandards.org/Math/Content/8/EE/A/2/"
      }
    ]
  }
}
hasPart.educationalAlignment.educationalFramework Text

Стандарт, которому соответствует вопрос (например, Common Core). Дополнительную информацию о том, почему это свойство важно, вы можете найти в разделе Разметка контента, связанного с образовательными стандартами. Допускается несколько экземпляров этого свойства.

hasPart.educationalAlignment.targetName Text

Название уровня по официальному образовательному стандарту. Пример: "Уровень 8: выражения и уравнения".


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "educationalAlignment: [
      {
      "@type": "AlignmentObject",
      "alignmentType": "educationalLevel",
      "targetName": "Grade 8: Expressions & Equations"
      }
    ]
  }
}
hasPart.educationalAlignment.targetUrl URL

URL сайта определенного образовательного стандарта, которому соответствует вопрос. Например, ссылка на стандарт Common Core по математике для 8-го класса.

hasPart.educationalLevel Text

Уровень сложности вопроса в текстовом формате. Вот некоторые примеры значений:

  • beginner
  • intermediate
  • advanced

{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "educationalLevel": "beginner"
  }
}
hasPart.name Text

Общее описание вопроса. Не приводите содержание вопроса полностью, а используйте свойство hasPart.text.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "name": "Question about fractions"
  }
}
hasPart.suggestedAnswer.comment Comment

Подсказка, которая может помочь пользователю понять, верный это ответ или неверный. Чтобы добавить контент подсказки, используйте вложенное свойство hasPart.suggestedAnswer.comment.text.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "suggestedAnswer": {
      "@type": "Answer",
      "comment": {
        "@type": "Comment"
      }
    }
  }
}
hasPart.suggestedAnswer.comment.text Text

Контент подсказки для предложенного ответа. Чтобы изменить формат контента (HTML или Markdown), используйте свойство encodingFormat. Узнайте, как размечать практические задачи с помощью синтаксиса HTML или Markdown.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "suggestedAnswer": {
      "@type": "Answer",
      "comment": {
        "@type": "Comment",
        "text": "<p>This is a hint</p>"
      }
    }
  }
}
hasPart.suggestedAnswer.encodingFormat Text

Для указания формата текстового свойства используется стандарт MIME. Если значение encodingFormat не указано, по умолчанию применяется text/html. Используйте одно из следующих значений:

  • text/markdown
  • text/html

{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "suggestedAnswer": {
      "@type": "Answer",
      "encodingFormat": "text/html"
    }
  }
}

Узнайте, как размечать практические задачи с помощью синтаксиса HTML или Markdown.

hasPart.suggestedAnswer.position Integer

Положение ответа при показе пользователю.


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "suggestedAnswer": {
      "@type": "Answer",
      "position": "0"
    }
  }
}
hasPart.typicalAgeRange Text

Примерный возрастной диапазон целевой аудитории. Примеры: 7-12 или 18-


{
  "@type": "Quiz",
  "hasPart": {
    "@type": "Question",
    "typicalAgeRange": "7-12"
  }
}
name Text

Название теста.


{
  "@type": "Quiz",
  "name": "Negative exponents review"
}
typicalAgeRange Text

Примерный возрастной диапазон целевой аудитории. Примеры 7-12 или 18-.


{
  "@type": "Quiz",
  "typicalAgeRange": "7-12"
}

Разметка практических задач: синтаксис HTML и Markdown

Для кодирования текстовых значений свойств Question, Answer и Comment Google Поиск поддерживает форматы Markdown (CommonMark) и HTML. Поддерживаются только следующие элементы:

  • заголовки;
  • разрывы строки;
  • списки (упорядоченные и неупорядоченные);
  • абзацы;
  • полужирный шрифт;
  • курсив;
  • изображения;
  • формулы LaTex.

Код CSS и JavaScript игнорируется. Google не будет показывать задачи, в которых есть неподдерживаемые теги HTML.

Как указать формат

Чтобы указать, какой формат кодирования вы применяете, используйте свойство encodingFormat, присвоив ему значение "text/html" в случае с HTML или "text/markdown" в случае с Markdown.

Пример вопроса, оформленного с помощью синтаксиса Markdown:

{
  "@type": "Question",
  "name": "Average velocity and average speed from graphs",
  "text": "What is the average velocity [..] between the times $$t = 4s$$ and $$t = 10s$$?",
  "encodingFormat": "text/markdown"
  ..
  ..
}

Если формат (encodingFormat) не задан, по умолчанию предполагается "text/html".

Формулы

Чтобы добавить формулу, используйте формат LaTex. Для встраивания формул используйте двойной символ доллара ($$). Пример:

"<p>Please solve: $$2x^2 = 18$$</p>"

Устранение неполадок

Если у вас возникли трудности с добавлением или отладкой структурированных данных, вам помогут ресурсы и сведения, доступные по приведенным ниже ссылкам.