Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Основы XML-технологий. Учебное пособие
.pdf
преимуществами, включая сопутствующие технологии
пла
тформы и ее стандартные средства.
DF
Про
граммная обработка
R
в том, что парсер анализирует
-описания на
оответствующий
с
ML
X
я
зыке
текст
з
аключается
строит по
и
X
ML
-
нему внутреннее представление (т. е. ориентированный граф), а вся
дальнейшая программная обработка этого описания ведется уже на
уровне модели данных и абсолютно не зависит от изначально
используемого языка сериализации. Два документа считаются эквивалентными, если их представления в виде модели совпадают,
поэтому в случае использования
R
н
е может возникнуть проблема
DF
неоднозначного описания одного и того же факта, как это могло
случиться при работе с
разделе
в
Д
6.1).
ля более точного понимания связи
X
ML
(
с
м. примеры, приведенные
R
DF
с
X
ML
и
другими языками сериализации можно привести следующую аналогию. Знание,
содержащееся в памяти человека, можно выразить на английском
языке, но можно и на русском. В этой аналогии графовая
данных эквивалентна знанию, а его представление на
RDF
X
ML
одель
-м
– пред-
ставлению знания на каком-нибудь естественном языке.
3. Следующий этап развития технологий
отсчет с момента разработки языка
RD
F
ляющего собой язык описания словарей
и классов
структуру
-р
есурсов). В отличие от
eb
-документов и ограничивающих их содержание,
X
W
ML
Sche
X
ML
S
emantic
(
RDF
ma
DF
R
-терминов (свойств
-с
хем, описывающих
схемы позволяют определять семантику данных, основанных на
п
редставлении. Сегодня
R
DFS
спользуется для создания более
и
W
eb
),
представ-
S
ведет
DF
R
-
XML
-
богатых моделей описания предметных областей (например, языков
W
онтологий), которые позволяют адаптировать к
eb
еде системы
-ср
математической логики и обеспечить семантическую обработку
данных.
ОПИСАНИЕ ФАКТОВ
6.3
RDF
Так как модель
сания фактов при помощи тегов
оп
ределяется, прежде всего, как способ опи-
X
ML
,
первое, что мы должны сделать
для уяснения природы этой модели, описать, что собой представ-
18
1

ляют факты, и почему их описание так важно для формального
представления смысла данных.
А
6.3.1
КТ Ы КАК Е ДИ НИЦА ПРЕД СТАВЛ ЕНИЯ СМЫСЛА
Ф
ДА НН ЫХ
начала определимся с понятием «смысл» по отношению
С
к данным. Для этого допустим, что в памяти машины хранится
число
«1
85»
Само по себе это число ничего не означает, т. е. не
.
имеет смысла, и непонятно, что с этим числом можно сделать.
Именно в таком виде хранятся данные в машине, а то, что
с ними делать, определяет программист путем написания кода,
предписывающего процессору выполнение последовательности
машинных инструкций над этими данными. Эта последовательность
операций определяется программистом исходя из его знаний
о предметной области и смысла решаемой задачи.
Ввиду отсутствия средств представления смысла в современных
информационных технологиях этот смысл остается в виде знаний
в памяти человека, а в машину заносится последовательность
машинных инструкций, обеспечивающая обработку данных, не
противоречащей их смыслу.
Хотя программный код также хранится в памяти машины, но
это не значит, что машина через него знает смысл выполняемой
работы. Для машины программный код – это просто последовательность операций из состава системы команд процессора, и при
обработке данных машина об их смысле по-прежнему ничего не
знает. Она просто «слепо» выполняет над ними операции, определенные в программном коде. Таким образом, в машине содержатся данные и программный код, т. е. последовательность операций над ними, а их смысл – в памяти человека.
А теперь вспомним данные о человеке, представленные
XML
в раз-деле 6.1 на языке
жение в виде одного единственного высказывания
185 см»
.
В
этом высказывании число
в трех
«
вариантах, и приведем их выра-
185»
Рост
«
пр
едставляется как значение
ванова
И
свойства
«р
ост»
бъекта
су
человек»
«
о фамилии «
п
18
2
ванов»
И
.

Это и есть смысл числа
«
,
который в данном конкретном
185»
примере определяется сопоставлением трех сущностей:
Иванов»
«
–
– з
начения
ущности
– с
– э
кземпляр сущности
185»
Рост»
«
;
, представляющей собой отношение между
«
Человек»
«
;
приведенными сущностями.
Из приведенного описания видно, что в данном отношении эти
сущности четко упорядочены путем задания их ролей:
Иванов» –
«
–
–
–
Рост»
«
«
185»
– об
субъект;
– п
редикат или свойство;
ъект или значение.
Приведенное отношение описывает факт, определяющий, что
число
185
фамилии
вляется значением свойства
я
Ивано
в
. Др
угими словами, факт является единицей пред-
Рост
ущности
с
Человек
по
ставления смысла данных. Именно для описания фактов был создан
RD
F
язык
,
содержащий в своем арсенале средства для выражения
и связывания в единую структуру компонентов факта, рассматриваемого как одну из форм представления единицы смысла данных.
6.3.2
В
О
П
ИСАНИЕ ФА КТОВ В ЯЗЫКАХ ПРОГРАМ МИРОВАНИЯ
традиционных языках программирования отсутствуют средства обработки фактов, представляющих собой структуры, описываемые графовыми конструкциями. Хотя структура данных, соответствующая факту (например, описанному выше факту
1
85
см»)
может быть определена. Например, в языке
C+
«
Рост
+
ля пред-
д
И
ванова
ставления этого высказывания может быть использована структура
truct Chelovek
s
{ Family: string;
Rost: string;
Value: integer }
.
К
омпоненты этой структуры рассматриваются не как субъект,
предикат и объект факта, а как обычные переменные и могут быть
обработаны по отдельности, например:
helovek.Family
– с данными
C
огут быть выполнены операции кон-
м
катенации и сравнения;
18
3

– с данными
Ch
elovek.Value
– а
рифметические операции сложения
или вычитания и т. д.
+
C+
Но в языке
от
сутствуют встроенные средства обработки
экземпляров этих структур целиком для выявления их ложности или
истинности, т. е. как фактов. Поэтому для обработки фактов были
созданы специализированные языки программирования, такие как
L
isp
и
rolog
P
. С помощью этих языков факты могут быть записаны
разными способами:
– на языке
L
isp
факт
Рост
«
И
ванова
85
1
м»
с
может быть записан
с помощью выражения:
(предикат субъект объект)
P
rolog
.
от же факт записывается так:
т
.
(Рост Иванов 185)
а языке
– н
П
редикат (субъект, объект)
Рост (Иванов, 185)
Языки
L
isp
и
rolog
P
были созданы в рамках развития научного
направления «Искусственный интеллект», которое появилось задолго до возникновения Всемирной паутины, и не были приспособлены
для работы с данными, размещенными в Сети. Поэтому понадобились другие средства, адаптированные на работу с распределенными
данными, и именно такие средства были созданы в рамках проекта
Но прежде чем приступить к рассмотрению этих средств,
Semantic Web
.
постараемся выяснить, чем же отличаются факты от данных,
и почему для их обработки не подходят традиционные языки
программирования.
Д
ННЫЕ И ФА КТ Ы
6.3.3
Факты
А
отличаются от данных, с которыми программисты привыкли иметь дело. Для описания этого отличия снова обратимся
к высказыванию
«Ро
ст
Ивано
ва
см»
. Для
18
5
представления этого
высказывания, выраженного на естественном языке, на языке дескрипционной логики, лежащей в основе спецификации
зуется запись вида
<Ивано
в, Рост, 185>
. Такая запись в
дескр
RD
исполь-
,
F
ипционной
18
4

логике
называютс
я кортежем, а каждый из его элементов называ-
ется термом.
Разница между кортежем и структурой данных заключается
в том, что кортеж представляет собой декларацию или высказывание. Выражение, составленное из данных, может быть вычислено
и присвоено переменной. Но невозможно вычислить декларацию
или присвоить ее переменной. Обработка кортежа состоит в том, что
соответствующий факт признается либо истинным, либо – ложным.
Факты, для которых находятся подходящие кортежи, признаются
истинными, а остальные – ложными.
Основная проблема записей фактов в виде кортежей заключается в том, что они содержат три терма, представляющие сущности, в то время как факт определяется двумя сущностями, между
которыми зафиксировано некоторое отношение. Решение этой
проблемы заключается в том, что для обозначения отношений также
используются термы, а для каждого из термов кортежа определяются роли из описания факта. В этом случае мы получаем кортежи
особого типа, называемые предикатами. Таким образом, предикаты
содержат как термы, представляющие сущности, так и термы, представляющие отношения между ними.
Для упрощения обработки предикатов принято соглашение,
в соответствии с которым в каждом предикате содержится только
один терм-отношение, выражающий связь между двумя сущностями. Такие предикаты содержат три терма и называются трипле-
тами. Каждый терм триплета имеет специфическое название:
первый терм называется субъект, второй терм, выражающий отношение, – предикат, а третий терм – объект.
6.4
ЕСКРИПЦИОННАЯ ЛОГИКА
Д
При анализе проблем представления семантики данных в разделе 6.1 было отмечено, что с проблемой связывания данных по
смыслу непосредственно связана проблема сопоставления связанных
терминов различных предметных областей.
В конструкциях представления фактов, описанных в предыдущих подразделах, на элементы триплета никакие ограничения не
18
5

накладываются. Для пояснения описанной ситуации снова вернемся
к триплету, описывающему данные о человеке по фамилии Иванов,
и рассмотрим его с точки зрения описания отношения между сущностями.
С математической точки зрения триплет представляет собой
экземпляр
представляет собой множество пар. Например, отношение
задает множество пар элементов вида {(
екоторого
н
инарного отношения. Бинарное отношение
б
«
Иванов
,
185
, (
)
Петров
,
179
),
Рост»
…}.
Каждая тройка определяет одну пару из некоторого бинарного
отношения, но кроме этого, дополнительно задает еще имя отношения, т. е. если имеется пара (
пару можно выразить тройкой
М
атематическое понятие отношения выводится из понятия
И
ванов
Иванов, Рост, 185>
<
,
18
)
5
отношения
«
Рост»
,
то эту
.
«множество». Отношением между парой элементов, определенным
на множествах их значений, называется фрагмент декартова произведения этих множеств. Для определения отношения элементов на
всевозможные их сочетания необходимо наложить некоторые ограничения, выделяющие этот фрагмент декартова произведения.
Определим ограничения, которые должны быть наложены на
содержимые элементов отношения
«
Рост»
, для полноценного описа-
ния факта. Возвращаясь к нашей ситуации, первое, что мы должны
Рост»
сделать для определения отношения
«
, – это уточнить, что
первый элемент этого отношения должен быть фамилией человека,
а второй – число в сантиметрах. Для определения такого ограничения необходимо ввести понятия
«фамилия человека»
«число в см»
и
.
После этого задается ограничение, выражающее тот факт, что если
имеется тройка вида (
д
олжна быть экземпляром понятия
«185»
– э
кземпляром понятия
«Иванов»
«Рост»
,
«число в см»
,
«
«185»
фамилия человека»
.
)
, то сущность
«Иванов»
а сущность
,
Для выражения ограничений описанного вида используется
математический аппарат дескрипционной логики [41], служащий
фундаментом языка
Дескрипционная логика базируется на
.
R
DF
формализмах семантических сетей [42] и фреймов [43], но использует аппарат математической логики.
18
6

В математической логике производится явное разделение на
синтаксис и семантику. Синтаксис задает язык, с помощью которого
записываются различные высказывания об элементах мира данной
логической системы. Семантика признает истинными только те
высказывания, которые удовлетворяют заданным ограничениям.
Каждое выделенное высказывание отражает соответствующий факт
описываемого мира, а совокупность этих высказываний составляет
его модель.
ЕМ ЕНТЫ ДЕ СКРИПЦИ ОН НОЙ Л ОГИКИ
6.4.1
Э
Л
Язык дескрипционной логики состоит из следующих элементов:
– множества унарных предикатных символов, обозначающих
имена понятий. Понятия обозначают множества сущностей, которые
им принадлежат, т. е. это классы в программистской терминологии;
– множества бинарных предикатных символов, обозначающих
имена ролей. Роли задают отношения между понятиями;
– рекурсивного определения термов понятий, задаваемого
с помощью конструкторов на основе понятий и ролей. В качестве
конструкторов термов выступают как операции логики первого
порядка, такие как конъюнкция, дизъюнкция, ограничения универсальности и существования и т. д., так и операции, задающие ограничения ролей, т. е. бинарных отношений.
6.4.2
В
математике логическая система обычно определяется как
О
ГИЧЕ СКАЯ СИСТЕ МА ДЕСКРИ ПЦИОННО Й ЛОГИКИ
Л
некоторое множество , состоящее из элементов и описываемое
выражением
=
, … , , … ,
.
В модели логической системы определяются классы, соответствующие понятиям. Таким образом, совокупность понятий предметной области образует множество классов
=
, … , , … , , … , .
18
7

Каждый из элементов
деленное количество элементов
того множества включает в себя опре-
э
м
ножества , что можно запи-
сать выражением
(.)
, … ,
(.
, … ,
)
где 1(), … , ()⊂ 1, … , Σ, а (1)+ ⋯ + ()+ ⋯ + ()= Σ
римечание. В приведенном выражении (и далее в этом разделе) точка
П
внутри скобки в нижнем индексе обозначает верхний индекс, т. е. нижний
индекс (.) следует читать как ().
(.
∈ ,
)
.
В результате проведенной классификации элементы множества соотносятся с определенными классами, т. е. записываются
в виде
. Описанное разбиение множества элементов на
)
(.
классы можно представить как результат отображения множества
на множество . В этом случае мы получаем семейство отображений
классификации
=
Ка
, … , , … , .
ждый член
э
того семейства представляется множеством
отображений
= {
(.
, … ,
)
(.
, … ,
)
(.
)
},
элементы которого реализуют связь между элементами множеств и , что можно записать как
⎯,
(.
для всех = 1, … , Σ, = 1, … , .
)
Определим на множестве также отношения между элементами разных классов. Отношения между элементами
и
∈ запишем вы
)
(.
(.
⎯
)
(.
(.
)
)
Каждое отношение
для ()⊂ 1, … , (), ()⊂ 1, … , ().
,
ражением
(.
пределяет факт предметной области
о
)
∈
)
(.
и представляет собой суждение о состоянии некоторого ее фрагмента. Обозначим семейство
(, ∈ 1, … , )
отношений-фактов
между элементами классов и как
= {
где (, ⊂ 1, … , ).
},
18
8

(.)
( )
()
(.)
1
1
(.)
Использование знака подмножества ⊂ в данном и предыдущем
выражениях означает, что отношения
ределяются не для всех возможных сочетаний () и () элемен-
оп
а также их множества
,
)
(.
тов и их множеств
и , а
только для выбранных.
Таким образом, в множестве , кроме уже описанных элементов
и их классов-подмножеств
и
как показано на рис. 6.1.
∈ ,
,
определяются подмножества
∈
с. 6.1 Логическая система дескрипционной логики
Ри
6.4.3
В
1, … , ,
К
МПОНЕНТЫ ДЕСКРИПЦИ ОННОЙ Л ОГИКИ
О
дескрипционной логике семейства отображений
сопоставляют наименования сущностей с наименованиями
понятий в виде отношения принадлежности
(.
∈ и, та
)
∈ , ∈
ким
образом, формируют терминологический компонент.
Множество содержит высказывания, задающие отношения
между понятиями и его экземплярами, т. е. представлен унарными
отношениями и описывается выражением
:
= {
(.
)
где = 1, … , , ()= 1(), … , (
тображения
О
суждений
(.
(
)
: (
(.
(.
∈ )},
)
)
∈ , (, ∈ 1, … , ) фи
,
)
т. е. определяют компонент суждений.
),
)
(.
.
ксируют факты в виде
18
9

Множество содержит высказывания, определяющие отношения
экземпляров понятий из множеств
:
= {
(.
(
)
(.
(), ()= 1(), … , (
ажно иметь в виду, что отношения
В
,
)
(.
)
)
.
)} д
,
и описывается выражением
ля всех , = 1, … , ,
(.
редставляют собой
п
)
бинарные отношения и на них наложены ограничения, определенные в множестве , которые определяют, что первый элемент отношения должен принадлежать классу , а второй – классу .
Описание логической системы в некотором множестве соответствует классическому подходу, но в
R
DF
ринято использовать
п
еще и представление логической системы на графе, как показано на
рис. 6.2.
с. 6.2 Ориентированный граф модели RDF
Ри
Графовое представление логической системы обеспечивает
более наглядную иллюстрацию ее компонентов (терминологического и суждений ). Например,
в
ысказывание
«С
татья:713
я
вляется
19
0
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
