Современные технологии. Системный анализ. Моделирование № 4 (56) 2017
УДК 004.652.8+004.91
Е. А. Черкашин 1 , И. В. Орлова 2
DOI: 10.26731/1813-9108.2017.4(56).100-107
1Институт динамики систем и теории управления СО РАН им. В. М. Матросова, г. Иркутск, Российская Федерация 2Иркутский национальный исследовательский технический университет, г. Иркутск, Российская Федерация Дата поступления: 21 октября 2017 г.
ИНСТРУМЕНТАРИЙ СОЗДАНИЯ ЦИФРОВЫХ АРХИВОВ ДОКУМЕНТОВ НА ОСНОВЕ СВЯЗАННЫХ ДАННЫХ
Аннотация. Рассматривается задача разработки инструментальных средств реализации цифровых архивов документов. Особенностью предложенных средств является использование форматов связанных данных (семантического веба) для представления и хранения логической структуры документа и его метаинформации, системы логического вывода, встроенной в сервер, и средств создания документов из отдельных частей.
Основу формализованного описания содержимого архивов форматирует ряд стандартизованных онтологий, в том числе Open Annotation, Friend-of-a-Friend, Dublin Core, Provenance, Schema.org, DBpedia, NEPOMUK и Bibliographic Ontology. Свойства онтологий позволили обеспечить решения различных задач, связанных с представлением и ведением документации: создание документа, представление авторства, формирование описаний содержимого, представление логических связей между документами, привязку данных к конкретным объектам, а также обеспечить представление ссылок на внешние источники (списки литературы).
Представление данных в виде семантического графа и использование Prolog в качестве основного средства обеспечения доступа и обработки графов формирует среду обработки данных документа на основе декларативных спецификаций, в частности базы знаний. Современные средства и программные библиотеки SWI-Prolog и Python позволяют разрабатывать приложения анализа содержимого документов с последующим порождением новых размеченных документов.
Предложенные средства позволяют расширить функции хранения и доступа к документам функциями их интеграции с другими сайтами интернета. Рассмотрен пример приложения разработанного программного инструментария при подготовке документации о курсах, преподаваемых вуниверситете.
_Ключевые слова: открытые связанные данные, компонентное проектирование, цифровой архив, создание документов._
Е. A. Cherkashin 1,1. V. Orlova 2
1 Federal Government Budgetary Institution of Science, Matrosov Institute for System Dynamics and Control Theory of Siberian Branch of Russian Academy of Sciences, Irkutsk, the Russian Federation 2Irkutsk National Research Technical University, Irkutsk, the Russian Federation
Received: October 21, 2017
INSTRUMENTAL TOOLS FOR CONSTRUCTION OF THE DIGITAL ARCHIVES OF THE DOCUMENTS BASED ON LINKED DATA
Abstract. We consider the problem of the development of software tools for construction of digital archives of text documents. The main features of the tools are the usage of Linked Open Data, which are also based on the Semantic Web technologies, for representation and storing the logical structure of a document and its metainformation, logical inference system integrated in the server, and the tools of document composition from other parts.
The basis of formalized description of the archive contents are formed by a number of standardized ontologies, including Open Annotation, Friend of a Friend, Dublin Core, Provenance, Schema.org, DBpedia, NEPOMUK и Bibliographic Ontology. The features of the ontologies allow us to provide the solutions of various problems related to the representation of the content data and a document management: document authoring, ownership declaration, formation of metadata on the document content, describing logical relation between documents, associating data and physical objects, as well as bibliographic data representation.
The usage of the Semantic WEB data representation and a Prolog engine as a way of data retrieval and processing forms an environment of document processing based on declarative specifications, namely, knowledge based ones. The nowadays software and libraries of SWI-Prolog and Python allow one to develop applications for document data mining and automatic compositions of new ones with the semantic markup. This allows us to extend the regular storage, indexing and retrieval functions of the digital archives with functions of data integrations with other web documents.
An example of the instrumentation tools application for study course documentation authoring is considered Keywords: Linked Open Data, component architecture, digital archive, document authoring.
Введение обработки при помощи программных агентов (се-
Технология открытых связанных данных мантический веб), но и связать всю имеющуюся (Linked Open Data, LOD) [1] предложена W3C- информацию в единый семантический граф при консорциумом для представления семантической помощи отношений и универсальных глобальных информации в публикуемых данных таким обра- идентификаторов ресурсов (URI). Дескриптивные зом, чтобы обеспечить не только возможность ее возможности технологий семантического веба,
') Е. А. Черкашин, И. В. Орлова, 201 7
Информатика, вычислительная техника и управление
Modern technologies. System analysis. Modeling, 2017, Vol 56, no.4
средства публикации документов HTML5, а также технологии LOD создают инфраструктурный базис средств публикации документов с обеспечением логических связей между документами. При этом содержательная информация документа связывается с содержательной информацией другого при помощи отношений - ссылок на соответствующие ресурсы. Ресурсы представляют собой как статическое содержимое, так и результаты запуска процедур публикации (конвертации) данных, порождающих размеченное текстовое содержимое.
Важным преимуществом использования LOD при создании информационных сред является ослабление требований к хранилищам публикуемой информации: сам документ является хранилищем данных в формализованном виде. В некоторой степени это позволяет время, затрачиваемое на проектирование структуры базы данных для хранилищ частично структурированных документов, перенаправить на процесс решения предметной задачи: пользователь (разработчик) обрамляет текстовые данные семантической разметкой.
Целью исследования является создание средств разработки цифровых архивов, позволяющих проектировать и реализовать предметно-ориентированные хранилища информационных объектов.
На основе созданных средств редактирования разрабатываются варианты цифровых архивов документов, предназначенных для решения задач формирования документации по учебным курсам. Использование форматов данных LOD, средств обработки HTML веб-браузера и разработанных технологий позволяет решать широкий класс задач формирования документации, начиная от формирования содержательной части текстов документов, заканчивая представлением стилевых характеристик текстов, а также интегрирования логической разметки в глобальные сервисы доступа к данным.
Данная работа продолжает исследования, обозначенные в [2] в направлении разработки программного инструментария сервисов хранения, обработки и обеспечения доступа к семантической информации.
Технологии LOD
Технологии LOD базируются на представлении публикуемой информации в виде семантически размеченного документа, веб-страницы, результата запроса к базе данных (контента). При использовании HTML для представления контента в роли основного формата разметки выступает RDFa (Resource Description Framework in Attributes). Разметка представляет собой граф
(подграф), формируемый отношениями (тройками) вида <Субъект, отношение, объект>, нанесенный на древовидную структуру HTML при помощи нескольких специальных атрибутов. Большинство таких атрибутов игнорируются веб-браузером и не влияют на отображение документа.
Отдельно от визуального контента для представления LOD используются стандартные форматы семантического веба RDF, OWL, TTL, N3 и 4, JSON-LD, RDF/JSON и др. Данные представления- это расширения стандартных форматов вида текст, XML и JSON. Существует несколько бинарных форматов, ориентированных на компактное хранение графов в файловой системе.
Представление графа в оперативной памяти вычислительного устройства в большинстве библиотек и программных каркасов (фреймворков) ориентировано на быстрое выполнение операций перебора и фильтрации троек по одному или нескольким параметрам, а также на поддержку запросов стандарта SPARQL. Некоторые хранилища дополнительно поддерживают интерпретацию отношений rdf:subClassOf, rdf:subPropertOf и производных от rdfs:label. Это позволяет создавать средства визуализации содержимого графа, например строить интерфейсы администратора хранилищ.
Разработчиками LOD создан ряд ресурсов для описания информации, в том числе набор он-тологий базового уровня для описания различных аспектов контента (scos, rdfs, XMLSchema, de, prov, oa, schema.org и др.), графы, представляющие энциклопедические данные, например, Dbpedia [3], Wikidata [4], Google Knowledge Graph, сервисы автоматизации частичной семантической разметки текста, например Dbpedia Spotlight [5], средства распределенного исполнения SPARQL-запросов. Созданные ресурсы позволяют разрабатывать механизмы интеграции данных графов, распределенных в сети интернет, в единую информационную среду.
Средства цифрового архива
Инструментарий разработки цифровых архивов, поддерживающий технологии LOD, предназначен для создания средств публикации накопленной в учреждении информации в виде, позволяющем ее интегрирование в единую информационную среду семантического веба, а также средств поддержки подготовки и публикации семантически размеченных документов, разработки веб-приложений публикации и обработки данных научных исследований.
Инструментарий цифрового архива строится на компонентной архитектуре. В качестве инстру-
Современные технологии. Системный анализ. Моделирование № 4 (56) 2017
мента реализации взята компонентная архитектура Zope (Zope Component Architecture, ZCA) [6], созданная для среды программирования Python [7]. В качестве основного формата внутреннего представления данных LOD использован граф библиотеки rdflib. Для передачи данных во внешние процессы граф (подграф) сериализуется в один из подходящих текстовых или двоичных форматов.
Инструментарий содержит следующие основные компоненты:
— хранилища контента и метаданных с доступом SPARQL, полнотекстовым поиском и возможностью обработки LOD, основанной на формализованных знаниях;
— сервис анализа хранимого контента и комплектации архива семантической информацией, описывающей контент;
— средства разработки приложений LOD и их пользовательских интерфейсов.
Хранение документов LOD
Документы в цифровом архиве представляются а) своим содержимым, которое хранится либо в базе данных библиотеки kyotocabinet, либо в виде файла в файловой системе. Метаин-формация, полученная обработкой и анализом содержимого, представляет собой б) аннотацию содержимого, описывается согласно LOD-стандарту oa и в) хранится в виде графов.
Каждая аннотация (субъект) представляет собой дерево с как минимум двумя узлами, формируемыми отношениями oa:hasTarget, указывающей на исходный контент, и oa:hasBody, указывающей на аннотацию. В качестве аннотации выступает текстовое содержимое документа, если его удалось изъять, а также структура типа Dublin Core (dc). Содержимое (байты, текст), хранимое в kyotocabinet, идентифицируется его 128-битным murmur3-хэшем, что позволяет создавать отображения ключ (хэш) на содержимое и обратно. Хэш является идентификатором содержимого в LOD. Использованная система отображения позволяет достаточно просто и вычислительно эффективно реализовывать отображения при достаточно малой вероятности наложения хэш-значений.
Рассмотрим основные свойства использованных для описания унаследованного контента онтологий.
Open Annotation (oa). Стандарт этой онтологии принят в 2017 году, ее основная задача, представлять содержимое (аннотацию), описывающее другое содержимое. Закладка браузера является примером такого содержимого.
Friend-of-a-friend (foaf) позволяет представлять информацию об агентах: физических и юридических лицах, а также программных агентах.
Provenance (prov). Онтология prov - основа описания информационных потоков в документах и их взаимосвязи. В цифровом архиве prov используется для ассоциации документа с цифровым архивом и организацией владельцем.
Dublin Core (de) представляет в аннотации ментаинформацию о творческом произведении: авторов, формат содержимого, его описание и др.
DBPedia resource (dbr) - пространство имен объектов (ресурсов) Wikipedia. Онтология dbr используется для обозначения конкретных сущностей, географических названий и т. п.
Schema.org (sehema) представляет объекты, распознаваемые поисковыми агентами Google, Yandex, Yahoo и др.
Кроме перечисленных онтологий используются стандартные онтологии (RDF, RDFs, RDFa, XSD) и онтологии из проекта NEPOMUK (https : //userbase . kde . org/Nepomuk), предназначенные для описания объектов, хранимых в полнотекстовых индексных цифровых архивах.
Компонента анализа контента
Метаинформация о контенте комплектуется в результате анализа так называемыми экстракторами. Экстракторы анализируют содержимое и пытаются получить информацию о текстовом содержимом, авторе, времени создания контента и др. Экстраторы реализованы на основе утилит file, extract (libextraet), traeker и reeoll. Все эти утилиты относятся к свободному программному обеспечению и интегрированы с компонентой как внешние процессы.
Результаты анализа экстракторов представляются в виде подграфа oa, связываются логически с исходным содержимым и передаются в хранилища метаданных LOD.
Хранилище метаданных
Реализация стандарта хранения графа LOD выполнена с использованием программной системы ClioPatria [8]. Система ClioPatria реализована в среде программирования SWI-Prolog. Проект находится в стадии активной разработки и нацелен на создание сервиса хранения графов LOD, реализующих как все стандарты хранения и доступа, так и тесную интеграцию с Prolog.
Системный уровень хранилища реализован на языке C. Хранилище использует компактные структуры данных для представления троек в оперативной памяти, а также на диске. Особенностью хранилища является тот факт, что все тройки хра-
Информатика, вычислительная техника и управление
Modern technologies. System analysis. Modeling, 2017, Vol 56, no.4
нятся непосредственно в оперативной памяти, т. к. у хранилища нет специальных допущений о структуре возможных запросов. Таким образом, оперативная память сервера - это критический ресурс хранилища.
Разработчиками ClioPatria создан инструментарий доступа к хранилищу несколькими способами: осуществление SPARQL-запросов по стандартному протоколу, а также запуск запросов к Prolog-системе при помощи протокола Pengines [9]. Для протокола Pengines создан ряд реализаций в виде классов языков программирования JavsScript, Java, Python. При помощи этих классов разработчики приложений и программных агентов могут взаимодействовать с машиной логического вывода сервера ClioPatria.
Средства логического вывода
Наличие в ClioPatria встроенной системы программирования SWI-Prolog [10] и средств интеграции с RDFa отрывает широкие возможности по обработке размеченной цифровой информации, хранимой в архиве, на основе формализованных знаний. «Пролог» позволяет осуществлять запросы в форматах Datalog и SPARQL, а также строить систему знаний для обработки полученных данных.
В качестве эксперимента средствами «Пролога» в очень короткий срок удалось провести интеграцию известного примера естественно-языкового интерфейса к базе данных по географии США, поставляемого совместно с системой программирования TurboProlog-2.0 (geobase), с встроенной в SWI-Prolog системой поддержки RDFa. В результате разработан прототип аналогичного интерфейса к базе данных активных разломов Сибири, разработанной в Институте земной коры СО РАН.
Другим применением логического вывода выступает поддержка разработки интегрированных рекомендательных систем [11, 12], основанных на онтологическом описании набора признаков рекомендуемого объекта и характеристик пользователя. Основной проблемой, решаемой в таких системах, является обобщение хранимой информации, что позволяет как расширять набор получаемых рекомендаций за счет смежных терминов в одной общей категории, так и сужать объем выдачи при помощи замены общих терминов узкоспециализированными, релевантными поисковому запросу.
Полнотекстовый поиск
Система ClioPatria обладает некоторыми средствами поиска текстовой информации по ключевым словам, однако в архиве целесообразно использовать более мощные системы полнотекстового индекса, например Elasticsearch [13]. Реа-
лизация и интеграция этого сервиса достаточно проста, так как любой RDF-граф представим в формате JSON (JSON-LD), при этом JSON - это основной формат хранения индексируемой информации в системе Elasticsearch, необходимо только на сервере выделить особым образом тройки, которые отвечают за представление ресурса пользователю в результатах поиска. Elasticsearch обладает средствами нечеткого сравнения термов, что позволяет развивать систему в направлении реализации систем поиска релевантной информации. Основные аспекты функционирования модулей рассматриваются далее по тексту статьи в разделе приложений.
Приложения технологий
Разработанные средства использованы в решении ряда прикладных задач. Приведем один пример использования средств LOD и компонент архива.
Министерство образования и науки Российской Федерации после ряда экспериментов перешло на широкомасштабное внедрение Болонского процесса в образовательную среду Российской Федерации. Одной из задач, решаемых в рамках этого внедрения, является переход к компетент-ностно-ориентированному представлению требований к педагогическому процессу. Проводимая реформа затрагивает все аспекты процесса, включая систему классификации специальностей (внедрение программ направлений), специализацию по уровням квалификации (бакалавриат, магистратура и др.), введение прикладного бакалавриата, перечень преподаваемых курсов, целей и задач курсов (согласование с компетенциями, заданными в Федеральном государственном стандарте), формы ведения занятий в вузе (введение интерактивных форм обучения), распределение лекционных и практических занятий и др. Существующая документация курса дополнена новыми формами обязательных документов - фондом оценочных средств (ФОС), аннотациями курсов. В дополнение к этому, руководство вуза с целью повышения качества предоставляемых образовательных услуг вводит собственные дополнения к форме, содержанию и требованиям к оформлению документации, в частности, к качеству конвертации в HTML для публикации на сайте вуза.
Для минимального исполнения требований руководства вузов для каждого курса преподавателю требуется оформить как минимум три документа - рабочую программу курса, аннотацию к ней, а также ФОС. Этот набор составляется для каждой возможной комбинации: вуз, кафедра, специальность, направление (профиль), програм-
Современные технологии. Системный анализ. Моделирование № 4 (56) 2Oll
ма, квалификация (бакалавр, специалист, магистрант, аспирант), академический или прикладной вариант квалификации, форма обучения (очная, заочная, вечерняя, очно-заочная и др.). Каждая комбинация отражается в учебном плане вуза, данные из которого ежегодно или два раза в год должны уточняться в рабочих программах. Последние пять лет показали уровень продуманности принимаемых менеджерами министерства решений в части требований к представлению курса -разработано четыре поколения стандартов (1, 2, З и З+), для которых требовалось представить документы в соответствующей обновленной форме. На этом фоне задача разработки нового учебного пособия теперь кажется более простой, чем раньше. Опыт показывает, что преподаватели по большей части не способны справиться с качественным оформлением документов в предоставленные им сроки, что приводит к необходимости руководству кафедр нанимать секретаря-специалиста, функцией которого является доведение предоставленной документации до необходимого уровня качества.
Решение данной проблемы видится в разработке программной системы, позволяющей собирать тексты рабочих программ, аннотаций и ФОС из отдельных частей: перечня компетенций и распределения нагрузки (учебный план); содержания (преподаваемых тем модуля/курса) и ФОСа, тексты которых разделяются между разными версиями документов. Титульные листы формируются также из данных учебного плана и подготовленных шаблонов. Средств Microsoft Word и Excel, стандартно используемых для решения этой задачи, со встроенным VBA явно недостаточно.
Рассмотрим схему представления размеченной рабочей программы в разработанной системе. Формат представления базируется на результатах из [14, 15].
<!DOCTYPE html PUBLIC "-//WЗC//DTD XHTML l.O Transitional//EN" "http://???.?З.org/TR/xhtmll/DTD/xhtmll-transitional.dtd">
<html lang="ru" xmlns=http://???.?З.org/l99 9/xhtml xmlns:taa=http://irnok.net/engine/rdfa-manipulation
xml:lang="ru" metal :define-macro="page"> <head> <!-- Подключение стилевых таблиц и модулей --> </head>
<body prefix="rdf: http://???.?З.org/l999/O2/2 2-rdf-syntax-ns# ... foaf: http://xmlns.com/foaf/O.l/ imei: imei.html# course :
https://irnok.net/college/plan/01.0З.02-16-l2"Í4-2 S6l_l%DO%BA_PB-SM. plm. xml .xlsx-
UDDO U 9!ïll. ü.do U 92.I!D.OU 9 SÜDDOÜ92 . З . html # "
resource="#post"
typeof="schema:CreativeWork sioc:Post prov:Entity">
<!-- Панель управления приложением -->
<main lang="ru" resource="#annotation" typeof="oa:Annotation"
id="main-document-container"><div property^' oa:hasTarget"
resource="#course-work-program"></div> <article property="oa:hasBody" typeof="schema:Article foaf:Document curr:WorkingProgram"
resource="#course-work-program" id="main-document">
<div taa:content="imei:title-page"></div> <!--Титульный лист.. -->
<div taa:content="imei:neg-UMK"></div> <!--Лист согласования..-->
<section id="contents" class="break-after"> <h2 class="nocount е">Содержание</%2>
<div id="tableOfContents"></div> </section>
<section id="course-description" re-sour ce="Qdescription" property="schema:hasPart" typeof="schema:CreativeWork">
<div property="schema:hasPart" re-sour ce="Qpurpose"
typeof="dc:Text cnt:ContentAsText" >
<div property="cnt:chars" datatype="xsd:string">
<h2 property="dc:title" datatype="xsd:string">Цели и задачи дисциплины (модуля)</h2>
^>Целю преподавания дисциплины "Технологии программирования" является освоение ...</p> </div> </div>
<div property="schema:hasPart" typeof="dc:Text
cnt:ContentAsText" resource="#volume">
<div property="cnt:chars" datatype="xsd:string">
<h2 property="dc:title" datatype="xsd:string"> Объем дисциплины (модуля) и виды учебной работы (разделяется по формам обучения)</h2>
<div taa:content="course:time-distrib"></div> </div> </div>
В приведенном примере ключевые структуры выделены жирным шрифтом, прокомментируем эти структуры.
Страница, отображаемая пользователю, -это аннотация документа "#annotation", причем и аннотируемое содержимое, и текст аннотации - это одно и то же на этапе формирования документа: ресурс "#соигзе-?огк-ргодгат". В ЬОБ все ресурсы являются глобальными. В данном случае это достигается подстановкой пространства имен по умолчанию, полного ИМ-
Информатика, вычислительная техника и управление
Modern technologies. System analysis. Modeling, 2017, Vol 56, no.4
адреса текущей страницы, с левой стороны от названия ресурса.
Титульный лист и лист согласования вставляются со страницы шаблонов " ime i . html" (сведения об Институте математики, экономики и информатики Иркутского государственного университета). Данные курса и название специальности вставляются в шаблон из контекста документа. Все ключевые статические шаблоны курсов можно поместить на одну страницу шаблонов.
Текст разбивается на разделы, обрамляется тегами <div> и <span> с соответствующими структурами RDFa. Анализ опыта разработчиков LOD-ресурсов показал, что для формирования отношения достаточно использовать RDFa-теги property, typeof и datatype. От использования rel и about следует отказаться. Это делает структуру семантической разметки более строгой за счет уменьшения количества сущностей.
Команда taa: content добавляет в документ текст другой страницы, адрес которой формируется интерпретацией параметра, например, taa:content="course:time-distrib" включает в текст страницы сгенерированную таблицу распределения часовой нагрузки между видами занятий (лекции, практики, лабораторные, СРС и т. д.). Для генерации таких таблиц разработан сервер веб-страниц данных курсов. Каждая страница сервера представляет какой-либо курс/модуль из учебного плана. Содержание страницы кодируется структурой ее URL и сверстыва-ется в момент первого обращения. Шаблоны текста обозначаются атрибутом id.
В режиме редактирования рабочей программы (документа) все теги, имеющие комбинацию атрибутов property="cnt: chars" и
datatype="xsd:string", преобразуются в редактируемый текст. Для ясности пользователю представляется документ без taa:-включений с указанием этих включений при помощи специальных тегов и стилей. В момент завершения редактирования текст сохраняется в файловой системе сервера. Далее пользователь может выполнить фиксацию (commit) изменений и синхронизацию текста сохраненного документа с сервером системы контроля версий текста.
В другом приложении реализована задача автоматизации формирования документов с согласованием грамматики при подстановке фраз в текст. Рассмотрим пример текста доверенности.
<p>h, <span proper-ty="fibol:designatesSignatory bibo:owner"
typeof="fibol:Signatory foaf:Person dbr:Principal"
resource="#principal"><span proper-
ty="foaf:name" id="signatory-name" datatype="xsd:string" class="edit">MBaHOBa Елена BMKTopoBHa</span>,<span property^' adoc:hasPassport" resource="#signatory-passport" typeof="acrt:Certification"> <span property="acrt:qualification" re-sour ce = " dbr : Passport ">паспорт</span>...
Данный пример выражает факт, что доверитель (f ibol: designatesSignatory) удостоверяется (adoc: hasPassport) при помощи паспорта (acrt: qualification dbr: Passport).
В режиме редактирования документа в виде формы теги, содержащие набор атрибутов datatype="xsd:string", class = "edit", преобразуются в поле ввода. Значение этого поля распространяется далее по тексту документа. Согласование грамматики реализовано при помощи атрибутов id, data- и class. Форма class="disp" задает возможность подстановки фразы, идентифицированной id, в текст данного тега. Атрибуты data-m и data-f задают вариант слов, соответствующий роду соответствующего существительного. Атрибут data-case задает склонение (падеж и число), в которое надо поставить слова текста. Алгоритмы грамматических преобразований реализованы на сервере. Продолжим предыдущий пример: рассмотрим грамматические конструкции.
...npo\MBarom;<span class = "disp" id="signatory-name" data-m="MO" data-
f="a[">__</span> по адресу:...Подпись <span
class="disp string" id="signatory-name" da-ta-case="gent">__</span> удостоверяю...
Проект доступен в виде модулей языка программирования Python по адресу: https://github.com/isu-enterprise.
Заключение
В статье обсуждается вопрос применения технологий Linked Open Data (LOD, открытых связанных данных) для решения задач создания цифровых архивов документов с возможностью создания новых документов на основе хранимых данных. Верстка документа осуществляется при помощи алгоритмов, интерпретирующих отношения между элементами дерева HTML. Алгоритмы верстки запускаются при наличии соответствующих условий в узлах дерева документа. Каждый алгоритм вносит в дерево изменения, формирующие окончательное содержание и вид документа. Создаваемые документы хранятся на серверах, поддерживающих протокол HTTP.
Приведен пример использования разработанных средств подготовки документов в образовательной среде и юридических документов. Дальнейшее развитие данного проекта осуществ-
Современные технологии. Системный анализ. Моделирование № 4 (56) 2017
Результаты получены при частичной поддержке Совета по грантам Президента Российской Федерации, государственной поддержке ведущих научных школ Российской Федерации (НШ-8081.2016.9).
Результаты получены при активном использовании сетевой инфраструктуры Телекоммуникационного центра коллективного пользования «Интегрированная информационно-вычислительная сеть Иркутского научно-образовательного комплекса» (ЦКП ИИВС ИР-НОК) (http://net.icc. ги).
ляется по нескольким направлениям: а) совершенствование средств верстки документов, б) автоматизация разметки на основе анализа изменения документов [2], в) реализация практических приложений, г) сбор дополнительной информации о потребностях пользователей, д) разработка средств обеспечения регламентированного доступа к информации. Созданные программные средства и технологии направлены на разработку программной среды глобального электронного документооборота, позволяющего физическим лицам и организациям обмениваться документами, логическая структура которых трудноформализуема в рамках традиционных средств автоматизации документооборота.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Bizer Ch., Heath Т., Berners-Lee Т. Linked Data - The Story So Far 11 International Journal on Semantic Web and Information Systems. 2009. Vol. 5 (3). P. 1-22.
2. Подход к управлению содержанием сайта на основе технологий RDF 1 Е.А. Черкашин, П.В. Белых и др. 11 Знания - Онтологии - Теории : материалы Всерос. конф. с междунар. участ. Т. 2. Новосибирск. 2013. С. 204-212.
3. Lehmann J., Isele R., Jakob M., Jentzsch A., Kontokostas D., et al. DBpedia - A Large-scale, Multilingual Knowledge Base Extracted from Wikipedia 11 Semantic Web Journal. 2015. Vol. 6. No. 2. P. 167-195.
4. Krotzsch M. How to use Wikidata: Things to make and do with 40 million statements 11 In Keynote at the 10th Wikimania Conference. 2014.
5. Daiber J., Jakob M., Mendes P. Improving Efficiency and Accuracy in Multilingual Entity Extraction 11 Proceedings of the 9th International Conference on Semantic Systems (I-Semantics), 2013.
URL: http:11korrekt.org1talks120141wikimania-wikidata.svg (access-date: 01.07.2017).
6. Baiju M. A. Comprehensive Guide to Zope Component Architecture. [Электронный ресурс] URL: http:11muthukadan.net1docs1zca.html (access date 01.07.2017).
7. Langtangen H. A Primer on Scientific Program-ming with Python (Texts in Computational Sci-ence and Engineering) 3rd ed. Springer. 2012. 798 р.
8. Wielemaker J., Beek W., Hildebrand M., Ossenbruggen J. ClioPatria: A SWI-Prolog infrastructure for the Semantic Web 11 Semantic Web. 2016. Vol. 7 (5). P. 529-541.
9. Lager Т., Wielemaker J. Pengines: Web Logic Programming Made Easy 11 Theory and Practice of Logic Programming. 2014. Vol. 14 (4-5).
10. Wielemaker J., Schreiber G., Wielinga B. Prolog-Based Infrastructure for RDF: Scalability and Performance 11 In: Fensel D., Sycara K., Mylopoulos J. (eds) The Semantic Web - ISWC 2003. ISWC 2003. Lecture Notes in Computer Science. 2003. Vol. 2870. Springer, Berlin, Heidelberg.
11. Нефедова Ю.С. Архитектура гибридной рекомендательной системы GEFEST (Generation-Expansion-Filtering-Sorting-Truncation) 11 Системы и средства информатики. 2012. Т. 22. Вып. 2. С. 176-196.
12. Beel J., Gripp B., Langer S., Breitinger C. Research-paper recommender systems: a literature survey 11 International Journal on Digital Libraries. 2016. Vol. 17. Pр. 305. (access date: 12.12.2016).
13. Kuc R., Rogozinski M. Mastering Elasticsearch - Second Edition. Packt Publishing. 2015. 372 p.
14. Capadisli S., Guy A., Verborgh R., Lange C., Auer S., Berners-Lee T. Decentralised Authoring, Annotations and Notifications for a Read-Write Web with dokieli 11 Procs of ICWE international conference, 5-8 June, 2017, Rome, Italy. (to appear) [Electronic resource] Preprint. URL:http:11csarven.ca1dokieli-rww. (access date: 12.12.2016).
15. Heino N, Tramp S, Auer S, et al. Managing Web Content using Linked Data Principles - Combining semantic structure with dynamic content syndication 11 Computer Software and Applications Conference (COMPSAC), IEEE 35th Annual. 2011. P. 245-250. [Electronic resource] URL:http:11svn.aksw.org1papers120111C0MPSAClod2.eu1public.pdf (access date: 30.05.2013).
REFERENCES
1. Bizer Ch., Heath T., Berners-Lee T. Linked Data - The Story So Far. International Journal on Semantic Web and Information Systems, 2009, Vol. 5 (3), pp. 1-22.
2. Cherkashin E.A., Belykh P.V. et al. Podkhod k upravleniyu soderzhaniem saita na osnove tekhnologii RDF [Approach to managing the content of the site based on RDF technologies]. Znaniya - Ontologii - Teorii : materialy Vseros. konf. s mezhdunar. uchast. T. 2. [Knowledge - Ontology - Theories: Materials of the All-Russian Conf. with intern. participants. Vol. 2]. Novosibirsk, 2013, pp. 204-212.
3. Lehmann J., Isele R., Jakob M., Jentzsch A., Kontokostas D., et al. DBpedia - A Large-scale, Multilingual Knowledge Base Extracted from Wikipedia. Semantic Web Journal, 2015, Vol. 6, No. 2, pp. 167-195.
4. Krotzsch M. How to use Wikidata: Things to make and do with 40 million statements. In Keynote at the 10th Wikimania Conference, 2014.
5. Daiber J., Jakob M., Mendes P. Improving Efficiency and Accuracy in Multilingual Entity Extraction. Proceedings of the 9th International Conference on Semantic Systems (I-Semantics), 2013.
URL: http://korrekt.org/talks/2014/wikimania-wikidata.svg (access-date: 01.07.2017).
6. Baiju M. A. Comprehensive Guide to Zope Component Architecture. [Elektronnyi resurs]
URL: http://muthukadan.net/docs/zca.html (access date 01.07.2017).
[Щ] Информатика, вычислительная техника и управление (S L
ее «в Modern technologies. System analysis. Modeling, 2017, Vol 56, no.4 r
7. Langtangen H. A Primer on Scientific Programming with Python (Texts in Computational Science and Engineering) 3rd ed. Springer, 2012, 798 p.
8. Wielemaker J., Beek W., Hildebrand M., Ossenbruggen J. ClioPatria: A SWI-Prolog infrastructure for the Semantic Web. Semantic Web, 2016, Vol. 7 (5), pp. 529-541.
9. Lager T., Wielemaker J. Pengines: Web Logic Programming Made Easy. Theory and Practice of Logic Programming, 2014, Vol. 14 (4-5).
10. Wielemaker J., Schreiber G., Wielinga B. Prolog-Based Infrastructure for RDF: Scalability and Performance. In: Fensel D., Sycara K., Mylopoulos J. (eds) The Semantic Web - ISWC 2003. ISWC 2003. Lecture Notes in Computer Science. 2003, Vol. 2870. Springer, Berlin, Heidelberg.
11.Nefedova Yu.S. Arkhitektura gibridnoi rekomendatel'noi sistemy GEFEST (Generation-Expansion-Filtering-Sorting-Truncation) [The architecture of the hybrid GEFEST recommendation system (Generation-Expansion-Filtering-Sorting-Truncation)]. Sistemy i sredstva informatiki [Systems and Means of Informatics], 2012, Vol. 22, Issue 2, pp. 176-196.
12. Beel J., Gripp B., Langer S., Breitinger C. Research-paper recommender systems: a literature survey. International Journal on Digital Libraries. 2016. Vol. 17. Pr. 305. (access date: 12.12.2016).
13. Kuc R., Rogozinski M. Mastering Elasticsearch - Second Edition. Packt Publishing, 2015, 372 p.
14. Capadisli S., Guy A., Verborgh R., Lange C., Auer S., Berners-Lee T. Decentralised Authoring, Annotations and Notifications for a Read-Write Web with dokieli. Procs of ICWE international conference, 5-8 June, 2017, Rome, Italy. (to appear) [Electronic resource] Preprint. URL:http://csarven.ca/dokieli-rww. (access date: 12.12.2016).
15. Heino N., Tramp S., Auer S., et al. Managing Web Content using Linked Data Principles - Combining semantic structure with dynamic content syndication. Computer Software and Applications Conference (COMPSAC), IEEE 35th Annual, 2011, pp. 245-250. [Electronic resource] URL:http://svn.aksw.org/papers/2011/C0MPSAC_lod2.eu/public.pdf (access date: 30.05.2013).
Информация об авторах
Черкашин Евгений Александрович - к. т. н., старший научный сотрудник, Институт динамики систем и теории управления СО РАН им. В.М. Матросова, г. Иркутск, e-mail: eugeneai@irnok.net
Орлова Ирина Витальевна - к. ф.-м. н., доцент, Иркутский национальный исследовательский технический университет, г. Иркутск, e-mail: soobshenie l@mail.ru
Для цитирования
Черкашин Е. А. Инструментарий создания цифровых архивов документов на основе связанных данных / Е. А. Черкашин, И. В. Орлова // Современные технологии. Системный анализ. Моделирование. - 2017. -Т. 56, \ 4. -С. 100-107. -Б01: 10.26731/1813-9108.2017.4(56).100-107.
УДК 004.421
Authors
Evgeny Alexandrovich Cherkashin - Ph.D. in Engineering Science, Senior Research Officer, Federal Government Budgetary Institution of Science, Matrosov Institute for System Dynamics and Control Theory of Siberian Branch of Russian Academy of Sciences, Irkutsk, e-mail: eugeneai@irnok.net
Irina Vitalievna Orlova - Ph.D. in Physics and Mathematics, Assoc. Prof., Irkutsk National Research Technical University, Irkutsk, e-mail: soobshenie_1@mail.ru
For citation
Cherkashin E. A., Orlova I. V. Instrumentarii sozdaniya tsifrovykh arkhivov dokumentov na osnove svyazannykh dannykh [Instrumental tools for construction of the digital archives of the documents based on linked data]. Sovremennye tekhnologii. Sistemnyi analiz. Modelirovanie [Modern Technologies. System Analysis. Modeling], 2017. Vol. 56, No. 4, pp. 100-107. DOI: 10.26731/1813-
9108.2017.4(56).100-107._
DOI: 10.26731/1813-9108.2017.4(56). 107-114
А. Д. Колосов, В. О. Горовой, В. В. Кондратьев
Иркутский национальный исследовательский технический университет, г. Иркутск, Российская Федерация Дата поступления: 8 ноября 2017 г.
СЕРВИС ДЛЯ РЕШЕНИЯ ЗАДАЧ БУЛЕВОЙ ВЫПОЛНИМОСТИ С ПРИМЕНЕНИЕМ ТЕХНОЛОГИИ NVIDIA CUDA
Аннотация. В статье представлен краткий обзор существующих решателей задач булевой выполнимости, ускоренных с применением технологии NVIDIA CUDA. Рассматриваются основные подходы к распараллеливанию решателей, основанных на методах как полного, так и локального поиска. Представлено описание решателя, разработанного автором статьи, основанного на алгоритме локального поиска. Рассмотрены наиболее заметные реализации решателей, распараллеленных при помощи GPU. Также приведён решатель, основанный на методе локального поиска, разработанный автором. Описан сервис, разработанный с использованием инструментария HpcSoMas Framework. С помощью данного сервиса проведено большое количество экспериментов, результаты которых были обработаны в автоматическом режиме. Сервис показал свою работоспособность и значительно упростил проведение экспериментов. Приведён пошаговый алгоритм, использованный для реализации. Описан способ ускорения алгоритма с применением графического ускорителя. Рассматривается один из вариантов распределения памяти между центральным и графическим процессором. Приведено описание сервиса для автоматизации решения задач булевой выполнимости и обработки результатов. Данный сервис обеспечивает удаленный доступ к вычислительному ресурсу, предоставляет пользовательский интерфейс для формирования задания по запросу пользователя, осуществляет мониторинг выполнения задания и уведомляет пользователя о статусе запроса. Другой важной функцией разработанного сервиса является возможность статистической обработки полученных результатов и визуализации интересующих значений в виде графиков. В заключительной части статьи представлены результаты вычислительных экспериментов, полученные с помощью описанного сервиса. К дальнейшим направлениям исследования можно отнести расширение функциональных воз-
©А. Д. Колосов, В. О. Горовой, В. В. Кондратьев, 2011
107