СТАНДАРТЫ JAVA

 

Опубликована финальная версия спецификации программного интерфейса для работы с метаданными JMI (Java Metadata Interface) 1.0 API (java.sun.com/products/jmi), призванная стандартизировать процессы их создания, хранения, получения, поиска и обмена.

Метаданные (МД) - это информация о структуре данных. На практике они обычно жестко определены логикой утилит, баз данных, приложений и других информационных процессов. Иначе говоря, термин МД характеризует и структуру элементов данных (их синтаксис), и то, что они означают (их семантику). Без знания МД невозможно понять, что представляют собой те или иные данные. Например, встретившееся в результате работы программы целое число 39 может означать что угодно, и для его интерпретации нужно знать алгоритм этого приложения. Обобщая, можно сказать, что МД позволяют переводить данные в информацию и преобразовывать информацию обратно в данные.

Одна из главных причин несовместимости данных различных информационных систем кроется в их МД.

Во многом для устранения последствий этой проблемы был разработан стандарт XML DTD. Он предназначен для описания диалектов XML и верификации документов, созданных на их базе, но, к сожалению, не приспособлен к описанию сложных семантических элементов МД, содержащих ассоциативные ссылки.

Помимо несовместимости МД встает и проблема их создания. Ведь без стандартизированной схемы создания МД разработчики вынуждены каждый раз изобретать новые форматы данных и алгоритмы для их обработки - т. е. МД, а это весьма накладно.

Для ясности приведем пару примеров МД:

- схема базы данных, которая определяет не только то, как записи расположены в реляционной базе данных, но и то, что они означают;

- смысл атрибутов и методов Java-объектов.

Это так называемые технические МД. Есть еще и МД бизнеса или процесса, которые описывают семантику бизнес-процессов и их терминологию:

- используя язык UML, можно описать функции, структуру и поведение объектной модели реальной бизнес-системы. Не случайно в UML выделяют нотацию, которая определяет совокупность графических элементов языка, и метамодели, служащие для их представления в виде диаграмм (обычно классов);

- язык ebXML описывает Web-сервисы с точки зрения бизнеса. Он оперирует такими объектами, как бизнес-процесс, профиль компании, торговые соглашения, - все они нуждаются в независимом от платформы и реализации описании.

JMI основан на спецификации MOF (Meta Object Facility), созданной группой OMG (Object Management Group, www.omg.org) для управления МД. В свою очередь, MOF оперирует моделями UML и наборами интерфейсов, описываемых на языке определения интерфейсов IDL.

Благодаря JMI Java-разработчики получают возможность использовать интерфейсы MOF IDL и тем самым получать доступ к МД и манипулировать ими. А имея свои МД в виде MOF-совместимых моделей UML, они (разработчики) могут автоматически преобразовать их в формат XMI (XML Metadata Interchange), применяемый в JMI для обмена МД.

Таким образом, с помощью JMI приложения способны динамически интерпретировать смысл получаемых от других информационных систем данных, разрушая тем самым барьеры на пути передачи информации.