включение XML-файла в другой XML-файл + проверка XML-схемы - PullRequest
1 голос
/ 18 мая 2011

У меня есть четыре, три xml-файла и один xsd-файл.Это файл videodes.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE videodes [
<!ENTITY dvds   SYSTEM "./dvds.xml">
<!ENTITY movies SYSTEM "./movies.xml">
]>
<videodes xsi:noNamespaceSchemaLocation="src/videodes.xsd" xmlns="" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  &dvds;
  &movies;
</videodes>

Это файл dvds.xml (в том же каталоге):

<?xml version="1.0" encoding="UTF-8"?>

<dvds>
    <dvd id="1">
        <title>The lord of the rings</title>
        <type>Original</type>
        <content>
            <movie movie_id="1"/>
            <movie movie_id="2"/>
            <movie movie_id="3"/>
        </content>
    </dvd>

    <dvd id="2">
        <title>Inception</title>
        <type>Original</type>
        <content>
            <movie movie_id="3"/>
        </content>
    </dvd>
</dvds>

И это файл movies.xml (также в том жекаталог):

<?xml version="1.0" encoding="UTF-8"?>

<movies>
    <movie id="1">
        <name>Inception</name>
        <director>Christopher Nolan</director>
        <year>2010</year>
        <country>USA</country>
        <actors>
            <actor>Ellen Page</actor>
        </actors>
        <genres>
            <genre>Thriller</genre>
        </genres>
    </movie>

    <movie id="2">
        <name>Two towers</name>
        <director>Peter Jackson</director>
        <year>2003</year>
        <country>USA</country>
        <actors>
        </actors>
        <genres>
            <genre>Action</genre>
            <genre>Fantasy</genre>
        </genres>
    </movie>

    <movie id="3">
        <name>Return of the king</name>
    </movie>
</movies>

Вы можете видеть, что я написал схему XML для "основного" файла (videodes.xml).Я думаю, что схема не важна, поэтому я не публикую ее здесь.Дело в том, что когда я помещаю dvds.xml и movies.xml в videodes.xml, он действителен (по крайней мере, так говорит NetBeans).Но я хочу, чтобы DVD и фильмы хранились отдельно (не в одном файле).Поэтому я создал dvds.xml и movies.xml и включил их в videodes.xml.Но когда я проверяю файл videodes.xml сейчас, netbeans говорит, что это недопустимый файл.Похоже, что файлы, объявленные в doctype, даже не включены в videodes.xml.

Что я делаю не так?Я включаю это неправильно?Я объявил неправильный тип документа?

Спасибо за любые ответы заранее.И извините за любые грамматические ошибки в моем английском.

...