Semantic MediaWiki
Semantic MediaWiki — це розширення для вікі-рушія MediaWiki, яке дозволяє користувачам додавати семантичні анотації до вікі-сторінок, використовуючи додаткові елементи вікі-розмітки, перетворюючи MediaWiki на семантичну вікі. Semantic MediaWiki також надає інструменти для обробки даних, отриманих з цих анотацій[8].
Тип | розширення MediaWikid[1] |
---|---|
Автор(и) | Денні Врандечіч[2] і Markus Krötzschd[2] |
Розробник | віртуальна спільнота[3] |
Стабільний випуск | 1.9.0 |
Репозиторій | github.com/SemanticMediaWiki/SemanticMediaWiki |
Операційна система | кросплатформне ПЗ |
Мова програмування | PHP[4] і JavaScript[5] |
Ліцензія | GNU General Public License, version 2.0 or laterd[6][7] |
Вебсайт | github.com/SemanticMediaWiki/SemanticMediaWiki |
Semantic MediaWiki у Вікісховищі |
Основні компоненти 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-сховище (англ. triplestore). Як основне сховище використовується 4Store, планується також підтримувати Virtuoso. У порівнянні з традиційним способом зберігання, робота з RDF-сховищем дає такі переваги:
- з'являється можливість більш гнучко контролювати навантаження,
- стає можливим взаємодіяти з даними вікі за допомогою мови SPARQL,
- стає можливим використовувати рушії логічного виведення з RDF-даних.
У Semantic MediaWiki використовуються деякі можливості автоматичного логічного виведення нових фактів з уже наявних даних. Підтримується виведення за ієрархією семантичних властивостей і виведення за ієрархією категорій. Більш досконалі можливості логічного виведення стають можливими після встановлення розширення Halo і за використання RDF-сховища.
Семантичні розширення
Розширення викликало великий інтерес у спільноти розробників MediaWiki, про що свідчить поява цілого сімейства плагінів, які залежать від SMW.[11][12] До числа найбільш популярних відносяться Semantic Forms, Semantic Result Formats, Semantic Drilldown, Halo. Розширення дозволяють додавати в SMW нові формати введення і виведення даних, покращують підтримку логічного виведення, дозволяють використовувати семантичну інформацію для різних цілей: голосувань, ідентифікації користувачів, розмежування доступу.
Одне з найпопулярніших розширень Page Forms (раніше відоме як Semantic Forms) дозволяє створювати html-форми, за допомогою яких заповнюються шаблони MediaWiki. Параметри цих шаблонів стають значеннями семантичних властивостей, а сторінка, що включає виклик такого шаблону, стає доступною для запитів. У числі іншого Page Forms забезпечує можливість автодоповнення на основі властивостей сторінок, уведення даних за допомогою елементів уведення, специфічних для типів даних: випадних списків, радіокнопок, карт, календарів.
Розширення Semantic Result Formats додає можливість виводити результати семантичних запитів у різних форматах, а також візуалізувати їх «на льоту». Таким чином стає можливим розташовувати темпоральні дані на часовій осі і календарі, геодані — на картах (при включеному розширенні 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 також активно використовує SMW.
Для збору інформації про наявні впровадження Semantic MediaWiki, творцями був оголошений конкурс «Вікі місяця», в якому власники вікі-майданчиків коротко описують їх функціонал і особливості. Організатори конкурсу заохочують брати участь у ньому як публічні вікі, так і закриті майданчики, адже для останніх це може бути єдиною можливістю бути представленими в Інтернеті.
Від самого початку Semantic MediaWiki була задумана для використання у Вікіпедії.[9][17] В даний час проект фонду Вікімедіа «Вікідані» значною мірою спирається на Semantic MediaWiki[18].
Спільнота і події
Спільноти користувачів і розробників Semantic MediaWiki спілкуються в дискусійних групах semediawiki-user та semediawiki-devel відповідно. На вікі-фермі Referata є вікі спільноти.
Раз на пів року проводиться конференція SMWCon, яка об'єднує розробників Semantic MediaWiki і тих, хто використовує це розширення у своїх проектах. Навесні конференція проходить у Північній Америці, а восени — в Європі. Зазвичай програма конференції складається з навчальних семінарів, доповідей розробників і власників семантичних вікі і круглих столів, на яких формуються плани щодо подальшої розробки програми.
Останнім часом SMWCon розширила рамки — приймаються доповіді про всі семантичні вікі-рушії.
Примітки
- Mediawiki.org — 2004.
- https://www.semantic-mediawiki.org/wiki/Help:SMW_Project
- https://github.com/SemanticMediaWiki/SemanticMediaWiki/graphs/contributors
- GitHub — 2007.
- The smw Open Source Project on Open Hub: Languages Page — 2006.
- https://github.com/SemanticMediaWiki/SemanticMediaWiki/blob/master/COPYING
- The smw Open Source Project on Open Hub: Licenses Page — 2006.
- Introduction to Semantic MediaWiki (англ.). semantic-mediawiki.org. Архів оригіналу за 8 липня 2012. Процитовано 12 січня 2011.
- Volkel M., Krötzsch M., Vrandecic D., Haller H., Studer R. Semantic Wikipedia // Proceedings of the 15th international conference on World Wide Web. — Edinburgh, Scotland : ACM Press, 2006. — С. 585—594. — ISBN 1-59593-323-9. — DOI:10.1145/1135777.1135863.
- Jie Bao, Li Ding, James A Hendler. Knowledge Representation and Query in Semantic MediaWiki: A Formal Study // Tetherless World Constellation (RPI) Technical Report. — 2008.
- Category:Semantic MediaWiki extensions (англ.). Архів оригіналу за 8 липня 2012. Процитовано 21 грудня 2011.
- Help:SMW extensions (англ.). Архів оригіналу за 8 липня 2012. Процитовано 21 грудня 2011.
- Data.gov Wiki — вікі проєкту data.gov(англ.)
- Li Ding, Dominic DiFranzo, Alvaro Graves, James R. Michaelis ,Xian Li, Deborah L. McGuinness, Jim Hendler. Data-gov Wiki: Towards Linking Government Data // Proceedings of the 2010 AAAI Spring Symposium on Linked Data Meets Artificial Intelligence. — 2010.
- Help:Semantic MediaWiki (англ.). Архів оригіналу за 8 липня 2012. Процитовано 8 січня 2012.
- Jennifer Zaino (1 грудня 2008). Get Your MediaWiki Hosting Here (англ.). semanticweb.com. Архів оригіналу за 1 січня 2012. Процитовано 1 січня 2012.
- Markus Krötzsch, Denny Vrandecic, Max Völkel. Wikipedia and the Semantic Web - The Missing Links // Proceedings of Wikimania 2005. — 2005.
- Meta contributors. WikiData WMDE (англ.). Meta, discussion about Wikimedia projects. Архів оригіналу за 8 липня 2012. Процитовано 20 грудня 2011.
Див. також
Посилання
- Semantic MediaWiki — вступ до SMW з прикладами та ілюстраціями
- Semantic Forms для MediaWiki — вступ до Semantic Forms і PageSchemas
- Referata — вікі-ферма, хостинг для вікі зі включеною Semantic MediaWiki
- Офіційний російський сайт — включає частково перекладену документацію
- Сайт спільноти SMW
- ТХАБО.РФ Російськомовна Семантична вікі з SMW-розширеннями останніх версій