Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Основы XML-технологий. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
преимуществами, включая сопутствующие технологии пла
тформы и ее стандартные средства.
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
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]