В последнем разделе 2 главы мы опишем различные виды ограничений целостности для XML-данных. Эти исследования, направленные на систематизацию логических способов задания ограничений целостности, были проведены в работах [8,12].
Итак, пусть S=(T,E,A,p,a,r) - Структурная схема, D- произвольный XML-документ, валидируемый S. Рассмотрим следующие логические выражения, являющиеся определениями ограничений целостности над схемой S.
Определение 26 (Ограничение ключа) Ограничением ключа ? над схемой S=(T,E,A,p,a,r) называется логическое выражение вида K(e)-> e , где e


Определение 27 ( документ удовлетворяет ограничению ключа) XML-документ D, валидируемый схемой S=(T,E,A,p,a,r) удовлетворяет ограничению ключа ? = K(e)-> e, если для любой интерпретации I=(ф,? ,?) выполняется следующее условие:



где x.l - это прообраз типа атрибута l, являющийся атрибутом элемента x. Под равенством атрибутов в документе, здесь и далее, подразумевается равенство значений.
Пример 9

рис 3 пример документа XML
На рис. 3 представлена документ XML, удовлетворяющий следующей структурной схеме:
T

E


p:p(a)= (b*) p(b)= ? a:a(b)={C,D} a(a)={}
r=a
Из утверждения 3 следует, что существует единственная интерпретация документа в терминах этой схемы. Рассмотрим следующее ограничение ключа ? = {C}-> B. Существует два элемента c именем b, у которых значения атрибута c совпадают. Следовательно, документ не удовлетворяет данному ограничению ключа. Однако тот же самый документ удовлетворяет другому ограничению ключа: {С,D}-> B.
Определение 28 (Ограничение включения) Ограничением включения над схемой S=(T,E,A,p,a,r) называется логическое выражение вида L1(e1)-> L2(e2) , где e1,e2 E, L1и L2 упорядоченные множества, такие что L1


Определение 29 ( документ удовлетворяет ограничению включения) XML-документ D, валидируемый схемой S=(T,E,A,p,a,r) удовлетворяет ограничению включения? = L1(e1)- > L2(e2), если для любой интерпретации I=(ф,? ,? ) выполняется следующее условие:




