Итак, у меня есть эта проприетарная база данных, которая может извергать некоторый хорошо сформированный XML.Написание XSLT для синтеза документов OpenOffice из некоторой базы данных
Я хочу, чтобы XSLT дерьмо из некоторых записей, чтобы получить документы OpenOffice, достаточно приятные, чтобы угодить секретарю, быть подписанным большим боссом и отправляться как официальная корпоративная почтальон. С юридической точки зрения так лучше быть точным. Результирующий документ довольно прост, ваше среднее деловое письмо, возможно, стол или два, две страницы в самом лучшем случае. Не спрашивайте меня, почему они все еще используют уличную почту.
Я вижу, что документы OpenOffice - это, конечно же, XML. (MS Office тоже может быть, это вариант, но я буду придерживаться OO на данный момент).
Мой опыт работы с XSLT не идет намного дальше, чем базовые учебные пособия, несколько лет назад.
Я быстро проверил сеть в поисках OOo DTD, и это более неуловимо, чем я думал.
Я был бы признателен за некоторые указания, чтобы начать меня.
1/Где эти проклятые OpenDefice DTD?
2/Должно быть, есть пример XSLT по OOo. Знаете ли вы?
3/Что было бы правильным, хотя процесс? Конечно, я мог разобрать исходный XML и генерировать результат «на лету», элемент за элементом, но это было бы утомительно, и я бы предпочел не идти таким путем. Моя забота здесь заключается в том, чтобы найти способ написать подходящую таблицу стилей XSLT. С чего начать?
Чтобы дать все это немного вещества, , пожалуйста, приложите упрощенный макет исходного XML.
<document>
<metadata>Don't care</metadata>
<body>
<sendto>
<person>Mrs Jane Doe</person>
<street>Pensylvania Av.</street>
<number>1234</number>
<zip>QLD-56789</zip>
<city>Brisbane</city>
</sendto>
<placedate>Bumfuck, AZ, march 29th 2017</placedate>
<subject>
Our order #
<ordernumber>G-27b/6</ordernumber>
</subject>
<phrases>
<phrase>blah</phrase>
<phrase>bleh</phrase>
</phrases>
<order>
<item>
<reference>42</reference>
<name>Bath towel</name>
<unitprice>4.2</unitprice>
<quantity>20.0</quantity>
<totalprice>84.0</totalprice>
</item>
<item>...</item>
...
<item>...</item>
<totalprice>1024.0</totalprice>
</order>
<deliverto>
<person>...</person>
<street etc.></street>
</deliverto>
<phrases>
<phrase>...</phrase>
<phrase>Thx, ciao</phrase>
</phrases>
<signature>
<person>Zap Branigan</person>
<title>Director of corporate stuffs</title>
</signature>
</body>
</document>
Вы прочитали: https://en.wikipedia.org/wiki/Office_Open_XML_file_formats? –
У меня нет, и мне стыдно, и я это сделаю. Спасибо, это именно те начинающие, которых я ищу. –
Ну, так что вы должны :-) Обратите внимание на то, что документы OOXML являются «* ZIP-файлами, содержащими XML и другие файлы данных», - и как таковые не могут быть созданы только XSLT. Но посмотрите также: https://en.wikipedia.org/wiki/Microsoft_Office_XML_formats –