Справка:Семантика
Знакомство с семантикой
Семантика - это раздел лингвистики, изучающий смысловое значение единиц языка. В контексте движка MediaWiki, а точнее его расширения Semantic MediaWiki (SMW) под семантикой подразумеваются внесение дополнительных свойств (термин SMW) к встречаемым в ней понятиям и объектам (любой термин, город, минерал, закон, человек и т. д.) и определение (описание) связей между ними.
Например, "Россия", "война", "Л.Н.Толстой" и "философия" имеют как независимые друг от друга свойства, так и связи между собой. Чтобы определить и использовать семантические свойства и связи у этих терминов, нам следует на страницах каждого из них добавить к ключевым понятиям невидимое для читателя свойство. Оно определяется в формате: [[Имя свойства::Значение свойства]]
.
Например, у каждого человека есть свойство быть рождённым где-то и когда-то. Эти данные как правило указываются в посвящённой ему вики статье. Мы можем превратить простое упоминание этих фактов в свойства этого человека таким образом:
Лев Николаевич Толстой родился [[дата рождения::28 августа 1928]] года в [[родился в::Ясная Поляна|Ясной Поляне]] Тульской губернии [[родился в::Россия|Российской империи]]
Для читателя этот текст появится в виде:
Лев Николаевич Толстой родился 28 августа 1828 года в Ясной Поляне Тульской губернии Российской империи
то есть без каких-либо следов указанных нами свойств, мы же незаметно определили 2 свойства: "дата рождения" и "родился в", причём последнее свойство имеет два значения, что позволит попадать статье о Толстом в выборки и по России и по Ясной Поляне. Обозначив таким образом все ключевые понятия на странице всех писателей, мы сможем с помощью запросов автоматически построить списки всех писателей родившихся в 19-м веке, всех писателей родившихся в России или список удовлетворяющий обоим этим условиям.
Теперь рассмотрим внедрение и использование семантики подробнее.
Дополнительно
- Введение в Semantic MediaWiki (официальная документация)
- Знакомство с технологией (с картинками) и простой пример использования
Использование семантики
Для семантических запросов можно использовать не только специально созданные свойства, но и уже имеющиеся категории. Формат запроса похож на формат вызова шаблона, он всегда начинается со служебной комбинации "#ask:". Вот несколько примеров:
Описание | Код запроса | Результат |
---|---|---|
Вывести в строчку названия всех статей из категории "Масонство" | {{#ask:[[Категория:Масонство]]}} |
YMCA, Дружеское ученое общество, Карташев Антон Владимирович, Масонство, Масонство/Кратко, Мелетий Метаксакис |
Вывести названия всех статей из категории "Масонство" списком по 5 позиций без ссылок на статьи | {{#ask: [[Категория:Масонство]] | format=ul | limit=5 | link=none }} |
|
Вывести список всех статьей из категории "Песни" в названии которых встречается сочетание букв "гимн". В запросе можно использовать символ *, который означает любую комбинацию символов. Используя его до и после сочетания "гимн" мы указали, что слово может находится в любом месте названия, т.е. в выборку попадут также статьи со словами "гимнастика", "гимнами" и т.д. |
{{#ask: [[Категория:Песни]] [[Название::~*гимн*]] | format=ul }} |
|
- Больше примеров можно найти в песочнице.
В запросе также можно указывать диапазоны как числовых значений, так и дат, использовать условия "больше", "меньше" или "не равно". Подробнее описано на официальной странице
Специальные страницы:
- Special:Properties -- список всех семантических свойств
- Special:Browse -- страница поиска
- Special:Ask -- страница запросов
Дополнительно
- Руководство пользователя (официальная документация)
- Типы свойств
- Форматы вывода