Semantic MediaWiki

програма для створення, керування та поширення структурованих даних на MediaWiki

Semantic MediaWiki — це розширення для вікі-рушія MediaWiki, яке дозволяє користувачам додавати семантичні анотації до вікі-сторінок, використовуючи додаткові елементи вікі-розмітки, перетворюючи MediaWiki на семантичну вікі. Semantic MediaWiki також надає інструменти для обробки даних, отриманих з цих анотацій[8].

Semantic MediaWiki
Типрозширення MediaWikid[1] і knowledge management softwared
АвториДенні Врандечіч[2] і Markus Krötzschd[2]
Розробниквіртуальна спільнота[3]
Стабільний випуск1.9.0
Операційна системакросплатформне ПЗ
Мова програмуванняPHP[4] і JavaScript[5]
ЛіцензіяGNU General Public License, version 2.0 or laterd[6][7]
Репозиторійgithub.com/SemanticMediaWiki/SemanticMediaWiki
Вебсайтgithub.com/SemanticMediaWiki/SemanticMediaWiki

Основні компоненти Semantic MediaWiki

ред.

Semantic MediaWiki призначена для того, щоб вирішувати проблеми традиційних вікі-систем і давати користувачам можливість працювати з типізованими структурованими даними. Цій меті в Semantic MediaWiki служать категорії, семантичні властивості і запити. За їх допомогою можна, наприклад, прив'язати до вікі-статей, присвячених містам, інформацію про їх населення, а потім автоматично сформувати список міст-мільйонерів, відсортований за зменшенням чисельності населення. Використовувані для структурування традиційної MediaWiki категорії також можуть використовуватися в запитах.

Основа підходу Semantic MediaWiki полягає в доповненні вікі-розмітки новими елементами. Семантичні властивості дозволяють називати гіперпосилання між сторінками і прив'язувати до сторінок типізовані дані. Вбудовані об'єкти дозволяють додавати структуровану інформацію, не створюючи додаткових сторінок. Вбудовані запити і концепти допомагають здійснювати доступ до даних, озброюючи користувача потужною мовою запитів. Кожну з цих можливостей варто розглянути окремо.

Семантичні властивості

ред.

Для прив'язування даних до вікі-сторінок використовуються так звані семантичні властивості. Кожна властивість має тип, назву і значення, а також вікі-сторінку в спеціальному просторі назв. Ця сторінка використовується для того, щоб задавати тип властивості, визначати її місце в ієрархії властивостей, а також документувати те, як її слід використовувати. У текст вікі-сторінки семантична властивість вставляється у форматі [[назва::значення]]. Наприклад, якщо потрібно додати на вікі-сторінку про Леонардо да Вінчі інформацію про те, що він був італійцем, достатньо додати в текст статті про нього конструкцію [[національність::Італія]].

Властивості можуть бути різних типів, а типи визначають порядок операцій, які можуть виконуватися зі значеннями властивостей, наприклад, сортування і порівняння. Властивості типу Сторінка схожі на іменовані гіперпосилання між вікі-статтями, тому в ранніх версіях SMW їх виділяли в окрему групу. Також SMW підтримує властивості типу Число, Рядок, Дата, Географічні координати тощо (всього 15 типів).

Вбудовані запити

ред.
 
Формати виведення запитів

Мова запитів SMW-QL дозволяє, по-перше фільтрувати сторінки за заданими критеріями, і по-друге, виводити як результати запиту тільки цікаву для користувача інформацію, а не весь текст вікі-сторінки.

Запити SMW-QL найчастіше вбудовуються в код вікі-сторінки в такій формі:

{{#ask:Критерії вибору сторінок
 |?Запитувана властивість
 |решта параметрів
}}

У секції критеріїв вибору сторінок вказуються значення семантичних властивостей і категорій, якими володіють сторінки, що цікавлять нас. При цьому для вказування цих критеріїв використовується та ж форма запису, що й для задання властивостей і категорій: [[властивість::значення властивості]] [[Категорія:назва категорії]]. Приклад запиту, що вибирає міста з населенням понад мільйон чоловік і виводить імена їх мерів у вигляді таблиці:

{{#ask:[[Категорія:Місто]] [[Населення::>1000000]]
 |?Ім'я мера
 |format=broadtable
}}

Докладний розгляд мови SMW-QL, зокрема її опис у формі БНФ, є в роботах авторів[9] і сторонніх дослідників.[10]

Формати виведення даних

ред.

Типово результатом запиту в Semantic MediaWiki є таблиця або список. За допомогою форматів виведення (англ. result formats) стає можливим подавати результати запитів у вигляді діаграм, графіків, інтерактивних карт тощо. Комбінуючи шаблони MediaWiki і SMW-запити з різними форматами виведення, можна створювати складні динамічні вебсайти з узгодженим вмістом.

