2011-12-06 21 views
8

XML dosyamı harici bir DTD ile doğrulamaya çalışıyorum. Ama her seferinde bu hatayı alıyorum. Bunu anlayamıyorum.XML Doğrulama hatası - Kök öğesi doctype eşleşmesi gerekir

xml dosyamın fikri, olabildiğince kısa olması gerektiğidir. Bence her şey iyi ama dediğim gibi, doğrulamıyorum. Birisi bir fikri var mı?

Bu benim XML dosyası

<?xml version="1.0" encoding="utf-8"?> 
<!DOCTYPE test SYSTEM "test.dtd"> 

<A> 
<B> 
<F>name</F> 
</B> 
<D>lastname</D> 
<F>name</F> 
</A> 

Ve DTD

<!ELEMENT A (B, (C|D), E?, (F, G?)+)> 
<!ELEMENT B (F|G)+> 
<!ELEMENT D (#PCDATA|C)*> 
<!ELEMENT F (#PCDATA)> 
<!ELEMENT G (#PCDATA)> 
<!ELEMENT C (#PCDATA)> 
<!ELEMENT E (#PCDATA)> 

Teşekkür

cevap

14

Doctype kök öğesi <test> olduğunu iddia ama

<!DOCTYPE test 
      ^^^^ 
kullandık

Doctype'u, kökün <A> olduğunu veya <test>'u kullanmak için XML ve DTD'yi değiştireceğini belirtin.

4
<!DOCTYPE test SYSTEM "test.dtd"> 

DTD conformant belgenin kök ELEMANI test denir beyan eder. İstediğiniz:

<!DOCTYPE A SYSTEM "test.dtd"> 
İlgili konular