сценарий PHP для преобразования xml в дату

Есть ли любой Сценарий PHP для преобразования XML-файла в DTD.

Я попробовал много. Я могу способный найти инструменты, но не может Сценарий PHP.

Есть ли кто-либо?

любая справка будет благодарна...

Fero

5
задан Fero 23 February 2010 в 10:11
поделиться

2 ответа

Генерация DTD из XML-файла - это то, что я не часто встречал - одной из основных причин является то, что вы не можете быть уверены, что XML-файл, который вы использовали для генерации DTD, будет содержать все, что DTD должен определить.

т.е. сгенерированный DTD будет содержать только те элементы и атрибуты, которые присутствовали в этом конкретном XML файле что не обязательно означает все элементы и атрибуты, которые должны быть приняты при его последующем использовании.


Учитывая это, я не нашел ни одного инструмента PHP для создания DTD из XML файла...

... Но я нашел один на JAVA : DTDGenerator - инструмент для создания XML DTD (цитирование) :

DTDGenerator - это программа, которая берет XML документ в качестве входных данных и создает определение типа документа (DTD) в качестве выход.

Цель программы - дать вам возможность быстрый старт в написании DTD.
DTD DTD является одним из многих возможных DTD которому соответствует входной документ.
Обычно вы хотите изучить DTD и отредактировать его, чтобы описать свой документ. DTD и отредактировать его, чтобы описать ваши для более точного описания ваших предполагаемых документов.


Пара приятных моментов в этой программе DTDGenerator:

  • На сайте есть некоторые объяснения основных идей того, как это работает
  • Предоставляется исходный код
  • Его длина составляет менее 600 строк.
    • что означает, что можно понять без особых усилий
    • и возможно перенести его на PHP ?
    • И есть некоторые комментарии в исходном коде- что могло бы помочь.
  • Она опубликована под MPL -- что означает открытый исходный код; что хорошо, если вы хотите перенести ее


Начиная с исходного кода этой программы, должно быть возможно написать некоторый PHP код (если вы не можете исполнять JAVA, и вам действительно нужно, чтобы это было написано на PHP), чтобы сделать то же самое: Основные идеи не так уж и сложны:

  • Вы должны пройти через структуру XML
  • построив ее древовидное представление, на каждом начальном теге
    • который означает элементы
    • которые могут иметь атрибуты
  • И, когда вы закончили проходить через XML документ, вы должны построить DTD из вашего представления документа.
    • Это может быть самой трудной частью - глядя на исходный текст JAVA-инструмента, на который я ссылался, он представляет собой довольно большое количество строк кода ^^

Приятно взглянуть на этот DTDGenerator перед началом работы - его автор уже думал об этом процессе - и уже определил некоторые ситуации, о которых вы могли не думать ;-)

.
4
ответ дан 15 December 2019 в 00:59
поделиться

Вот что я нашел, что может быть полезным: http://www.hitsw.com/xml_utilites/

Есть также класс, который кажется перспективным: http://phpclasses.2by2host.com/browse/package/250.html

0
ответ дан 15 December 2019 в 00:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: