definuje se jako cizí klíč, který musí ukazovat na nějaký existující klíč
cizí klíč musí být definován na stejné nebo vyšší úrovni než klíč
Příklad 7. Šéf každého zaměstnance existuje
<xs:element name="zamestnanci"> <xs:complexType> <xs:sequence> <xs:element ref="zamestnanec" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:key name="osobni_cislo"> <xs:selector xpath="zamestnanec"/> <xs:field xpath="@oc"/> </xs:key> <xs:keyref name="sef_je_existujici_oc" refer="osobni_cislo"> <xs:selector xpath="zamestnanec"/> <xs:field xpath="sef"/> </xs:keyref> </xs:element>
xs:keyref může ukazovat i na xs:unique