Р исунок 6 - Возможные архитектуры для портальных решений
(множество СУБД, множество приложений, реализованных на разных языках, множество web-серверов)
Первое поколение web-приложений позволяло только генерировать html-страницы из БД. Во втором поколении доступ к БД осуществляется с помощью Web-приложений, которые либо встраиваются в гипертекстовые страницы как компоненты, либо выступают как самостоятельные программы, не зависящие от программ просмотра гипертекстовых страниц. В таких приложениях хорошо разработана технология обратного взаимодействия с сервером обработки и представления данных на клиентской стороне - у пользователя. Характерной чертой является возможность взаимодействия клиентской программы только с одним сервером, вследствие не стандартизованных закрытых протоколов обмена данными. Это приводит к непродуктивным тратам рабочего времени на операции по экспорту – импорту, извлечению данных из одной системы и загрузки в другую, на проверку согласованности информации и т.д.
К третьему поколению относятся Интернет - приложения, которые обмениваются данными на одних принципах, как с другими приложениями, так и с источниками данных. Это поколение характеризуется наличием универсальных стандартов по обмену данными. Приложения имеют возможность одновременного взаимодействия с несколькими источниками данных и расширенные возможности по обработке данных. Обмен данными между программами строится на совершенно новых принципах: возможность использования на клиентской стороне всех возможностей, которые раньше были доступны только в СУБД.
Обмен данными реализуется на общих для обеих сред языковых и интерфейсных средствах; необходима поддержка стандартов языков SQL, XML (UDDI, WSDL, SOAP), драйверов ODBC, JDBC. Серверы БД имеют собственные специальные средства для сбора, передачи и загрузки данных, а также средства репликации данных.
Наиболее правильным методом обмена является интеграция данных, когда разрабатываются программные средства выгрузки информации из локальной в новую БД унифицированной структуры в соответствии с соглашениями по структуре входных данных приложения, рис.7. При разработке таких программных средств необходимо:
-
привести в соответствие структуру локальной БД и структуру входных данных приложения;
-
установить соответствие между системами классификации и кодирования.
Классификаторы
БД-1 Структурные преобразования Маппирование имен атрибутов Приведение к единым классификаторам
Интегрированная БД
БД-2
БД-3
Рисунок 7 – Интеграция данных в одной интегрированной БД
Для решения первой задачи необходимо тщательно проанализировать структуру БД взаимодействующей информационной системы и разработать алгоритмы преобразования данных к унифицированной структуре. Этот шаг все равно рано или поздно придется сделать, так как по мере увеличения объемов информации в локальных БД наступит момент, когда время обработки информации вырастет настолько, что перестанет удовлетворять пользователя. Поэтому чем раньше будут приняты решения по стандартизации системы описания данных и системы классификации и кодирования, тем безболезненней будет переход на эти стандарты, тем меньше будут затраты на перепрограммирование, тем эффективнее будет функционировать вся система.
Согласование систем классификации и кодирования достигается за счет создания таблиц соответствия между кодами локальной БД и системой классификации центральной БД. Для ведения таблиц соответствия необходимо разработать программное обеспечение, которое позволит установить тождественность понятий при описании различных атрибутов. Наиболее трудоемкий процесс - это процесс заполнения таблиц соответствия, который должен выполняться высококвалифицированными специалистами, чтобы свести число ошибок к минимуму. Для этого разработчик должен иметь средства поиска и просмотра всех используемых в рассматриваемой предметной области кодификаторов. Он также должен знать уровни стандартизации (международный, национальный, отраслевой, корпоративный).
Использование такой технологии вполне оправдано, несмотря на большие первоначальные затраты связанные с разработкой программного обеспечения и заполнения таблиц соответствия, так как позволяет в дальнейшем сократить затраты на ввод информации и исправление ошибок.
Для использования данных из существующей ИС и создания новой БД агрегированных характеристик можно использовать следующую схему (рис.8).
Рисунок 8 - Создание новой БД путем предварительной обработки данных
Для получения доступа к данным с помощью Web-технологии необходимо разрабатывать приложения, причем для каждой БД необходимо разрабатывать свое приложение. Эти программы могут разрабатываться на таких средствах разработки программного обеспечения, как ASP, PHP, JSP. При разработке необходимо учитывать, что общение с пользователем обеспечивается с помощью обмена Web-страницами и что пользователь, как правило, работает в режиме удаленного доступа, поэтому размер Web-страницы должен быть минимальным. Пользователю должен быть предоставлен удобный интерфейс для формирования запроса к БД, а для этого программные средства должны обеспечить динамическое формирование Web-страниц.
Для доступа к БД необходимо решить и еще одну задачу - дать пользователям возможность не только выбрать нужные данные, но и представить их в нужной ему форме. Чтобы решить эту задачу требуется разработать средства визуализации данных.
Серверные технологии
Первоначально перед Web-серверами стояла простая задача - найти и отправить клиенту файл, указанный в полученном от клиента запросе. Запрос составлялся тоже очень просто в форме URL- адреса. Потом понадобилось сделать на сервере какую-либо небольшую предварительную обработку отправляемого файла. Web-сервер усложнился, появились включения на стороне сервера и различные приемы динамической генерации страниц HTML [2].
Затем возникла необходимость выполнять на сервере процедуры. В запросе URL вставили вызов процедур, а на сервере реализовали технологию CGI (Common Gateway Interface). Теперь в запросе URL указывается процедура, которую нужно выполнить на сервере. Процедуру CGI можно написать на любом языке, лишь бы он воспринимал стандартный ввод и стандартный вывод. В технологии Java для этого созданы сервлеты и язык JSP [4].
Серверные технологии, используемые в Web-приложениях, основываются на достаточно простом и очевидном принципе динамического создания страницы при запросе клиента вместо возврата готовой страницы. Такой подход позволяет создавать страницы "на лету", основываясь на различных данных (например, из баз данных или информации о браузере клиента), доступных с сервера. Фактически CGI позволяет создавать страницы путем запуска на сервере указанной пользователем программы (естественно, список этих программ заранее задан администратором Web-сервера). По ходу работы программа последовательно создает HTML-код результирующей страницы, в зависимости от различных условий код может быть разным. Стандарт CGI определяет достаточно простой протокол взаимодействия запущенной программы и Web-сервера и поэтому реализован практически на всех существующих Web-серверах. CGI-скрипты очень плохо масштабируемы. Каждый новый вызов CGI, требует от ядра порождения нового процесса, а это занимает процессорное время и тратит оперативную память.
Web-сервер Internet Information Server дополнительно к CGI реализует еще технологию ASP (Active Server Pages). Технология ASP основана на совместном использовании визуальной разработки страницы и фрагментов скриптов, изменяющих HTML-код страницы в зависимости от условий, в которых исполняется страница.
Технология ASP предназначена для динамического создания страницы при запросе клиента. Такой подход позволяет создавать страницы "на лету", основываясь на БД, доступных с сервера. Чаще всего динамические страницы можно условно разбить на две логические части - информационное наполнение страницы и ее визуальное представление (обычно определяемое общим стилем сайта), при этом в отличие от изменяемой информационной части оформление чаще всего статично.
Основой технологии ASP является использование HTML-страниц с внедренным в HTML-код программным кодом, создающем часть результирующей страницы. Такой подход позволяет визуально редактировать оформление страниц, используя для вывода информации скрипты на различных языках. Фактически ASP-страницы являются обычными HTML-страницами (с некоторыми синтаксическими отличиями), дополнительно обрабатываемые на сервере перед отправкой клиенту.
В программном коде страницы может быть использовано несколько «скриптовых» языков, при этом процедуры и функции, написанные на одном языке, могут быть вызваны из другого языка. В поставку IIS входят два «скриптовых» языка - JavaScript и VBScript, однако их число может быть расширено благодаря использованию открытой технологии Active Scripting.
Порядок исполнения Web-сервером скиптов на странице довольно сложен: сначала исполняются все скрипты, заключенные в тег <script>, причем порядок обработки таких скриптов (если их несколько) не определен. Затем происходит последовательная обработка страницы - на этом этапе по мере обработки клиенту последовательно пересылается HTML-код страницы и исполняются скрипты, написанные в тегах <%%>. И наконец, снова исполняются скрипты, но уже использующие язык страницы по умолчанию, порядок обработки таких скриптов (если их несколько) также не определен. В обоих случаях весь создаваемый скриптами HTML пересылается клиенту. Исходя из такого порядка обработки страницы, рекомендуется в теге <script> располагать только процедуры и функции (на любом языке) и вызывать их при исполнении скриптов в тегах <%%>. Только таким образом можно обеспечить однозначность последовательности исполнения скриптов. Для управления различными параметрами страницы используются директивы ASP. Директивы пишутся в первой строке страницы в единственном теге <%@ директивы %> через пробел в виде пар «директива=значение». Например, директива LANGUAGE устанавливает язык по умолчанию для страницы. Все скрипты, использующие теги <%%>, должны быть написаны именно на указанном языке.
Каждая ASP-страница исполняется в некотором контексте. Этот контекст предоставляется странице сервером в виде набора объектов, позволяющих получать доступ к свойствам сервера и информации о клиенте, передавать готовый HTML клиентскому приложению и т.д. Код ASP-страницы создается только при запросе страницы и после завершения уничтожается, поэтому хранить в странице статические объекты невозможно.
Несколько ASP-страниц можно объединить в одно приложение. Это объединение носит несколько механический характер - приложением называются все ASP-страницы, находящиеся в специально указанном каталоге (корневом каталоге приложения) или его подкаталогах.
Технология PHP [5] – это скриптовый язык, встраиваемый в HTML, интерпретируемый и выполняемый на сервере. Основное отличие от CGI-скриптов, написанных на других языках, типа Perl или C – это то, что в CGI-программах пишется выводимый HTML-код, а, используя PHP – программа встраивается в готовую HTML-страницу, используя открывающий и закрывающий теги <?php и ?>. Отличие PHP от JavaScript, состоит в том, что PHP-скрипт выполняется на сервере, а клиенту передается результат работы, тогда как в JavaScript-код выполняется на клиентской машине.
На PHP можно сделать все, что можно сделать с помощью CGI–программ. Например, обрабатывать данные из форм, генерировать динамические страницы, создавать сессии. В PHP включена поддержка многих СУБД (Oracle, MySQL, mSQL, InterBase, PostgreSQL,Adabas D, dBase, Sybase, Informix). PHP понимает протоколы IMAP, SNMP, NNTP, POP3 и HTTP.
Синтаксис PHP очень похож на синтаксис C или Perl. В этом языке нет строгой типизации данных и нет необходимости в действиях по выделению/освобождению памяти. Программы, написанные на PHP, легко читаемы. Для работы с РНР можно использовать web-сервер Apache или IIS.
Технология JSP. Сервлеты выполняются под управлением Web-сервера. Для слежения за работой сервлетов и управления ими создается специальный программный модуль, называемый контейнером сервлетов. Он загружает сервлеты, инициализирует их, передает им запросы клиентов, принимает ответы. Чтобы сервлет мог работать он должен быть зарегистрирован в контейнере, по спецификации Java Servlet Specification установлен в него. Установка сервлета в контейнер включает получение уникального имени и определение начальных параметров сервлета, запись их в конфигурационные файлы, создание каталогов для хранения всех файлов сервлетов и другие операции.
Один контейнер может управлять работой нескольких установленных в него сервлетов. При этом один контейнер может в одно и то же время работать в нескольких виртуальных машинах Java, образуя распределенное Web-приложение. Контейнеры сервлетов создаются как часть Web-сервера или как встраиваемый модуль.
В сервлетах, обрабатывающих и представляющих данные в браузер пользователю, большую часть кода занимают операторы вывода и выходной поток тегов HTML, формирующих результат – страницу HTML. Эти операторы повторяются из сервлета в сервлет. Поэтому в языке JSP операторы Java записываются в странице HTML. Обработка полученной страницы производится препроцессором, распознающим все теги и преобразующим их в код сервлета Java.
Язык JSP расширяет HTML теги <% имя тега атрибуты %>. С помощью тегов можно не только внести описания, выражения и операторы Java, но и вставить в страницу файл с текстом и изображением, вызвать объект Java, или компонент JavaBean, или компонент EJB.
Контейнер сервлетов, расширенный препроцессором, переводит запись в сервлет. Препроцессор обрабатывает страницу JSP автоматически при первом обращении к ней. Полученный в результате его сервлет затем храниться в контейнере, так же как и все сервлеты, и выполняется при следующих вызовах страницы JSP.
Для сервлетов и страниц JSP придумано общее название – Web-компоненты. Контейнер сервлетов, расширенный средствами работы с JSP, называется Web-контейнером. Программа, составленная из сервлетов, страниц JSP, апплетов, документов HTML и XML, изображений и прочих документов, относящихся к ней, называется Web-приложением. Весь статический HTML, называемый в документации JSP шаблоном HTML, сразу направляется в выходной поток. Выходной поток страницы буферизируется. Наличие буфера позволяет заносить заголовки ответа в выходной поток вперемешку с выводимым текстом.
Таким образом, достаточно написать страницу JSP, сохранить ее в файле с расширением jsp и установить файл в контейнер, так же как и страницу HTML, не заботясь о компиляции. При установке можно задать начальные параметры страницы JSP так же, как и начальные параметры сервлета.
Для совместимости с языком XML практически все теги JSP продублированы элементами XML с именами из пространства имен jsp.
Для работы с технологией Java (Jsp, Servlets, EJB) используется сервер-приложений Jboss. Для работы сервера необходима виртуальная машина JVM, включаемая в набор Java 2 SDK (J2SDK). Достоинствами сервера-приложений Jboss являются:
-
переносимость и интегрируемость;
-
встроенная защита;
-
запуск с командного файла;
-
легкая изменяемость настроек;
-
возможность создания распределенной системы серверов приложений;
-
работа с БД и прикладными приложениями.
Сервлет или JSP страница принимает запрос от клиента с помощью Web-сервера. Сервлет анализирует запрос и обрабатывает его своими методами. При этом сервлет обращается к другим сервлетам или страницам JSP, если это нужно для обработки. В процессе обработки запроса сервлеты извлекают необходимую информацию из БД через драйвер JDBC. Ответ на запрос отправляется клиенту в виде одной или нескольких страниц HTML или XML-документов. Большую часть работы по созданию промежуточного слоя серверного приложения выполняют контейнеры сервлетов. Они обеспечивают безопасность работы приложения, создают транзакции и следят за их выполнением, формируют запросы от клиента в удобной форме и возвращают ответ клиенту.
Фирма Sun Microsystems разработала компоненты специального вида – компоненты EJB (Enterprise JavaBeans). Компонент EJB состоит из нескольких интерфейсов и одного или нескольких классов, решающих задачу обработки информации. Компонент EJB так же, как и сервлет, работает под управлением специального программного слоя, EJB-контейнера. Один или несколько EJB вместе со связующими программами составляют EJB-сервер. Чтобы обеспечить связь с контейнером, компонент EJB должен реализовать несколько интерфейсов, методы которых выполняются EJB-контейнером.
Компоненты EJB образуют еще один слой, располагающийся между Web-компонентами и источником данных. В этом слое сосредотачивается вся бизнес логика. Компоненты EJB получают запрос от Web-компонентов, которые играют роль их клиентов, обрабатывают запрос от Web-компонентов, обращаясь для этого к источнику данных, и передают результат обратно Web-компонентам. Web-компоненты (сервлеты и страницы JSP) только принимают запрос от клиента, расшифровывают и передают его компонентам EJB.
На основе динамических средств создания страниц можно создавать динамические меню сайтов. Например, по атрибуту «Страна» можно выбрать перечень организаций, находящихся в этой стране. Этот перечень может стать разделом меню.
Использование языка XML для динамического представления информации
Язык XML – это универсальный формат для хранения, как структурированных данных, так и слабоструктурированных документов. Основное назначение XML это обмен информацией, но уже сейчас он часто применяется в различных вариантах. Позволяя различным компьютерным системам "общаться" между собой, язык XML дает возможность обмениваться сведениями о данных, существенно повышая эффективность их обработки. XML становится основой взаимоотношений между партнерами. Этот язык используется в качестве средства для описания грамматики других языков и контроль за правильностью составления документов. То есть язык XML определяет порядок их создания. Можно выделить множество задач, связанных с созданием и обработкой слабоструктурированной информации, для решения которых может использоваться XML [3]:
-
эта технология может оказаться полезной для разработчиков сложных информационных систем, с большим количеством приложений, связанных потоками информации самой различной структуры; в этом случае XML - документы выполняют роль универсального формата для обмена информацией между отдельными компонентами большой программы, например, между БД и удаленными приложениями, когда новостная информация выбирается из БД и генерится XML файл в виде формата RSS;
-
язык XML позволяет описывать данные произвольного типа и используется для представления специализированной информации, например химических, математических, физических формул, медицинских рецептов, нотных записей, и т.д., здесь XML служит мощным дополнением к HTML для распространения в Web слабоструктурированной информации;
-
XML-документы могут использоваться в качестве промежуточного формата данных в трехзвенных системах, если результаты запроса будут представлены в XML формате, то звено СУБД, как таковое, станет "прозрачным" для приложения;
-
информация, содержащаяся в XML-документах, может изменяться, передаваться на машину клиента и обновляться по частям. Спецификации XLink и Xpointer позволяют ссылаться на отдельные элементы документа, c учетом их вложенности и значений атрибутов;
-
использование стилевых таблиц (XSL) позволяет обеспечить независимое от конкретного устройства вывода отображение XML- документов;
-
XML может использоваться в обычных приложениях для хранения и обработки структурированных данных.
XML-документ представляет собой обычный текстовый файл, в котором при помощи специальных маркеров создаются элементы данных, последовательность и вложенность которых определяет структуру документа и его содержание. Основным достоинством XML документов является то, что при относительно простом способе создания и обработки (обычный текст может редактироваться любым тестовым процессором и обрабатываться стандартными XML анализаторами). Язык XML позволяет из неструктурированной информации создавать структурированные данные.
При создании собственного языка разметки можно придумывать любые названия элементов, соответствующих контексту их использования. Таким образом, у разработчиков появляется уникальная возможность определять собственные команды, позволяющие им наиболее эффективно определять данные, содержащиеся в документе. Автор документа создает его структуру, строит необходимые связи между элементами. В XML-документе можно проводить операции просмотра, поиска, анализа документа.
Кроме того, XML-документы могут выступать в качестве уникального способа хранения данных, который включает в себя одновременно средства для разбора информации и представления ее на стороне клиента. Одним из перспективных направлений является интеграция Java и XML - технологий, позволяющая использовать мощь обеих технологий при построении кроссплатформенных приложений, использующих, универсальный формат данных при обмене информации.
XML позволяет также осуществлять контроль за корректностью данных, хранящихся в документах, производить проверки иерархических соотношений внутри документа и устанавливать единый стандарт на структуру определенных типов документов, например, финансовые документы, новости, формы подготовки заявок на проекты и др. Создавая структуру механизма обмена информации в самом начале работы над проектом, можно избавиться от многих потенциальных проблем, связанных с несовместимостью используемых различными компонентами системы форматов данных.
В этом случае XML документы служит форматом для передачи информации от одного приложения к другому (например, как результат выполнения запроса к БД), их содержимое генерируется и обрабатывается программами автоматически.
XML может использоваться для создания документов какого-то определенного типа и структурой, необходимой для конкретного приложения. Однако если сфера применения языка оказывается достаточно широкой и он начинает представлять интерес для большого числа разработчиков, то его спецификация может быть представлена на рассмотрение в W3C и после согласования всеми заинтересованными сторонами, утверждена консорциумом в качестве официальной рекомендации.
Очевидно, что ручной способ создания XML документов довольно трудоемок. Одним их самых простых и удобных средств является редактор XMLPad (msdn.microsoft.com/xml/notepad/intro.asp). Имеются и более мощные редакторы типа XMLSpy. В офисных приложениях имеются возможности создавать и трансформировать XML файлы. В OpenOffice уже имеется формат ODF, основанный на XML и позволяющий проводить преобразование офисных форматов.
Корпорация Microsoft расширила поддержку XML для компонентов Office 2003 Enterprise Edition; кроме того, в состав данной редакции пакета включено новое приложение - InfoPath, которое позволяет создавать XML-документы и формы. Word, Excel, Visio и другие приложения пакета позволяют импортировать XML- схемы и данные для манипуляций с ними (пересчета, создания отчетов, построения графиков) и заполнения несложных форм; элементы схем можно переносить в рабочее пространство приложения буксировкой. Схемы и данные затем можно сохранить в формате XML или передать в другие приложения посредством Web-служб.
В общем случае XML- документы должны удовлетворять следующим требованиям:
-
в заголовке документа помещается объявление XML, в котором указывается язык разметки документа, номер его версии и дополнительная информация;
-
каждый открывающий тэг, определяющий некоторую область данных в документе обязательно должен иметь своего закрывающего "напарника", т.е., в отличие от HTML, нельзя опускать закрывающие тэги;
-
в XML учитывается регистр символов;
-
все значения атрибутов, используемых в определении тэгов, должны быть заключены в кавычки;
-
вложенность тэгов в XML строго контролируется, поэтому необходимо следить за порядком следования открывающих и закрывающих тэгов;
-
вся информация, располагающаяся между начальным и конечным тэгами, рассматривается в XML как данные, и поэтому учитываются все символы форматирования (т.е. пробелы, переводы строк, табуляции не игнорируются, как в HTML).
Если XML- документ не нарушает приведенные правила, то он называется формально-правильным и все анализаторы, предназначенные для разбора XML- документов, смогут работать с ним корректно. На сегодняшний день существует два способа контроля правильности XML- документа: DTD–определения (Document Type Definition) и схемы данных(XML Schema).
Перспективные подходы по обмену данными на основе языка XML. БД могут совместно использоваться различными пользователями в соответствии с их правами доступа. Функция импорта позволяет получать данные о БД из разных источников и импортировать их в новую систему, предварительно осуществив процесс верификации. Функция экспорта осуществляет и передачу метаданных в формате XML одному или нескольким пользователям, используя почту, рассылку уведомлений с указанием места размещения в сети пакета с данными [1].
Такой подход по обмену данными обеспечивают решения, использующие язык XML, технологии Web-сервисов, базирующиеся на открытых международных стандартах. Подобный подход позволяет сформировать распределенную инфраструктуру, в которой доступ к каждому информационному ресурсу или источнику данных рассматривается как сервис доступа к информации. Все подобные сервисы описываются стандартным способом – c помощью протокола WSDL (в описание входит и способ использования ресурса), а затем публикуются в реестре сервисов – UDDI, рис.9. Интеграция систем осуществляется путем автоматизированного поиска необходимых сервисов и использования его в соответствии со стандартизованным описанием.
Подобная архитектура является очень гибкой и позволяет экономить значительные средства, особенно при дальнейшем развитии системы, поскольку любые изменения в компонентах интеграционной системы требуют, модификации отдельных Web-сервисов.
Приложение 1
Сообщения
Разборка формата Стандарты UDDI WSDL SOAP тематические (LOM, DC, др.)
Анализ содержания
Обработка сообщений
Передача сообщения
Приложение 2
Рисунок 9 - Обмен данными между приложениями
Экспорт данных может осуществляться в форме публикаций, в состав которых могут входить данные (в виде предварительно подготовленных пакетов), а также файлов и сопроводительной информации. Предусмотрена вторичная рассылка публикаций с возможностью добавления данных и расширения списка адресатов, фильтрация и архивирование публикаций. Пользователь может послать пакет данных об информационных потребностях для использования в качестве критериев запроса на данные. Сами данные должны передаваться в простой структуре - в виде таблиц, то есть используемый формат передаваемых данных не должен зависеть от XML описания данных.
Основная идея разработки такого формата заключается в следующем. Используя единое пространство имен для метаданных и исходных данных, создается тематический язык на основе XML. При этом значения исходных данных включаются в описание передаваемых данных как одно из значений элементов. А сведения о формате, составе атрибутов передаваемых данных передаются как значения других тегов. При передаче данных могут быть использованы все имеющиеся метаданные.
В тексте XML файла передаваемых данных дается информация о формате передаваемых данных (кто, когда создал), перечень передаваемых параметров и их описание. Сами данные могут передаваться, как в формате, как они представлены были в таблице, так и в виде XML файлов или любом другом согласованном или стандартизированном представлении данных. Данные записываются между тегами <Data> </Data>. Этот XML-файл может быть вставлен в протокол SOAP и тогда можно будет использовать для обмена данными стандартные процедуры межмашинного обмена между приложениями. Пример скелета описания передаваемых данных представлен ниже.
<SOAP-ENV:Envelope
<SOAP-ENV:HEADER>
<SOAP-ENV:Body>
<Team_XML>
<Metadata>
<Data_Set>
<Name_BD> </Name_BD>
<Creator_BD> </Creator_BD>
<Format> </Format>
<Org> </Org>
<Expert> </Expert>
<List_Parameters>
<_Parameters> </Parameters>
</List_Parameters>
<Data>ASCCI файл </Data>
</Data_Set>
</Metadata>
</Team_XML>
</SOAP-ENV:Body>
</SOAP-ENV:HEADER>
</SOAP-ENV:Envelope
Такая схема обмена между приложениями позволяет легко понимать и машине и человеку, как состав передаваемых данных, так и усвоить их содержание. Если выбранные данные пересылать в виде XML файлов, то объем передаваемых данных значительно возрастет.
Некоторые типы сообщений могут распознаваться и обрабатываться динамически без использования предварительно занесенных в репозиторий метаданных, например, динамически происходит обработка так называемых «хорошо определенных» XML-документов. Для других типов XML-документов требуется предварительное занесение структуры в репозиторий, например, путем экспорта DTD документа. Содержание неструктурированных сообщений и сообщений с неизвестной структурой трактуются как большие бинарные объекты.
Форматы на основе XML позволяют не просто создавать контейнеры для передачи данных, а обмениваться электронными документами, имеющими семантическое значение и контролируемую структуру и содержание. Различаются два подхода к построению XML-формата:
-
контейнер передачи табличных данных с минимальным набором тегов;
-
иерархическое представление данных с использованием предметного словаря тэгов (или единого пространства имен).
Необходимо максимально использовать семейство спецификаций W3C по XML и реализующие их программные средства на всех этапах обмена данными (подготовка данных, контроль данных, визуализация, печать отчетов, загрузка данных в базу и т.д.). С одной стороны, только при таком комплексном внедрении оправданно применение XML, а, с другой, — приходится учитывать избыточность данных и издержки ресурсов при обмене значительными объемами данных от большого количества источников. В настоящее время уделяется особое внимание созданию единого набора XML-тегов, например, для метаданных – теги стандарта ИСО 19115.
Интеграция и взаимодействия гетерогенных систем, особенно унаследованных, является в настоящее время очень важной задачей. Существующие интеграционные решения носят в основном двусторонний характер. Наиболее перспективным методом интеграции является создание сервисно-ориентированной архитектуры на основе Web-сервисов стандартов UDDI, WSDL, SOAP, выполняющих задачи обмена данными.
Подходы по реализации портала
Портал нужен для того, чтобы интегрировать всю информационную продукцию, к которой имеется доступ, представить эту информацию пользователю в понятном и логичном виде и обеспечивающий взаимодействие со всеми приложениями в единой среде. В портале должны быть реализованы следующие функции:
-
поиск информации (структурированной и неструктурированной) прозрачным для пользователя образом по всем источникам и по всем корпоративным системам;
-
обеспечение возможности представления и распространения информационной продукции на Web, организуя доступ авторизованным пользователям в соответствии с их правами;
-
настройка на персональные нужды пользователей;
-
обеспечение обратной связи с пользователями портала.
При создании Web портала необходимо:
-
использовать как можно больше доступных и готовых приложений;
-
прозрачно добавлять новую информационную продукцию за счет использования сервиса по вводу описаний информационных ресурсов;
-
обеспечить комплексность представления информационной продукции путем организации дополнительной разработки новых видов информационных ресурсов.
Для портала характерно наличие средств динамического представления информации, управления контентом, доступа к информационным ресурсам. Обязательным условием грамотного построения портала является безопасный доступ к этим блокам. В инфраструктуру портала может быть интегрировано большинство существующих на Web-систем и приложений. Если эти приложения имеют средства экспорта, импорта, то вопросы обмена решаются проще.
Web-ресурсы размещаются на Web-сайтах различных организаций, а ссылки на них помещаются на портале. Для этого используются различные технологические возможности, начиная от системы управления контентом, требующей участия оператора для выбора, подготовки и представлению Web-ресурсов, и заканчивая автоматизированным сервисом портала, сканирующей адреса для проверки актуальности Web-страниц. Пользователи регистрируются на портале и получают контролируемый доступ к Web-ресурсам. Таким образом, можно получить полную информацию о востребованности ресурсов и можем сделать заключение об эффективности использования этих ресурсов.
Один из подходов к решению проблемы представления огромного объема данных состоит в построении классификации данных, чтобы предложить пользователям более систематизированную картину предметной области. На Web-портале представляются различные объекты (текст, графика, документы и приложения), производится персонализация информационных потребностей каждого пользователя. Схема представления Web ресурсов дана на рис.9. Сведения об информационных ресурсах (ИР) включают такую информацию, как автор, название, дата выпуска и др.
Рисунок 9 - Схема описания информационных ресурсов
Сделать Web-сайт, страницы которого будут актуальным долгое время, невозможно. Поэтому необходимо поддержание актуальности содержания на портале. Нельзя предлагать пользователям устаревшую неактуальную информацию. Web-ресурсы обновляются поставщиком данных на своем сайте. Важнейшее значение здесь имеет также создание и использование аналитических инструментов, которые будут следить за поведением посетителей на сайте, проверяя, например, в каких случаях посетители прекращают попытки найти информацию, а в каких случаях им это удается, какое количество запросов на те или иные ресурсы, кто является пользователями Web-ресурсов и т.п.
Главной идеей организации портала является создание каталога информационных ресурсов (рис.10), включающем содержание портала, сведения об ИР. На одной из страниц портала отражается содержание раздела "Информационные ресурсы" с помощью рубрикатора, в котором указаны основные типы информации (правовая, научно- техническая, социально- экономическая и др.) и количество заиндексированных ИР по каждой рубрике. При клике на любой тип информации появляется расширенное содержание с указанием видов ИР в соответствии с рубрикатором и количество ИР. После выхода на последний уровень содержания пользователю представляется краткое описание ИР с указанием названия ИР, географического района, для которой он создан, организации, создавшей и поддерживающей этот Web ресурс, категория ИР (измеренная, аналитическая, прогностическая, обобщенная), формы представления (точка, профиль, сетка, объект). Здесь пользователь может загрузить ИР.