Логічне виведення і зв'язок з Semantic Web

ред.

Назва Semantic MediaWiki має мало спільного з семантикою в лінгвістичному розумінні цього слова, а вказує на те, що цей програмний продукт пов'язаний з семантичної павутиною. Зокрема, дані, що задаються семантичними властивостями, можуть бути експортовані у формат RDF. Типи даних SMW, в цьому випадку, перетворюються на відповідні типи даних з XML Schema, а унікальні ідентифікатори (URL) формуються шляхом приєднання суфіксів до URL вікі. Також є можливість явно вказати, які словники (OWL-онтології) слід використовувати під час експорту тих чи інших семантичних властивостей.

Типово значення семантичних властивостей зберігаються в додаткових таблицях бази даних MediaWiki, проте, починаючи з версії 1.6.0, для цієї мети можна також використовувати RDF-сховище[en] (англ. triplestore). Як основне сховище використовується 4Store, планується також підтримувати Virtuoso[en]. У порівнянні з традиційним способом зберігання, робота з RDF-сховищем дає такі переваги:

  • з'являється можливість більш гнучко контролювати навантаження,
  • стає можливим взаємодіяти з даними вікі за допомогою мови SPARQL,
  • стає можливим використовувати рушії логічного виведення з RDF-даних.

У Semantic MediaWiki використовуються деякі можливості автоматичного логічного виведення нових фактів з уже наявних даних. Підтримується виведення за ієрархією семантичних властивостей і виведення за ієрархією категорій. Більш досконалі можливості логічного виведення стають можливими після встановлення розширення Halo і за використання RDF-сховища.

Семантичні розширення

ред.

Розширення викликало великий інтерес у спільноти розробників MediaWiki, про що свідчить поява цілого сімейства плагінів, які залежать від SMW.[11][12] До числа найбільш популярних відносяться Semantic Forms, Semantic Result Formats, Semantic Drilldown, Halo. Розширення дозволяють додавати в SMW нові формати введення і виведення даних, покращують підтримку логічного виведення, дозволяють використовувати семантичну інформацію для різних цілей: голосувань, ідентифікації користувачів, розмежування доступу.

Одне з найпопулярніших розширень Page Forms [Архівовано 31 грудня 2019 у Wayback Machine.] (раніше відоме як Semantic Forms) дозволяє створювати html-форми, за допомогою яких заповнюються шаблони MediaWiki. Параметри цих шаблонів стають значеннями семантичних властивостей, а сторінка, що включає виклик такого шаблону, стає доступною для запитів. У числі іншого Page Forms забезпечує можливість автодоповнення на основі властивостей сторінок, уведення даних за допомогою елементів уведення, специфічних для типів даних: випадних списків, радіокнопок, карт, календарів.

Розширення Semantic Result Formats [Архівовано 26 січня 2020 у Wayback Machine.] додає можливість виводити результати семантичних запитів у різних форматах, а також візуалізувати їх «на льоту». Таким чином стає можливим розташовувати темпоральні дані на часовій осі і календарі, геодані — на картах (при включеному розширенні Semantic Maps), створювати хмарки тегів, графи зв'язків вікі-статей, інтерактивні графіки для числових даних тощо.

SMW доступна для звантаження як окремо, так і в складі пакунка Semantic Bundle, що включає саму SMW і семантичні розширення, які пройшли інтеграційне тестування. Комерційні компанії, що використовують MediaWiki як платформу, також часто включають SMW у свої збірки.

Semantic MediaWiki є ключовим компонентом вебплатформи DataWiki (в минулому Enterprise Semantic MediaWiki ), що розробляється компанією DIQA-PM, призначеної для встановлення в корпораціях. Цей програмний продукт постачається як з безплатною ліцензією для спільнот, так і на платній основі.

Застосування Semantic MediaWiki

ред.

Semantic MediaWiki набула поширення на вікі-майданчиках, що вимагають гнучкого і зручного використання зі структурованими даними. Відомими впровадженнями є вікі спільноти Semantic Web (semanticweb.org), офіційний портал інституту AIFB Технологічного інституту Карлсруе, вікі проєкту data.gov[13][14] Semantic MediaWiki може бути включена за запитом у популярній вікі-фермі Вікіа[15], а у фермі Referata вона включена за замовчуванням.[16] Відомий проект документування WWW як платформи webplatform.org [Архівовано 22 травня 2017 у Wayback Machine.] також активно використовує SMW.

