Преобразование формата XML - PullRequest
0 голосов
/ 05 февраля 2010

У нас есть проблема, когда у нас есть фид XML, покидающий нашу систему, и клиент должен иметь возможность импортировать этот фид в свою систему, но ему требуется, чтобы файл XML был в другом формате. По ряду причин ни один из нас не может изменить наш формат. Тогда я думал, что для нас будет иметь смысл построить какой-то мост, который импортирует наш формат и экспортирует его в их. Очевидно, это довольно просто, когда мы знаем форматы в каждой позиции. Однако я хотел бы создать что-то более общее и менее специфичное для этого клиента, чтобы этот мост мог использовать ряд людей, если он им понадобится. Что я должен смотреть, чтобы достичь этого? Есть несколько методов, которые я могу придумать, например, шаблоны документов, содержащие элементы-заполнители и некоторую форму данных отображения (в XML или в БД), но мне кажется, что должно быть более элегантное решение - возможно, такое как Расширение PHP XSL . Мы работаем преимущественно на PHP, поэтому решение на основе PHP было бы идеальным, но я был бы рад рассмотреть все, что будет работать на Linux-системе.

Ответы [ 3 ]

3 голосов
/ 05 февраля 2010

Что касается «преобразующей» части вашего вопроса, да, XSLT был бы разумным подходом.

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

2 голосов
/ 05 февраля 2010

Да, XSLT достаточно эффективен при преобразовании одного формата XML в другой, следовательно, "T". Я использовал его в прошлом с большим успехом.

1 голос
/ 05 февраля 2010

Действительно, XSLT - это путь.

Некоторые ресурсы здесь: http://www.w3schools.com/xsl/default.asp

И расширение XSL для PHP - действительно простой способ заставить его работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...