Как получить доступ к URI файла DTD на моем локальном компьютере? - PullRequest
0 голосов
/ 14 мая 2009

У меня есть файл DTD, к которому я обращался по этой ссылке:

http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd

Теперь я хочу, чтобы у меня был доступ к этому файлу на моем локальном компьютере без какого-либо веб-доступа. Я использовал WebRequest для доступа к этому URI.

Может кто-нибудь из вас подскажет, как получить к нему доступ, используя Словарь или любой другой класс в C #.

Спасибо ..

1 Ответ

0 голосов
/ 14 мая 2009

Обычно это функция вашего анализатора XML. Ищите что-то под названием «обработчик сущностей». Когда объявление DOCTYPE найдено, этот обработчик вызывается для загрузки DTD. Он получит URL и некоторую другую информацию в качестве параметров.

[EDIT] Обработчик объекта будет возвращать некий «поток», который будет читать анализатор XML. Поэтому вам нужно сохранить DTD в файл, открыть файл в обработчике сущностей и вернуть полученный поток в анализатор XML.

В документации вашего XML-анализатора должны быть примеры, как это сделать. Обратите внимание, что поток должен быть где-то закрыт; обычно это делает синтаксический анализатор XML (поскольку только он знает, когда это сделано с потоком).

...