Для збору інформації про наявні впровадження Semantic MediaWiki, творцями був оголошений конкурс «Вікі місяця» [Архівовано 16 серпня 2019 у Wayback Machine.], в якому власники вікі-майданчиків коротко описують їх функціонал і особливості. Організатори конкурсу заохочують брати участь у ньому як публічні вікі, так і закриті майданчики, адже для останніх це може бути єдиною можливістю бути представленими в Інтернеті.

Від самого початку Semantic MediaWiki була задумана для використання у Вікіпедії.[9][17] В даний час проект фонду Вікімедіа «Вікідані» значною мірою спирається на Semantic MediaWiki[18].

Спільнота і події

ред.

Спільноти користувачів і розробників Semantic MediaWiki спілкуються в дискусійних групах semediawiki-user [Архівовано 4 травня 2017 у Wayback Machine.] та semediawiki-devel [Архівовано 2 квітня 2016 у Wayback Machine.] відповідно. На вікі-фермі Referata є вікі спільноти.

Раз на пів року проводиться конференція SMWCon [Архівовано 14 липня 2011 у Wayback Machine.], яка об'єднує розробників Semantic MediaWiki і тих, хто використовує це розширення у своїх проектах. Навесні конференція проходить у Північній Америці, а восени — в Європі. Зазвичай програма конференції складається з навчальних семінарів, доповідей розробників і власників семантичних вікі і круглих столів, на яких формуються плани щодо подальшої розробки програми.

Останнім часом SMWCon розширила рамки — приймаються доповіді про всі семантичні вікі-рушії.

Примітки

ред.
  1. а б Mediawiki.org — 2004.
  2. а б в https://www.semantic-mediawiki.org/wiki/Help:SMW_Project
  3. https://github.com/SemanticMediaWiki/SemanticMediaWiki/graphs/contributors
  4. GitHub — 2007.
  5. The smw Open Source Project on Open Hub: Languages Page — 2006.
  6. https://github.com/SemanticMediaWiki/SemanticMediaWiki/blob/master/COPYING
  7. The smw Open Source Project on Open Hub: Licenses Page — 2006.
  8. Introduction to Semantic MediaWiki (англ.). semantic-mediawiki.org. Архів оригіналу за 8 липня 2012. Процитовано 12 січня 2011.
  9. а б Volkel M., Krötzsch M., Vrandecic D., Haller H., Studer R. Semantic Wikipedia : [арх. 31 грудня 2019] : [англ.] // Proceedings of the 15th international conference on World Wide Web. — Edinburgh, Scotland : ACM Press, 2006. — С. 585—863. — ISBN 1-59593-323-9. — DOI:10.1145/1135777.1135863.
  10. Jie Bao, Li Ding, James A Hendler. Knowledge Representation and Query in Semantic MediaWiki: A Formal Study : [арх. 27 січня 2012] : [англ.] // Tetherless World Constellation (RPI) Technical Report. — 2008.
  11. Category:Semantic MediaWiki extensions (англ.). Архів оригіналу за 8 липня 2012. Процитовано 21 грудня 2011.
  12. Help:SMW extensions (англ.). Архів оригіналу за 8 липня 2012. Процитовано 21 грудня 2011.
  13. Data.gov Wiki [Архівовано 9 квітня 2011 у wayback.archive-it.org] — вікі проєкту data.gov(англ.)
  14. Li Ding, Dominic DiFranzo, Alvaro Graves, James R. Michaelis ,Xian Li, Deborah L. McGuinness, Jim Hendler. Data-gov Wiki: Towards Linking Government Data : [арх. 10 червня 2010] : [англ.] // Proceedings of the 2010 AAAI Spring Symposium on Linked Data Meets Artificial Intelligence. — 2010.
  15. Help:Semantic MediaWiki (англ.). Архів оригіналу за 8 липня 2012. Процитовано 8 січня 2012. [Архівовано 2012-04-12 у Wayback Machine.]
  16. Jennifer Zaino (1 грудня 2008). Get Your MediaWiki Hosting Here (англ.). semanticweb.com. Архів оригіналу за 1 січня 2012. Процитовано 1 січня 2012. [Архівовано 2010-03-16 у Wayback Machine.]
  17. Markus Krötzsch, Denny Vrandecic, Max Völkel. Wikipedia and the Semantic Web - The Missing Links : [арх. 6 лютого 2007] : [англ.] // Proceedings of Wikimania 2005. — 2005.
  18. Meta contributors. WikiData WMDE (англ.). Meta, discussion about Wikimedia projects. Архів оригіналу за 8 липня 2012. Процитовано 20 грудня 2011.

Див. також

ред.

Посилання

ред.