Методология интеграции гетерогенных информационных систем по свойствам неорганических веществ (1090084), страница 42
Текст из файла (страница 42)
Принадлежностьэлемента (d , s, p ) отношению W , где d D, s S , p P , интерпретируется следующимобразом: “в интегрируемой ИС d содержится информация по свойству p химическойсистемы s ”.Поиск релевантной информации s сводится к определению вида отношения R ,являющегося подмножеством декартова произведения S S (иными словами, R S 2 ).Таким образом, о любой паре ( s1 , s2 ) R можно сказать, что система s2 являетсярелевантной системе s1 . Т.е., чтобы решить задачу поиска релевантной информации винтегрируемых информационных системах, необходимо определить отношение R .При построении ИС единой точки входа в ИС СНВМ отношение релевантностистроится следующим образом: для любых множеств s1 S , s2 S , состоящих изхимических элементов eij , s1 {e11 , e12 ,.., e1n }, s2 {e21 , e22 ,.., e2 m } верно, что если s1 s 2 ,то ( s1 , s2 ) R .
Как видно из условия, отношение R симметрично. Таким образом,получим в качестве релевантных только те химические системы, вещества имодификации, которые состоят из одного и того же набора химических элементов(одинаковые химические системы). Как правило, этот способ построения отношения Rявляется наиболее часто используемым при поиске всех свойств заданногохимического вещества или системы через единую точку входа.Поскольку поиск релевантной информации выполняется в метабазе, единаяточка входа предоставляется для всех ИС СНВМ, описанных в метабазе.
В настоящеевремя интегрированная ИС СНВМ консолидирует все разработанные в ИМЕТ РАНинформационные системы: Фазы, Elements, Диаграмма, Кристалл и Bandgap. Благодаряпроделанной работе по международной интеграции, удалось включить в составинтегрированной системы ИМЕТ РАН ИС AtomWork (разработанную в NIMS,Япония), содержащую информацию о более чем 23 тыс. неорганических веществ [272,273].6.3.2. Разработка Web-приложения ИСРассмотрим кратко особенности разработки Web-приложения единой точкивхода, располагаемого по адресу http://meta.imet-db.ru.
Web-приложение ASP.Netнаписано на языке C# (.Net Framework 3.5) с использованием ADO.Net для доступа к225метабазе. Для построения запросов используются языковые средства Transact-SQL,являющегося диалектом языка SQL, который используется в СУБД Microsoft SQLServer 2008.Пользовательский интерфейс является интерактивным за счет использованиябиблиотеки jQuery, облегчающей взаимодействие с HTML DOM (Document ObjectModel – объектная модель документа) и предоставляющей удобный интерфейс (API)для работы с AJAX (Asynchronous Javascript and XML – асинхронный JavaScript иXML).Рис.
6.3.1. Выбор химической системы по набору элементов.Опишем принцип работы Web-приложения. Основной элемент интерфейсапользователя – интерактивная таблица Менделеева (рис. 6.3.1). Пользователюпредоставляется возможность выбора химических элементов из таблицы Менделеева,образующих химическую систему. При нажатии на каждый химический элемент(выбор или снятие выбора) происходит его подсветка за счет применения классов изкаскадныхтаблицстилей(CSS)спомощьюбиблиотекиjQueryпрограммирования JavaScript):$(".Mendeleev .element").click(function() { // клик на элементе$(this).toggleClass("selected"); // переключаем классvar arr = [];$(".Mendeleev .selected").each(function() {arr.push($(this).children(".name").text());});arr.sort();var st = arr.join("-");$(".result").html("");if (st == "") {$(".Mendeleev .inactive").show();(язык226$(".Mendeleev .active").hide();}else {$(".Mendeleev .inactive").hide();$(".Mendeleev .active").show();ProcElements(st);}$(".Mendeleev .selectedSystem").html(st);});Одновременно в случае наличия выбранных химических элементов происходитвызов функции ProcElements, которая обеспечивает отправку асинхронного AJAXзапроса к HTTP-обработчику http://meta.imet-db.ru/JSON_Elements.ashx, являющемусясервисом поиска релевантной информации:function ProcElements(elements) {$(".result").html("<center><img src='/i/loaderlight.gif'alt='подождите...' width=24 height=24 /></center>");$.ajax({type: "post",url: "/JSON_Elements.ashx",data: { "mode": "getelementsinfo", "elements": elements },dataType: "json",error: function(XMLHttpRequest, textStatus, errorThrown) {$(".result").html("<center><span class='err'>ajax errortextStatus=" + textStatus + ", errorThrown=" + errorThrown +"</span></center>");},success: function(json) {if (json.MsgRu != "" || json.MsgEn != "") {$(".result").html("<center><span class='err ru'>" +json.MsgRu + "</span><span class='err en'>" + json.MsgEn +"</span></center>")return;}var st = "";if (json.Data.Table[0].Row.length == 0) {st = "<center><span class='err ru'>нет данных</span><spanclass='err en'>нет данных</span></center>";}else {st = RenderDataAsTable_PopUp(json); // список-попап}$(".result").html(st);}});}При выборе, например, химической системы As-Ga будет отправлен следующийPOST запрос на адрес: http://meta.imet-db.ru/JSON_Elements.ashx содержащтй данныеmode=getelementsinfo&elements=As-Ga.Задачасервисапоискарелевантнойинформации - по множеству выбранных химических элементов вернуть перечень ИССНВМ, содержащих сведения о заданной химический системе.
Поскольку клиентскаячасть отработки информации реализована на JavaScript, как стандартном языкесценариев, поддерживаемом всеми браузерами, то сервис поиска формирует ответ вформате JSON (JavaScript Object Notation – нотация объектов JavaScript), который227является естественнымпри использовании языка JavaScript. Приведем примервозвращаемого документа при поиске информации по элементу Ga (исключительно длякраткости, т.к. по As-Ga размер JSON документа на порядок больше):{"MsgRu":"","MsgEn":"","Data":{ "Table":[{ "Row":[ { "Col":["5","31","-Ga-","1","Ga","","1","Свойстваэлемента","","/elements/properties_all_given.aspx?elem=#IDS#","Элементы","http://phases.imetdb.ru/elements/","","post","http://phases.imetdb.ru/elements/GateElements.asp?chk=#CHKSUM#&t=#TOKEN#","ru"]}, { "Col":[ "7","16027","-Ga","1","Ga","","1","Information","","","AtomWork (NIMS,Japan)","http://crystdb.nims.go.jp/index_en.html","","link","https://loginmatnavi.nims.go.jp/sso/UI/Login?goto=http%3A%2F%2Fcrystdb.nims.go.jp%2Fcrystdb%2Fsearch-materialslist%3FisVisiblePeriodicTable%3Dtrue%26condition_type%3Dchemical_system%26need_more_type%3Dprototype_number%26condition_value%3D#ELEMENTS_PLUSinURL#&IDToken1=#CHKSUM#&IDToken1=#TOKEN#","en"]} ]}]}}Как видно, полученный JSON-документ возвращает в числе прочих данныхссылки для перехода на ИС СНВМ с релевантной информацией.
Однако ссылкинуждаются в дальнейшей обработке в частности для замены “#CHKSUM#”и“#TOKEN#”, которые являются контрольной суммой (вычисленной с использованиемхеш-функции MD5) с отпечатком параметров перехода и маркером безопасности(token) соответственно. За обработку и вывод пользователю информации из JSONдокументаотвечаетфункцияRenderDataAsTable_PopUp(json),результатработы которой виден на рис. 6.3.2.Рис. 6.3.2. Список релевантной информации в ИС СНВМ для системы As-Ga.228При наведении пользователем указателя на химическую сущность (систему,вещество или кристаллическую модификацию) выводится список свойств, доступныхдля просмотра в соответствующей ИС СНВМ (рис. 6.3.3).Рис.
6.3.3. Список свойств в ИС “Диаграмма” для системы As-Ga.Пользователь может, щелкнув по гиперссылке, прозрачно перейти через шлюзбезопасности единой точки входа http://meta.imet-db.ru/gate/gateSAP.aspx, в ИС СНВМ сзапрошенной информацией. При этом происходит автоматическое перенаправление настраницу с требуемой информацией, например при переходе по ссылке “Фазовыедиаграммы” пользователь увидит сразу затребованную информацию (рис. 6.3.4).Рис. 6.3.4. Фазовая диаграмма для системы As-Ga в ИС “Диаграмма”.Таким образом, в диссертационной работе на основе метода интеграцииинформационныхсистем(EAI)реализовананетолькоинтеграциямеждугетерогенными материаловедческими ИС с безопасным переходом к просмотрурелевантной информации, но и создана единая точка входа во все ИС СНВМ,описанные в каталоге информационных ресурсов метабазы (рис.
6.3.5). Желтыми229стрелками на рисунке показаны потоки данных при запросах релевантной информации,зелеными стрелками показан переход пользователя из единой точки входа в ИС СНВМс релевантной информацией, а синими стрелками обозначен переход пользователя изконтекста одной из ИС СНВМ в контекст ИС СНВМ с релевантной информацией.Рис. 6.3.5.