

![0_image_0.png](0_image_0.png)

International Journal of Web & Semantic Technology (IJWest) Vol.1, Num.4, October 2010 a. The conflict is reported for a class that appears in the i th **location of the sequence, where**
1 < i < k **+ 1. The reported mismatch is correct according to the inductive hypothesis.**
b. The conflict is reported for the k+1th **class of the sequence. In this case there exists a matching**
specialization sequence at server ontology up to length k. But ck+1 **is not a sub class of class**
ck **according to the server ontology. Therefore the conflict reported by Algorithm 1 is correct.**
Mismatch on variables: Suppose the set of variables that are specified by the client is Vc **in a query**
q corresponding to the class set Sc(q) and the failure is reported on some variable in Vc**. Since** Algorithm 1 first finds the matches corresponding to the classes in Sc(q**) and then checks for the** answerability with respect to the variable set, in this case every class in Sc(q**) is matched with**
suitable classes in the server side. Now Algorithm 1 reports conflict if **there exists any variable that**
is not recognized by the server as an attribute of at least one of the classes that correspond to the classes in Sc(q). Therefore the reported conflict falls under the Type-2 or attribute level **conflict**
category. ⊓⊔
Theorem 2. [Completeness] For any protocol P**, if there is any mismatch of type-1 or type-2, Algorithm 1 reports it.**
Proof. **This proof is done by construction. For each of the type of the mismatches we show that** Algorithm 1 uses a sequence of operations through which the mismatch is detected. We present the proof for each mismatch type.

Type-1 Mismatch: Consider a specialization sequence σ = hc1.c2. · · · .cki **which is used in query** q.

Algorithm 1 starts by finding the class that is equivalent to c1 **at the server side. If there is only**
35