Корневой элемент определяется объявлением DOCTYPE
.Корневым элементом может быть любой элемент в DTD.
Например, в приведенном ниже DTD (test.dtd) book
обычно будет корневым элементом:
<!ELEMENT book (chapter+)>
<!ELEMENT chapter (section+)>
<!ELEMENT section EMPTY>
Однако, если мы используем section
в типе документа, section
является корневым элементом:
<!DOCTYPE section SYSTEM "test.dtd">
<section/>
Я использовал DOCTYPE
объявления во внешнем DTD для прямого указания корневого элемента, но я не думаю, что это разрешено в спецификации.Я сохранил DOCTYPE
во внешнем DTD и удалил DOCTYPE
из XML-файла.Мне удалось связать DTD с файлом XML в командной строке программы, которую я использовал.