Структурированные данные для математического сервиса (MathSolver)

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

Пример расширенного результата с математическими сервисами

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

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

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

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

Примеры

Решение задач одной категории

Вот пример главной страницы математического сервиса, который может решать задачи одной категории: алгебраические уравнения и задачи на производные. Этот инструмент доступен на английском и испанском языках.


<html>
<head>
<title>An awesome math solver</title>
</head>
<body>
<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": ["MathSolver", "LearningResource"],
    "name": "An awesome math solver",
    "url": "https://www.mathdomain.com/",
    "usageInfo": "https://www.mathdomain.com/privacy",
    "inLanguage": "en",
    "potentialAction": [{
      "@type": "SolveMathAction",
      "target": "https://mathdomain.com/solve?q={math_expression_string}",
      "mathExpression-input": "required name=math_expression_string",
      "eduQuestionType": ["Polynomial Equation","Derivative"]
     }],
    "learningResourceType": "Math solver"
  },
  {
    "@context": "https://schema.org",
    "@type": ["MathSolver", "LearningResource"],
    "name": "Un solucionador de matemáticas increíble",
    "url": "https://es.mathdomain.com/",
    "usageInfo": "https://es.mathdomain.com/privacy",
    "inLanguage": "es",
    "potentialAction": [{
      "@type": "SolveMathAction",
      "target": "https://es.mathdomain.com/solve?q={math_expression_string}",
      "mathExpression-input": "required name=math_expression_string",
      "eduQuestionType": ["Polynomial Equation","Derivative"]
     }],
    "learningResourceType": "Math solver"
  }
]
</script>
</body>
</html>

Решение задач двух категорий

Вот пример главной страницы инструмента, который может решать задачи двух категорий: алгебраические уравнения и тригонометрические уравнения. Этот инструмент доступен только на английском языке.


<html>
<head>
<title>An awesome math solver</title>
</head>
<body>
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": ["MathSolver", "LearningResource"],
  "name": "An awesome math solver",
  "url": "https://www.mathdomain.com/",
  "usageInfo": "https://www.mathdomain.com/privacy",
  "inLanguage": "en",
  "potentialAction": [{
     "@type": "SolveMathAction",
     "target": "https://mathdomain.com/solve?q={math_expression_string}",
     "mathExpression-input": "required name=math_expression_string",
     "eduQuestionType": "Polynomial Equation"
   },
   {
     "@type": "SolveMathAction",
     "target": "https://mathdomain.com/trig?q={math_expression_string}",
     "mathExpression-input": "required name=math_expression_string",
     "eduQuestionType": "Trigonometric Equation"
   }],
  "learningResourceType": "Math solver"
}
</script>
</body>
</html>

Рекомендации

Если вы хотите, чтобы ваша страница могла появляться в расширенных результатах поиска с математическими сервисами, следуйте этим инструкциям:

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

  • Добавьте структурированные данные MathSolver на главную страницу своего сайта.
  • Убедитесь, что робот Googlebot может эффективно сканировать ваш сайт.
  • Если несколько одинаковых копий математического сервиса находятся на разных URL, используйте для каждой копии страницы канонические URL.
  • Нельзя использовать математические сервисы, доступ к которым открывается только после регистрации или за плату. Решение задачи и пошаговые инструкции должны быть доступны сразу после перехода из результатов поиска Google на ваш сайт. Дополнительные материалы могут предоставляться за плату или только зарегистрированным пользователям.

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

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

  • Запрещается публиковать под видом математического сервиса рекламу, в том числе от третьих лиц (например, информацию о партнерских программах).
  • Ответственность за точность и качество контента в математическом сервисе несете вы. Если какие-то ваши данные в ходе проверки будут признаны неточными, то мы временно удалим ваш сервис из расширенных результатов поиска, пока вы не исправите ошибки. Меры зависят от серьезности нарушений. Это относится к:
    • точности обозначения типов задач, которые может решать ваш сервис;
    • точности решений, которые предоставляет ваш сервис.

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

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

MathSolver

MathSolver – это инструмент пошагового решения математических задач, предназначенный для учащихся, преподавателей и других пользователей. Используйте структурированные данные MathSolver на главной странице своего сайта.

Полное описание типа MathSolver приведено на странице schema.org/MathSolver.

Google поддерживает следующие свойства:

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

SolveMathAction

Действие, содержащее разбор математического выражения, например пошаговое решение уравнения или график функции.

{
"@type": "MathSolver",
"potentialAction": [{
  "@type": "SolveMathAction",
  "target": "https://mathdomain.com/solve?q={math_expression_string}",
  "mathExpression-input": "required name=math_expression_string",
  "eduQuestionType": "Polynomial Equation"
  }]
}
potentialAction.mathExpression-input

