Содержание к диссертации
Введение
1 Способы публикации информации и технологии разработки информационных систем 14
1.1 Информация как продукт электронных информационных систем 14
1.2 Типовые модели представления информации 19
1.2.1 Форматы документов для представления текстов на естественном языке 19
1.2.2 Схемы данных 21
1.2.3 Семантические сети 26
1.2.4 Нецелесообразность использования XML в качестве универсального языка для представления информации 28
1.2.5 Проект Sematic Web 31
1.2.6 Модели поиска документов 35
1.2.7 Сравнительные характеристики различных моделей представления информации 37
1.3 Технологии разработки информационных систем 40
1.3.1 Устоявшиеся парадигмы разработки информационных систем 40
1.3.2 Требования к информационным системам 43
1.3.3 Три класса технологических платформ разработки информационных систем 45
1.3.4 Информационные системы на основе скриптов 49
1.3.5 Система публикации XML-документов
Apache Cocoon 50
1.3.6 Информационные системы на основе
протокола Z39.50 (ISO-23950) 51
1.4 Выводы 53
2 Модель электронного документа и ее применение в моделях информационных систем 55
2.1 Понятие модели предметной области 55
2.2 Понятие электронного документа 57
2.2.1 Структура семантической информации и ее наполнение . 57
2.2.2 Модель электронного документа 60
2.2.3 Применение модели электронного документа 62
2.3 Некоторые классы информационных систем 65
2.3.1 Общий класс информационных систем 65
2.3.2 Коллекционные информационные системы 66
2.3.3 Мультистилевые информационные системы 67
2.3.4 Скриптовые информационные системы 69
2.3.5 Отношения между классами информационных систем и
их свойства 70
2.3.6 Шаблонные мультистилевые информационные системы . 71
2.4 Использование RDF в качестве языка внутреннего представления документов 76
2.5 Выводы 81
3 Разработка web-ориентированных информационных систем 83
3.1 SMART: система управления web-приложениями на основе RDF-
технологии 83
3.1.1 Архитектура системы SMART 83
3.1.2 Технологические решения системы SMART 85
3.1.3 Трансформеры, входящие в состав программного обеспечения SMART . - 87
3.1.4 Тест трудоемкости разработки информационных систем . 92
3.1.5 Тест производительности 94
3.1.6 Семантический поиск информации 96
3.2 Информационная система "Конференции" 98
3.2.1 Постановка задачи 98
3.2.2 Архитектура информационной системы "Конференции" 99
3.2.3 Описание схемы базы данных 100
3.2.4 Реализация семантического поиска информации 104
3.3 Примеры информационных систем на основе библиотеки SMART 111
3.3.1 Web-интерфейс для доступа к БД на основе структурных метаданных 111
3.3.2 Атлас "Атмосферные аэрозоли Сибири" 112
3.3.3 Информационная система "Студенты" 114
3.4 Выводы 115
Заключение 117
Литература 118
- Типовые модели представления информации
- Сравнительные характеристики различных моделей представления информации
- Структура семантической информации и ее наполнение
- Технологические решения системы SMART
Введение к работе
Актуальность темы. Являясь одним из самых значительных достижений XX века, Интернет в настоящее время представляет собой главный программно-организованный информационный ресурс человечества. Его огромный потенциал постоянно предлагает эффективные решения задач, так или иначе связанных с обменом информацией. В данной работе рассматривается одна из таких задач: разработка информационных систем (ИС), которые, среди прочего, реализуют функции хранения информации (как правило, в виде наборов данных) и ее предоставления запрашивающим клиентам — программным агентам, осуществляющим доступ к услугам ИС. При этом возникает проблема разных требований клиентов к формату предоставления информации, что осложняет организацию взаимодействия между различными ИС. Также может быть затруднено и осуществление эффективного поиска, поскольку документы, предназначенные для прочтения человеком, и документы, пригодные для семантического анализа поисковыми агентами, должны быть опубликованы в разных форматах, которые соответствуют требованиям клиентов.
Поскольку одну и ту же информацию можно представить и передать различными способами.в зависимости от возможностей ее отправителя и потребностей получателя, то при разработке ИС большую роль играют средства, используемые для организации обмена информацией с клиентами. На практике архитектура ИС основывается на схеме отображения данных из внутреннего хранилища, обычно управляемого СУБД, в конечный документ. При этом внимание акцентируется на том, как составить документ, а не на том, что является его содержанием. В следствие этого, ИС оказываются спроектированными в расчете на определенный тип клиентов, удовлетворяющий специфичным требованиям; обслуживание других клиентов производится не эффективно.
Также в данной архитектуре трудно указать уровень, на котором может быть организовано информационное пространство, являющееся основным ис-
ВВЕДЕНИЕ
точником содержательного наполнения информационных ресурсов. Традиционно, вместо него определяется уровень баз данных, на'котором~ посредством функций СУБД выполняются поисковые запросы. Но идеология СУБД предполагает выполнение операций только со структурами.данными. Поэтому данный подход не может реализовать полноценный информационный поиск, предоставляющий среду для создания гибких поисковых запросов, включающих не только структурные отношения, но и отношения более высокого семантического порядка, такие как "часть-целое" или "синоним".
Особый интерес представляет интерпретация понятия информация. В классической теории информации это понятие рассматривается с точки зрения количественных характеристик (энтропии, вероятностного распределения), которые малопригодны при изучении моделей ее представления. В конце 60-х годов появились работы о двух качественных моделях представления знаний: фреймовых моделях (М. Минский) и семантических сетях (А. Коллинс, Р. Квиллиан). В настоящее время, в связи с появлением большого числа разнородных источников информации, наиболее активно проводятся исследования семантических сетей. Особо нужно выделить проект WWW-консорциума Semantic Web, целью которого является создание глобального информационного пространства, где возможны качественно новые решения проблем информационного поиска и обмена. Для этого предлагается использовать концепцию семантических сетей, которая ляжет в основу унифицированной среды представления информации вместе, с ее предельной семантической детализацией. Всеобщий интерес, участие ведущих специалистов и компаний, динамичное развитие и большое число связанных с данным проектом задач в области сбора, хранения, передачи и представления информации подчеркивает несомненную актуальность темы.
Существующие технологии, которые решают задачи публикации информации, адаптированной к требованиям клиентов (например, программный продукт Apache Cocoon), практически не затрагивают вопросы, связанные с информационным поиском. С другой стороны, в контексте проекта Semantic
ВВЕДЕНИЕ
Web до сих пор недостаточно внимания уделялось проблемам отображения данных из таблиц реляционных СУБД в семантические сети, а также отображения семантических сетей в документы различных форматов.
Данная работа поддерживает основные идеи проекта Semantic Web и предлагает технологию публикации информации, основанную на адаптации функционирования ИС к потребностям клиентов. Суть этого подхода заключается в выделении в архитектуре ИС информационного уровня, который обеспечивает унифицированный источник информации, и презентационного уровня, который определяет правила создания конечных документов, что дает возможность повысить эффективность обмена информацией. Также данная технология позволяет отказаться от дублирования программ, генерирующих документы, которые имеют одинаковое содержание, но предназначены для разных клиентов, благодаря чему уменьшаются затраты на разработку ИС в целом. Особую актуальность задача приобретает для разработки web-ориентированных ИС, предоставляющих информацию для пользователей и узко специализированных программных агентов, функционирующих в рамках Semantic Web.
Предметом исследования являются способы электронного представления информации и технологии построения ИС.
Цель исследования. Разработать технологию построения ИС, в которых информация публикуется в виде электронных документов различных форматов на основе ее внутреннего представления посредством семантических сетей. На базе этой технологии предложить процедуру гибкого поиска документов, основанную на использовании семантических сетей.
Для достижения этой цели в диссертации последовательно решены следующие задачи:
определены требования, предъявляемые к современным информационным системам;
создана модель электронного документа, в которой реализовано представление информации в виде семантической сети и правила ее отобра-
ВВЕДЕНИЕ
жения в целевой формат;
создана и исследована модель информационной системы, позволяющая представлять одну и ту же информацию в виде документов различных форматов;
разработана технология создания информационных систем, реализующих предложенные модели;
предложенная технология апробирована на реально функционирующих информационных системах.
НА ЗАЩИТУ ВЫНОСЯТСЯ:
Модель электронного документа, позволяющая публиковать информацию в виде гипертекстовых документов, схем данных и семантических сетей.
Модель шаблонной мультистилевой информационной системы, использующая предложенную модель электронного документа.
Технологическая платформа SMART1 для создания web-ориентированных информационных систем, в основу которой положено внутреннее представление документов на базе языка описания ресурсов RDF2.
Информационная система "Конференции", которая была создана на основе предложенной технологии SMART.
Научная новизна работы состоит в:
Классификации способов электронного представления информации в виде электронного документа и определении трехкомпонентной модели документа, применимой для любого из рассмотренных способов.
Разработке оригинальной технология создания ИС, основанной на использовании семантических сетей в качестве средства для внутреннего представления информации.
1 SMART: System for Managing Application based on RDF Technology 2RDF: Resource Description Framework
ВВЕДЕНИЕ
3. Исследовании одного из наиболее востребованных сервисов для ИС — информационного поиска. Предложенная технология разработки ИС включает оригинальную методику создания единого информационного пространства на основе семантических сетей для заданной предметной области, над которым реализован поисковый сервис, предоставляющий качественно новые возможности по'сравнению с аналогичными традиционными сервисами.
Практическая значимость. На основе предложенной технологии разработана ИС "Конференции", которая функционирует в Институте вычислительных технологий СО РАН и активно используется рядом институтов Сибирского отделения для повышения эффективности научно-организационной деятельности. Разработана и внедрена в Институте химии и кинетики горения СО РАН информационно-вычислительная система (ИВС) Атлас "Атмосферные аэрозоли Сибири", которая позволяет оценить влияние антропогенных и естественных источников на изменение характеристик атмосферных аэрозолей, способствуя решению различных задач экологии и охраны окружающей среды.
Разработанный метод семантического поиска информации в рамках отдельной ИС допускает масштабирование и применение в любой распределенной среде. Поэтому в перспективе полученные результаты могут быть использованы при создании глобальных информационно-поисковых сервисов, функционирующих в рамках идеологии проекта Semantic Web.
Методика исследования. В работе используются методы и результаты теории информации и информационных процессов, теории графов, семантических сетей, аппарат порождающих грамматик. При реализации комплекса программного обеспечения применены методологии структурного, объектно-ориентированного и декларативного программирования, технологический инструментарий прикладного программирования.
Достоверность и обоснованность. Достоверность и обоснованность результатов диссертации определяются:
ВВЕДЕНИЕ
использованием открыто опубликованных материалов исследований и корректным применением представленных в них результатов;
сопоставлением основных положений работы с результатами решения аналогичных задач другими исследователями;
внедрением и практическим использованием разработанных информационных систем.
Личный вклад автора. Основные теоретические и практические результаты, изложенные в работе, получены лично автором. В частности, предложена оригинальная модель формирования документов, основанная на внутреннем представлении информации посредством семантических сетей. Автор принимал непосредственное участие в постановке задач, принятии концептуальных и технологических решений, разработке и анализе моделей, обсуждении результатов. На основе предложенной модели автором разработаны и внедрены информационные системы для научно-организационной и научно-исследовательской деятельности.
Апробация результатов. Основные положения диссертации обсуждались на VIII Международной конференции по электронным публикациям "EL-Pub2003", IX рабочем совещании по электронным публикациям "EL--Pub2004" (Новосибирск, 2003, 2004), Восьмой Международной конференции по электронным публикациям (Бразилия, 2004), Двенадцатой Международной конференции по вычислительной математике и современным прикладным программным системам (Владимир, 2003), Международной научно-практической конференции "Развивающее образование XXI века" (Горно-Алтайск, 2003), III и IV Всероссийских конференциях молодых ученых по математическому моделированию и информационным технологиям (Новосибирск, 2002, Красноярск,- 2003), Международной конференции "Вычислительные и информационные технологии в науке, технике и образовании" (Усть-Каменогороск, 2003), конференциях молодых ученых, посвященных М.А.Лаврентьеву (Новосибирск, 2003, 2004), Международной конференции по измерениям, моделированию и информационным системам для изучения окружающей среды
ВВЕДЕНИЕ
(Томск, 2004), XLI Международной научной студенческой конференции "Студент и научно-технический прогресс" (Новосибирск, 2003) и др.
Публикации. Основное содержание диссертации отражено в 10 работах. Опубликованы 4 статьи в журналах [1, 2, 3, 4], 5 докладов в сборниках трудов российских и международных конференций [5, б, 7, 8, 9], одно руководство по эксплуатации [10].
Структура и объем работы. Диссертация состоит из введения, трех глав, заключения, списка литературы из 93 наименований и приложений. Объем диссертации составляет 125 страниц (150 страниц с учетом приложений).
Типовые модели представления информации
Электронные документы должны иметь ряд преимуществ по сравнению с документами другой природы, поскольку, как правило, обладают автоматизированными средствами каталогизирования, хранения, поиска и изменения. Более того, процедура получения твердой копии электронного документа заметно проще, чем обратная процедура.
Когда в 80-х годах стало возможным создавать и обмениваться электронными документами, появилось понятие "электронного документооборота". При этом подразумевалось, что электронный документ является ни чем иным, как электронной копией бумажного документа. Другими словами, элек- тронный документ содержит форматированный текст на естественном языке со вставками графических элементов, визуальное представление которого на экране монитора есть точная копия бумажного документа.
На практике, структура таких документов состоит из двух частей: ме-таинформации о документе и содержания документа. Метаинформация содержит данные, не относящиеся напрямую к содержанию документа: дата создания, автор, различная техническая информация. Содержание документа состоит из текста, в который добавлены элементы разметки, указывающие каким образом следует отображать выделенные фрагменты текста и графические элементы. Правила описания структуры документа и его разметки называются форматом документа и могут быть заданы разными способами. Программа, предназначенную для создания визуального образа документов некоторого фиксированного формата, называется браузером.
Существует большое число форматов для представления документов различных типов. Разница между ними заключается, прежде всего, в функциональных возможностях, области применения, средствах их обработки, при вязке к операционной системе. Выделим и охарактеризуем наиболее популярные в настоящее время форматы:
PostScript, фактически, является языком программирования, содержащим команды принтеру, и предназначенный для печати графики и текста [16]. Браузеры для формата PostScript называются PostScript-принтерами, они интерпретирует PostScript-программу и посылают растровое изображение на устройство вывода, наиболее известной является программа Ghostscript [17]. Формат PostScript был разработан фирмой Adobe, он является зависимым от устройства вывода: для каждой платформы PostScript-документ должен делаться индивидуально, ем с учетом конкретных параметров устройства вывода. Наиболее характерная область применения формата — издательские системы.
PDF (Portable Document Format) является иерархическим структурированным форматом данных [18], причем PDF считается основным конкурентом в области документооборота формату PostScript. Ключевое различие их в том, что PostScript является языком программирования, оперирующим графическими данными, тогда как PDF — форматом хранения графических данных, включающим описание, связывающее их в единый документ. Следовательно, PDF не зависит от устройства вывода, PDF-документы компактнее и отображаются быстрее, чем PostScript. Отметим, что являясь разработчиком обоих форматов, компания Adobe провозгласила курс на переход от PostScript к PDF [19].
RTF (Rich Text Format). Данный формат был определен фирмой Microsoft как стандартный формат для обмена текстовыми документами [21]. RTF позиционирован как формат, ориентированный на текстовые документы, следовательно его функциональность ниже, чем у PDF-формата.
HTML (Hyperext Markup Language) [22] является основным форматом представления гипертекстовых документов в Web. HTML-документы имеют маленький размер, быстро отображаются в браузерах независи
мо от платформы и операционной системы. Несмотря на то, что описательные возможности языка бедны, значение языка HTML трудно переоценить: принятие общего стандарта было важнейшим шагом на пути к созданию единого глобального информационного пространства.
Отметим, что документы всех перечисленных здесь форматов предназначены, в первую очередь, для их отображения в виде, пригодном для прочтения человеком. Это означает, что при информационном обмене такими документами реальным получателем является браузер, предметная область которого есть описание правил отображения элементов разметки на устройство вывода. Информация, получаемая человеком из этого документа, является синтезом имеющихся у него знаний, прочитанного текста и человеческого мышления, которое необходимо для анализа текста и встраивания полученной информации в имеющуюся систему знаний. Поскольку до настоящего времени не было разработано приемлимых алгоритмов для извлечения информациии из текста на естественном языке, то для информационного обмена, где получателем не является человек, следует использовать другие подходы.
Когда в информационном обмене в роли адресата выступает программный агент, возникает вопрос о том, каким образом он может извлечь из полученного документа информацию и интерпретировать ее в терминах собственной предметной области. Традиционным подходом является передача информацию по строго определенной схеме, на которую можно было бы "настроить" обрабатывающую программу. Таким образом, агент будет заранее "знать" о том, как нужно интерпретировать данные, содержащиеся в получаемых документах.
Сравнительные характеристики различных моделей представления информации
Как видно из характеристик каждой модели, качество поиска напрямую зависит от того, какие средства использовались для публикации информации. Контекстный поиск предоставляет наименьшие возможности при спецификации запроса и не может гарантировать релевантность всех найденных документов запросу. Атрибутный поиск позволяет достаточно точно указать признаки искомых документов. Однако он плохо применим в случае данных со сложной иерархической структурой, поскольку рассчитан, в первую очередь, на реляционные БД. При семантическом поиске можно составлять практически любые запросы, которые могут быть сформулированы на естественном языке в терминах предметной области. Это объясняется тем, что в семантической сети содержаться не только непосредственно данные, но и формально описаны всевозможные отношения между данными и понятиями.
До настоящего времени средства семантического поиска были развиты достаточно слабо. Одной из причиной этому является необходимость строго формального описания понятий и отношений для целевой предметной области, что само по себе уже является нетривиальной задачей, а также преобразования внутреннего представления данных (которые, как правило, хранятся в реляционных таблицах БД) в один из форматов представления семантической сетей, что также не всегда приемлемо. Автору представляется целесообразным учесть последнее замечание при разработке технологии создания ИС, публикующих информацию на языке семантических сетей.
В таблице 1.1 представлен общий анализ характеристик наиболее распространенных моделей документов с точки зрения их пригодности к тому, чтобы стать универсальным форматом передачи информации в Сети. Помимо RDF, в ней присутствует модель DOM для двух типов документов. Несмотря на то, что для языков XML и HTML документов модель представления одна и та же, их предназначение в корне отличается друг от друга: HTML ориентирован на передачу форматированной гипертекстовой страницы для прочтения человеком, a XML — на передачу структурированных данных, не подразумевая конечного адресата. Также в таблице представлены характеристики модели, соответствующей формату PDF, который является классическим форматом текстовых документов со сложной структурой. Из таблицы видно, что его характеристики схожи с характеристиками HTML. Следовательно, PDF, как и большинство других подобных форматов, являются непригодными для передачи информации в указанном выше смысле, о чем и говорилось в начале статьи.
Любая модель семантической сети допускает теоретико-множественные операции на графах: объединение, пересечение, вычитание. Как и все остальные форматы, предназначенные для Web, RDF не привязан к какой-либо конкретной платформе. Как и XML, RDF не специфицирует стиль форматирования документа и, отчасти поэтому, они могут быть адаптированы к любой предметной области. С другой стороны, данное свойство диктует необходимость обеспечить дополнительные методы представления документов в виде, пригодном для прочтения их человеком. Очевидно, что функции отображения информации в готовый для чтения документ легко могут быть реализованы различными способами, тогда как задача извлечения семантики из текста на естественном языке до сих пор полностью не решена.
К основным недостаткам RDF справедливо относят отсутствие такой же удобной и легко читаемой формы записи, как для XML-документов, что является значительным препятствием к его столь же бурному распространению. По этой причине авторы RDF предложили уже несколько модификаций формата записи RDF-документов, частично решивших эту проблему.Таким образом, можно сделать вывод о том, что в определенных случаях представление документа на основе RDF-модели является наиболее пригодным в качестве универсального формата передачи информации в сети Интернет.
Структура семантической информации и ее наполнение
Определим, понятие электронного документа, как ресурс, имеющий структуру и содержащий семантическую информацию. Для более формального определения следует указать, что является структурой. В общем понимании, структура есть совокупность устойчивых связей объекта, обеспечивающих его целостность. Применительно к содержащейся в электронном документе семантической информации, структурой следует считать некоторую ее фиксированную часть, например, набор используемых концептов.
Таким образом, структура есть граф специального вида, который накладывает определенные ограничения на семантическую информацию документа. Эти ограничения можно разделить на два типа. Одни ограничения образуют подграф понятийной МПО и указывают, какие концепты и отношения должна содержать семантическая информация, т.е. задают своего рода ее "каркас". Другие ограничения декларируют, каким образом остальные информационные элементы встраиваются в этот каркас, и какими отношениями они связываются.
Для определения формального способа задания таких ограничений дадим определение свободной вершины графа, которые используются для указания мест в структуре ЭД, куда должны быть подставлены остальные его информационные элементы.
Определение 14. Свободной вершиной с интервалом кратности (i,j) г м назовем вершину, не содержащуюся в МПО, і j, 0 і оо,0 j оо. Свободной вершиной является свободная вершина с любым интервалом кратности.
Обозначим наиболее часто используемые кратности: v — viCO,v+ = г 1,0,
Определение 15. Репозитарий свободных вершин V/ree = {vjf : V(z, j), VTi; 0} — множество всевозможных вершин, где для любого интервала кратности (i,j) присутствует бесконечное множество различных свободных вершин с интервалом кратности (i,j). Обозначим Vl ee = {v]lJ : V/г 0}.
Определение 16. Информационная структура Е — это граф вида ( = (Vfc, ДЕ, МЕ LE), У которого УЕ С Vd[j Vfree и LE С Vd [j Vfree.
Фактически, информационная структура с помощью понятийной МПО и репозитария свободных вершин задает некоторый "шаблон" для семантической информации /. В ней вместо каждой свободной вершины должны присутствовать несколько вершин МПО, их количество определяется интервалом кратности свободной вершины. При этом все понятия и отношения, заданные в структуре, должны быть соответственно перенесены в /. Семантическую информацию /, для которой выполнены эти условия, мы будем называть наполнением информационной структуры. Дадим формальное определение.
Определение 17. Дуга графа информационной структуры называется фиксированной, если соединяемые ею вершины не являются свободными.
Определение 18. Дуга графа информационной структуры называется нефиксированной, если соединяемые ею вершины являются свободными.
Определение 19. Дуга графа информационной структуры называется полуфиксированной, если она не является ни фиксированной, ни нефиксированной.
Определение 20. Наполнение информационной структуры 6s — это семантическая информация, согласованная с информационной структурой Е, т.е. граф GQ = (VQ, EQ, MQ, LQ), который является подграфом МПО и для которого выполнены следующие условия: 1. Vn\Vfree С Ve; 2. для любой свободной вершины иг і Є Vs f] Vfree : 3VV С VQ, І \VV\ j; 3. для любой фиксированной дуги є Є Е%: є Є EQ И Ме(е) = М (е), где М — функция разметки, удовлетворяющая условию: , Ти v / МЕ(е), если МЕ(е) G Vd М (е) = [ некоторое / Є Vd, если Ms(e) Є Vjree 4. для любой полуфиксированной е = (г г ) Є Е%, где v\ — свободна, выполнено: W е VVl Зе = (v, v2) Є EQ, И Me(e ) = М (е). 5. для любой полуфиксированной е = ( 1, 2) Є -) гДе v2 свободна, выполнено: Vv Є VV2 3ef = (vuv) Є EQ, И Me(e ) = M (e). 6. для любой нефиксированной дуги е = ( 1,1) Є - : VvJ Є VVl,W2 Є VV2 существует дуга е = (v[,v 2) Є EQ, и MQ(e ) =, М (е).
Условие 1 говорит о том, что все не свободные вершины должны быть понятиями МПО, в условии 2 каждой свободной вершине сопоставляется подмножество вершин графа МПО, мощность подмножества зависит от интервала кратности. Условия 3-6 описывают правила, по которым дуги и разметки информационной структуры должны быть отображены на граф наполнения. На рис. 2.3 приведен пример информационной структуры и ее наполнения.
Технологические решения системы SMART
При создании системы SMART прежде всего необходимо было выбрать технологическую базу для реализации элементов модели. Ключевым вопросом здесь являлся, формат ВПД Ьфм, поскольку именно в этом свойстве заключается ее основное отличие от других моделей создания ИС. В главах 1.2.4 и 2.4, а также в [1], было обосновано использование технологии RDF [34] в качестве наиболее подходящего языка для описания информации. Таким образом, в качестве формата ВПД Ьфш, используемого для описания информационных шаблонов и ВПД, был выбран формат RDF.
Поскольку RDF в значительной степени является дочерним языком по отношению к языку разметки XML, он может использовать целый ряд программных средств, разработанных для последнего. В частности, любая XML-сериализация RDF-документа может быть подвергнута XSLT-преобразованию [58], результатом которого будет новый XML-документ, созданный согласно инструкциям XSLT-шаблона. Являясь общепризнанным средством для преобразования XML-документов и обладая гибкими возможностями, XSLT-шаблоны были использованы в системе SMART для реализации функций стиля. Таким образом, в системе стало возможным создавать документы в любом формате семейства XML, в том числе HTML, PDA1 и RDF. Этот список покрывает пользователей обычных браузеров, владельцев карманных компьютеров, программных агентов, функционирующих согласно идеологии Semantic Web [12] и других клиентов, работающих с XML-форматом.
Система SMART была разработана на основе технологии сервлетов [84], для реализации отдельных компонентов было выбрано свободно распространяемое программное обеспечение: среда разработки Java SDK 1.4 и сервер web-приложений Tomcat [85]. Для операций над RDF-документами использовалась библиотека Java-классов Jena — разработка лаборатории Hewlett Packard [86], библиотеки Xerces и Xalan для работы с XML-документами и XSLT-преобразованиями. Роль трансформеров в системе играют Java-классы, реализующие интерфейс ModelTransf ormer (здесь под моделью подразумевается RDF-модель), таким образом запуск трансформера является вызовом специального метода transform, объявленного в интерфейсе, с текущим RDF-шаблоном в качестве параметра. По окончании работы, метод возвращает измененный шаблон, который передается следующему трансформеру.
Краткое описание структуры библиотеки SMART приведено в приложении В.
Трансформеры занимают центральное место в схеме формирования документов, поскольку при помощи подстановки необходимых параметров, результатов выборок из базы данных и других необходимых действий они превращают описание коллекции в описание конкретного ее экземпляра. Каждая компонента представляет собой логически завершенное изменение модели, реализует специальный интерфейс и имеет доступ к всевозможным ресурсам web-приложения и клиентского запроса. Как правило, действия трансформе-ра сводится к нахождению и анализу содержания определенной подмодели, а затем его модификаци. согласно параметрам запроса и результатам анализа. Для каждой коллекции в конфигурации ИС указана последовательность запускаемых трансформеров. При этом могут быть использованы трансформе-ры, входящие в стандартную поставку библиотеки SMART, или трансформе-ры, созданные разработчиками для реализации специфичной функциональности ИС.
Ниже приведено описание нескольких стандартных трансформеров: Трансформер подстановки параметров. Этот трансформер просматривает все утверждения модели в поиске специальной, условной комбинации символов и заменяет ее надлежащим значением с учетом переданных комбинацией сведений. Например, встретив последовательность ${Value пате= "id"default= "О"}, он подставит вместо нее значение параметра клиентского запроса - id, если такой присутствует, либо 0. Подобным образом в RDF-модель могут быть подставлены параметры клиентского запроса, сессии пользователя или web-сервера.
Трансформер для обращений к базе данных. Работа этой компоненты заключается в нахождении подмоделей, требующих выполнения указанных SQL-инструкций и подстановку полученных результатов в описание документа. В случае множественных результатов выборки соответствующая часть описания коллекции тиражируется необходимое количество раз. Трансформер содержит средства указания очередности выполнения запросов. Тем самым разработчики получают возможность вкладывать подмодели, нуждающиеся во вставке информации, друг в друга, а также могут использовать результаты готовых выборок при выполнении последующих инструкций. Вся информация, касающаяся запроса, включается в исходное описание коллекции.