2016-03-28 10 views
0

Aşağıdaki şemalar neden farklı? Ben basit bir keyref yapmaya çalışıyorum ve gerekirse ben Onlar birinde farklıdır ...XSD Keyref alanı sadece eleman adı yerine "." Ile çalışır?

<!-- This works --> 
<xsd:keyref name="followsKey" refer="userKey"> 
    <xsd:selector xpath="user/follows" /> 
    <xsd:field xpath="." /> 
</xsd:keyref> 

<!-- This doesn't --> 
<xsd:keyref name="followsKey" refer="userKey"> 
    <xsd:selector xpath="user" /> 
    <xsd:field xpath="@follows" /> 
</xsd:keyref> 

cevap

2

fazla bağlam sağlayabilir diğer adında bir özelliğine başvuruda bulunur "izler" adlı bir elemanına değinmektedir "şu".

ikincisi <xsd:field xpath="follows"/> yazılsaydı ilk bir user birden follows çocuk sahibi olmak mümkündür, öte yandan, bu, bir user eleman tek follows eleman çocuğu varsa sadece işbirliği yapacağını da ilk gelen, her biri farklı olurdu bir anahtar olarak davranır.

+0

Ayrıca '' follow' '' i sembolsuz olarak kullanmayı denedim, ama alas, '' aşağıdaki '' çocuklarının çokluları var. Açıklama için teşekkürler! – Adam