Sıralama ve Çakışmalar¶
"Bekleyen Güncellemeler" mekanizmasının bir başka sonucu da güncellemelerin belirtilme sırasının önemli olmamasıdır. Aşağıdaki örnekte Id özniteliğini (işaret edilen $idattr), daha sonra da $idattrekleme için /.. (üst ITEM öğesi) ifadesini sorunsuzca kullanabilirsiniz! Ya da önce ekleyip sonra silebilirsiniz.
1 2 3 4 5 | |
Ancak bunun sonucunda bazı çakışan değişiklikler öngörülemeyen sonuçlara yol açabilir. Örneğin aynı düğümün iki kez yeniden adlandırılması çakışır; çünkü hangi sırayla uygulanacaklarını bilemeyiz. Diğer belirsiz işlemler: aynı düğümde iki kez * replace kullanılması veya aynı düğümün değerinin replace value* ile iki kez değiştirilmesi (ya da içeriğinin iki kez değiştirilmesi).
XQUF belirtimleri bu tür belirsiz güncellemeleri yasaklar. Böyle bir çakışma algılandığında (güncellemeleri uygulama aşamasında) hata oluşturulur.
Biraz ironik biçimde, anlamsız ama belirsiz olmayan çakışmalarda hata oluşturulmaz; örneğin aynı düğümün hem yeniden adlandırılması hem de silinmesi durumunda (delete node diğer işlemlere göre önceliklidir).