Text

Плейсхолдер для математического выражения (например, x^2 - 3x = 0), которое поступило от Google на ваш сайт. Это выражение затем можно упростить, преобразовать, решить для определенной переменной и т. д. В строке поддерживаются разные форматы, например LaTeX, Ascii-Math или математические выражения, которые можно ввести с помощью клавиатуры.

При решении задач некоторых типов math_expression_string указывает как на тип задачи, так и на его параметры. Ниже мы приводим примеры наиболее сложных типов задач, чтобы вы могли заранее обеспечить их корректную обработку.

Производная

Google отправит строку math_expression_string в одной из двух форм:

  • (math_expression)'
  • d/dvariable math_expression

Examples:

  • (x^2+x)'
  • d/dx (x^2+x)
  • d/dy y^2+y

Integrals

Google will send a math_expression_string in one of two forms:

  • \int math_expression
  • \int_{from}^{to} math_expression

Примеры:

  • \int x^2+x
  • \int_{0}^{2} x^2+x

Пределы

Google отправит строку math_expression_string в одной из двух форм:

  • \lim math_expression
  • \lim_{variable\rightarrowvalue} math_expression

Примеры:

  • \lim_{x\rightarrow0} sin(x)/x
  • \lim_{y\rightarrow\infty} sin(y)/y
  • \lim sin(x)/x
url

URL

URL разметки MathSolver.

usageInfo

URL

Политика конфиденциальности вашего сайта для решения математических задач.

{
  "@type": "MathSolver",
  "usageInfo": "https://www.mathdomain.com/privacy"
}
potentialAction.target

EntryPoint

Входная точка целевого URL действия. В свойстве potentialAction.target указывается строка с математическим выражением, над которым будет произведено действие.

{
"@type": "MathSolver",
"potentialAction": [{
  "@type": "SolveMathAction",
  "target": "https://mathdomain.com/solve?q={math_expression_string}"
  }]
}
Рекомендуемые свойства
inLanguage

Text

Языки, которые поддерживаются вашим сайтом для решения математических задач. Посмотрите список возможных языков.

{
  "@type": "MathSolver",
  "inLanguage": "es"
}
assesses

Список в формате Text с определениями типов задач

Типы задач, решаемых с помощью типа HowTo. Если у вас есть разметка HowTo и MathSolver, используйте свойство assesses.

{
  "@type": "MathSolver",
  "assesses": "Polynomial Equation"
}
potentialAction.eduQuestionType

Список в формате Text с определениями типов задач

Типы задач, которые можно решить действием, указанным в свойстве potentialAction.target.

{
  "@type": "SolveMathAction",
  "eduQuestionType": "Polynomial Equation"
}

LearningResource

Тип LearningResource означает, что объектом разметки является учебный ресурс, предназначенный для учащихся, преподавателей и других пользователей, преследующих образовательные цели. Используйте тип LearningResource на главной странице своего сайта.

Полное описание типа LearningResource приведено на странице schema.org/LearningResource.

Google поддерживает следующие свойства:

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

Text

Тип учебного ресурса. Используйте это постоянное значение: Math Solver.

{
  "@type": ["MathSolver", "LearningResource"],
  "learningResourceType": "Math Solver"
}

Определения типов задач

Используйте следующий список типов задач в свойстве eduQuestionType действия MathSolver.potentialAction или в поле assesses типа MathSolver, когда MathSolver используется в дополнение к типу HowTo, в котором показан разбор решения задачи.

В таблице ниже представлены некоторые примеры типов задач:

Типы задач с примерами (неполный список)
Absolute Value Equation

Уравнения с абсолютными величинами. Пример: |x - 5| = 9

Algebra

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

Arc Length

Задачи на длину кривой. Пример: найти длину кривой x = 4 (3 + y)^2 для 1 < y < 4.

Arithmetic

Арифметические задачи. Пример: найти сумму 5 + 7.

Biquadratic Equation

Биквадратные уравнения. Пример: x^4 - x^2 - 2 = 0.

Calculus

Общий тип задач, которые могут комбинироваться с задачами других типов. Примеры: интегралы, производные и дифференциальные уравнения.

Characteristic Polynomial

Найти характеристический многочлен матрицы {{1,2,5}, {3,-1,1}, {1,2,3}}.

Circle

Задачи, связанные с окружностями. Пример: найти радиус окружности x^2 + y^2 = 3.

Derivative

Производная функции 5x^4 + 2x^3 + 4x - 2.

