Semantic MediaWiki

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
Semantic MediaWiki
Типрозширення MediaWikid[https://www.mediawiki.org/wiki/Extension:Semantic_MediaWiki_Mediawiki.org]_—_2004.[[d:Track:Q15633578]]-1">[1] і knowledge management softwared
АвториДенні Врандечіч-2">[2] і Markus Krötzschd-2">[2]
Розробниквіртуальна спільнота-3">[3]
Стабільний випуск1.9.0
Операційна системакросплатформне ПЗ
Мова програмуванняPHP[https://github.com/SemanticMediaWiki/SemanticMediaWiki/blob/4.1.0/docs/COMPATIBILITY.md#compatibility_GitHub]_—_2007.[[d:Track:Q364]]-4">[4] і JavaScript[https://www.openhub.net/p/smw/analyses/latest/languages_summary_The_smw_Open_Source_Project_on_Open_Hub:_Languages_Page]_—_2006.[[d:Track:Q124688]]-5">[5]
ЛіцензіяGNU General Public License, version 2.0 or laterd-6">[6][https://www.openhub.net/p/smw/licenses_The_smw_Open_Source_Project_on_Open_Hub:_Licenses_Page]_—_2006.[[d:Track:Q124688]]-7">[7]
Репозиторійgithub.com/SemanticMediaWiki/SemanticMediaWiki
Вебсайтgithub.com/SemanticMediaWiki/SemanticMediaWiki

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

Основні компоненти 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-0">а [https://www.mediawiki.org/wiki/Extension:Semantic_MediaWiki_Mediawiki.org]_—_2004.[[d:Track:Q15633578]]
_1-1">б Mediawiki.org — 2004.
d:Track:Q15633578
  • _2-0">а
    _2-1">б