Database Reference
In-Depth Information
else “null”,
$_v2 in if ($_v1[author]) then $_v1/author
else /,
$x3 in if ($_v2[name]) then $_v2/name/text()
else “null”,
$x4 in if ($_v2[university]) then $_v2/university/text()
else “null”
return
<pub>
<title>{$x1}</title>
<year>{if ($x2=”null”) then
doc(“I1.xml”)/pubs/pub[title=$x1]/year[text()!=”null”]/text()
else $x2}</year>
<author>
<name>{$x3}</name>
<university>{if ($x4=”null”) then
doc(“I1.xml”)/pubs/pub/author[name=$x3]/university
[text()!=”null”]/text() else $x4}</university>
</author>
</pub> }
</pubs>
As the result of repairing, all nulls violating TP-XFDs are replaced with non-null values.
QUERIES AND QUERY REFORMULATION
A query will be understood as a mapping where its left-hand side is extended with a filter (the query
qualifier ).
Definition 15. ( query ) Let m ST := x ( S ( x ) y T ( x' , y )) be a mapping from a source schema S ( x ) to a
target schema T ( x' , y ) and φ( x ) be a formula over x . A query q from S to T with qualifier φ is a formula
of the form
q ST := x ( S ( x ) φ( x ) y T ( x' , y )) .
Such a query will be denoted as the pair ( m ST , φ).
The answer to a query q = ( m ST , φ) over an instance I = ( S , Ω) of S , is an instance J = ( T , Ω') of T .
Valuations in Ω' are created from the valuations in Ω satisfying the query qualifier. Such valuations
are restricted to variables occurring in both S and T and extended with null values, , assigned to those
variables in T which do not occur in S . More precisely:
Search WWH ::




Custom Search