Differential Equation

Решение дифференциальных уравнений. Пример: y + dy/dx = 5x.

Distance

Вычисление расстояния. Пример: найти расстояние между точками (6, -1) и (-3, 2).

Eigenvalue

Задачи на собственные значения. Пример: найти собственные значения для матрицы [[-6, 3], [4, 5]].

Eigenvector

Задачи на собственные векторы. Пример: найти собственный вектор для матрицы [[-6, 3], [4, 5]] с собственными значениями [-7, 6].

Ellipse

Задачи, связанные с эллипсами. Пример: найти точки пересечения эллипса 9x^2 + 4y^2 = 36 с осями X и Y.

Exponential Equation

Экспоненциальные уравнения. Пример: 7^x = 9.

Function

Упрощение многочлена. Пример: (x - 5)^2 * (x + 5)^2.

Function Composition

f(g(x)) при f(x) = x^2 - 2x, g(x) = 2x - 2.

Geometry

Общий тип задач, которые могут комбинироваться с задачами других типов. Примеры: окружность, эллипс, парабола, угловой коэффициент.

Hyperbola

Задачи, связанные с гиперболой. Пример: найти точку пересечения графика функции (x^2)/4 - (y^2)/5 = 1 с осью X.

Inflection Point

Найти точку перегиба графика функции f(x) = 1/2x^4 + x^3 - 6x^2.

Integral

Интеграл от квадратного корня из (x^2 - y^2).

Intercept

Задачи на пересечение графиков функций. Пример: найти точку пересечения прямой y = 10x - 5 с осью X.

Limit

Задачи на пределы. Пример: найти предел функции (x^2 - 1)/(x - 1) при x, стремящемся к 1.

Line Equation

Решение линейных уравнений. Пример: найти линейную функцию, график которой проходит через точки с координатами (-7, -4) и (-2, -6).

Linear Algebra

Общий тип задач, которые могут комбинироваться с задачами других типов. Пример: характеристический многочлен матрицы.

Linear Equation

Линейные уравнения. Пример: 4x - 3 = 2x + 9.

Linear Inequality

Линейные неравенства. Пример: 5x - 6 > 3x - 8.

Logarithmic Equation

Логарифмические уравнения. Пример: log(x) = log(100).

Logarithmic Inequality

Логарифмические неравенства. Пример: log(x) > log(100).

Matrix

Приведение матрицы {{1,2,5}, {3,-1,1}, {1,2,3}} к ступенчатому виду.

Midpoint

Нахождение середины отрезка. Пример: найти середину отрезка с концами (-3, 7) и (5, -2).

Parabola

Задачи, связанные с параболой. Пример: найти вершину параболы y^2 - 4x - 4y = 0.

Parallel

Задачи на параллельность прямых. Пример: параллельны ли прямые y = 10x + 5 и y = 20x + 10?

Perpendicular

Задачи на перпендикулярность. Пример: перпендикулярны ли прямые y = 10x + 5 и y = 20x + 10?

Polynomial Equation

Алгебраические уравнения. Пример: x^5 - 3x = 0.

Polynomial Expression

Алгебраические выражения. Пример: (x - 5)^4 * (x + 5)^2.

Polynomial Inequality

Алгебраические неравенства. Пример: x^4 - x^2 - 6 > x^3 - 3x^2.

Quadratic Equation

Квадратные уравнения. Пример: x^2 - 3x - 4 = 0.

Quadratic Expression

Квадратные трехчлены. Пример: x^2 - 3x - 2.

Quadratic Inequality

Квадратные неравенства. Пример: x^2 - x - 6 > x^2 - 3x.

Radical Equation

Иррациональные уравнения. Пример: sqrt(x) - x = 0.

Radical Inequality

Иррациональные неравенства. Пример: sqrt(x) - x > 0.

Rational Equation

Рациональные уравнения. Пример: 5/(x - 3) = 2/(x - 1).

Rational Expression

Рациональные выражения. Пример: 1/(x^3 + 4x^2 + 5x + 2).

Rational Inequality

Рациональные неравенства. Пример: 5/(x - 3) > 2/(x - 1).

Slope

Задачи на угловой коэффициент прямой. Пример: найти угловой коэффициент прямой, заданной уравнением y = 10x + 5.

Statistics

Статистические задачи. Пример: найти среднее значение множества чисел (3, 8, 2, 10).

System of Equations

Задачи на системы уравнений. Пример: решить систему уравнений 2x + 5y = 16; 3x - 5y = -1.

Trigonometry

Пример: sin(t) + cos(t) = 1.