WissKI
Що таке WissKI
Програмний модуль WissKI створений у межах проєкту «Інфраструктура наукової комунікації» (Wissenschaftliche KommunikationsInfrastruktur) на базі Університету імені Фрідріха-Олександра в Ерланґені та Нюрнберзі (Friedrich-Alexander-University of Erlangen-Nuremberg) у співпраці з Німецьким національним музеєм (Germanisches Nationalmuseum, місто Нюрнберг), Музеєм та центром зоологічних досліджень Олександра Кеніґа (Zoologische Forschungsmuseum Alexander Koenig, місто Бонн), а також за фінансової підтримки Німецького науково-дослідницького співтовариства (Deutsche Forschungsgemeinschaft).
WissKI дозволяє сформувати віртуальне дослідницьке середовище (virtual research environment, VRE) для управління даними на засадах Linked Data. Його функціонал забезпечує можливість створювати та адмініструвати бази даних на основі обраної онтології, використовувати спільні інформаційні ресурси (зокрема тезауруси та авторитетні файли), ділитися матеріалами з колегами, публікувати інформацію для широкої аудиторії.
Ресурс, побудований за допомогою WissKI, матиме веб-інтерфейс і може бути розміщений в інтернеті.
Модуль та його вихідний код є відкритими.
Структура
З технічної точки зору WissKI — це розширення для Drupal 8, популярної системи управління контентом (content management system, CMS). Такий підхід дає змогу розробникам модуля використовувати наявний потенціал цієї CMS та зосередитись на додаткових функціях та інтерфейсах роботи з даними на засадах Linked Data. Для збереження семантичних даних використовується окреме, не залежне від основної бази Drupal RDF-сховище (triple-store, сховище триплетів).
Підготовка до роботи
Для розгортання системи необхідно налаштувати сервер з такою рекомендованою конфігурацією:
- Apache 2.x (з модулем розширення Mod Rewrite);
- PHP версії 7.2 або вище;
- MySQL 5.5.3 або вище;
- Drupal 8.x.
Також необхідно встановити на сервері RDF-сховище з можливістю роботи з даними за протоколом SPARQL. Зокрема розробники WissKI рекомендують обрати одну з графових баз даних: GraphDB (www.graphdb.ontotext.com), Blazegraph (www.blazegraph.com) або RDF4J (www.rdf4j.org).
Після інсталяції Drupal слід додати низку додаткових розширень, необхідних для роботи системи (Inline Entity Form, ImageMagick, Image Effects, Colorbox) і власне сам WissKI. (www.drupal.org/project/wisski). Для базової функціональності потрібно буде увімкнути такі модулі:
- WissKI Core;
- WissKI Linkblock;
- WissKI Pathbuilder;
- WissKI SPARQL 1.1 adapter with pathbuilder;
- WissKI Store Abstraction Layer Zero.
Далі необхідно зв’язати середовище з репозитарієм, який перед тим мав бути створений для потреб проєкту у встановленому RDF-сховищі. Для цього у меню адміністрування Drupal слід обрати Configuration > WissKI Salz Adapter > Add WissKI Salz Adapter та обрати SPARQL 1.1 With Pathbuilder. У формі налаштування адаптера слід обов’язково зазначити посилання на точки доступу до читання (Read URL) та запису даних Write URL. Також варто вказати базовий URI проєкту (Default Graph URI).
Структура даних
Одна з головних властивостей WissKI — це використання файлів формальної онтології (RDFS або OWL) для організації збереження й відбору даних (визначення структури даних), а також для генерації відповідних користувацьких форм для роботи з наборами даних (створення, редагування, перегляду).
Загалом WissKI може працювати з будь-якою онтологією у відповідному форматі. Однак для проєктів у царині культурної спадщини доречною є орієнтація на еталонну модель CIDOC CRM. Зокрема, розробники рекомендують будувати проєктні, спеціалізовані моделі на основі онтології Erlangen CRM, що є OWL-DL реалізацію CIDOC CRM.
Для завантаження онтології у меню адміністрування Drupal слід обрати Configuration > WissKI Ontology > Please select та вказати веб-посилання на файл моделі. Після цього потрібно перейти до розділу Configuration > WissKI Salz Adapter, обрати поточний адаптер джерела даних та увімкнути обчислення ієрархії типу й властивостей, доменів та діапазонів (Compute type and property hierarchy and domains and ranges).
У разі необхідності розширити та деталізувати проєктну онтологію, ви можете видалити стару модель (розділ Configuration > WissKI Ontology) та завантажити її оновлену редакцію. При цьому дані, які вже були внесені до репозитарію, залишатимуться у сховищі без змін. Щоправда, резервним копіюванням бази, зокрема, перед оновленням робочої моделі, нехтувати все ж не варто.
Моделювання шляхів та генерація форм
Невід’ємною складовою системи є так званий Pathbuilder (Будівельник шляхів). Цей інструмент дозволяє визначити, з якими саме сутностями передбачається працювати та як вони мають бути організовані (згруповані) для роботи і презентації в межах проєкту.
Моделювання забезпечується за допомогою стандартного графічного інтерфейсу користувача й не потребує програмування. Щоправда, вимагає знання обраної для проєкту онтології, розуміння її правил і обмежень. Адже моделювання — побудова шляхів — відбувається у термінах та згідно з логікою завантаженої в систему формальної онтології.
Шлях у WissKI — це гілка (фрагмент) графу проєктної моделі даних. Тобто фактично це набір з n понять (класів) та n-1 зв’язків (відношень) між ними, об’єднаних у певну логічну послідовність. За допомогою набору шляхів можна представити граф проєктної моделі повністю. Наприклад, модель даних проєкту передбачає фіксацію назви та фізичних характеристик об’єкта. Відповідно цей граф може бути представлений як набір таких шляхів:
- E71 Man-Made Thing > P102 has title > E35 Title
- E71 Man-Made Thing > P45 consists of > E57 Material
- E71 Man-Made Thing > P43 has dimension > E54 Dimension
- E71 Man-Made Thing > P43 has dimension > E54 Dimension > P2 has type > E55 Type
- E71 Man-Made Thing > P43 has dimension > E54 Dimension > P91 has unit > E58 Measurement Unit
Повторювані елементи шляхів можуть бути об’єднані в групи. У наведеному прикладі це клас E71 Man-Made Thing, який повторюється для всіх рядків, а також послідовність елементів E71 Man-Made Thing > P43 has dimension > E54 Dimension, що дозволяє згрупувати відомості про розміри об’єкта (на зображенні елементи, що формують групи, позначені жирними рисками). Якщо передбачається використання різних послідовностей тверджень (двох чи більше), які спиратимуться на один факт (спільний триплет), слід обов’язково об’єднати відповідні шляхи за допомогою групи. Вочевидь, що реальні проєкти не зводяться до такої простої схеми, як наведено у прикладі. Інструмент фактично не обмежує у можливості додавати стільки шляхів (гілок графів), скільки це необхідно відповідно до завдань проєкту, його моделі даних, хай якою розгалуженою вона б не була.
Отже, фактично йдеться про опис моделі дійсності за допомогою певної формальної мови. Можна довільно обирати, що́ і як, з якої точки зору й у якому контексті досліджувати та фіксувати в базі, але за однієї головної умови — аби це відповідало понятійному апарату обраної онтології. Відтак у процесі побудови шляхів на кожному наступному кроці WissKI обмежуватиме вибір доступних класів та властивостей відповідно до правил сумісності з раніше заявленими абстракціями. Також у кінці кожного простого шляху (не групи) система завжди вимагатиме вказати одне з передбачених онтологією відношень до примітивного типу даних, що визначатиме зв’язок інстанції цільового класу з конкретним значенням-літералом.
Наступний крок — це генерація форм графічного інтерфейсу користувача. На основі змодельованих шляхів, відповідно до послідовності елементів, з урахуванням їхнього групування та інших вказаних правил, WissKI здатна генерувати форми з елементами управління (полями) для роботи з даними певного типу (довгий чи короткий текст, числа, зображення, медіафайли, геодані тощо). Надалі ресурс повністю готовий до використання. Зокрема, можна створювати нові набори даних за допомогою згенерованих системою вхідних форм та масок, шукати, переглядати та редагувати наявний контент тощо.
Описаний механізм дозволяє максимально спростити для кінцевого непідготовленого користувача особливості Semantic Web та Linked Data, приховуючи їх за лаштунками звичного графічного інтерфейсу. Разом з тим платформа забезпечує широкі можливості роботи з даними і за іншими інтерфейсами, зокрема, протоколом SPARQL.
Детальніше зі спектром можливостей та додатковими опціями налаштування платформи можна ознайомитись на офіційному сайті проєкту.
Оглляд підготовлено в межах проєкту Museum Digital Lab.