У меня есть папка из нескольких сотен XML-файлов, которые я бы хотел преобразовать в папку файлов HTML. Я создал XSLT, который работает в тесте XSLT w3schools.com, но я не уверен, как применить эту таблицу стилей к сотням XML-документов. Мой XML выглядит следующим образом (и только узлы я заинтересован в название, автор, и текст):Преобразование папки файлов XML в папку HTML-файлов
<?xml version='1.0' encoding='utf-8'?>
<song xmlns="http://openlyrics.info/namespace/2009/song" version="0.8" createdIn="OpenLP 2.0.1" modifiedIn="OpenLP 2.0.1" modifiedDate="2012-03-14T02:21:52">
<properties>
<titles>
<title>Amazing Grace</title>
</titles>
<authors>
<author>John Newton</author>
</authors>
</properties>
<lyrics>
<verse name="v1">
<lines>Amazing grace, how sweet the sound<br/>That saved a wretch like me<br/>I once was lost, but now am found<br/>Was blind but now I see</lines>
</verse>
Пара вопросов по этому поводу:
1) Может ли быть лучше использовать XQuery так как меня интересует только извлечение нескольких строк на XML-файл?
2) Независимо от XSLT/XQuery, как я могу реализовать решение, которое преобразует папку файлов XML (без ручного редактирования каждого из них, чтобы вызвать таблицу стилей XSL)? Я запускаю OS X 10.8.4.
Заранее спасибо.
Вы должны использоваться набор() функцию xslt2.0 применить таблицу стилей accross сотни xml Документы. Для более полного понимания вы можете следовать http://www.xmlplease.com/collection. Я уверен в HTML, что вы хотите преобразовать. Вы просто хотите переименовать xml в html extention или хотите создать несколько html-файлов в зависимости от ваших входных файлов XML. –
Я бы использовал XSLT 2.0 и функцию 'collection()', подобную Navin. Это может вызвать проблемы с потреблением памяти. Вы можете решить эту проблему, используя функцию расширения Saxon 'saxon: discard-document'. Я могу добавить пример, если это поможет. –