XProc
XProc | |
---|---|
Расширение |
.xpl |
MIME-тип | application/xml |
Разработчик | World Wide Web Consortium |
Тип формата | Язык описания стилей |
Расширен из | XML |
Стандарт(ы) | 1.0 (предлагаемая рекомендация) |
XProc (от англ. XML Processing) — официально утверждённая рекомендация комитета W3C по описанию XML-конвейеров на языке преобразования XML. Рекомендация была утверждена 11 мая 2010 года.
Примеры кода
[править | править код]Ниже приведен пример XProc-файла:
<p:pipeline name="pipeline" xmlns:p="http://www.w3.org/ns/xproc"
version="1.0">
<p:input port="schemas" sequence="true"/>
<p:xinclude name="included">
<p:input port="source">
<p:pipe step="pipeline" port="source"/>
</p:input>
</p:xinclude>
<p:validate-with-xml-schema name="validated">
<p:input port="source">
<p:pipe step="included" port="result"/>
</p:input>
<p:input port="schema">
<p:pipe step="pipeline" port="schemas"/>
</p:input>
</p:validate-with-xml-schema>
</p:pipeline>
Данный конвейер состоит из двух неделимых частей (шагов или этапов): XInclude (подключение) и Validate (проверка). Конвейер сам по себе обладает двумя входными параметрами: «source» (исходный документ) и «schemas» (список W3C XML-схем). Часть XInclude считывает исходный «source» конвейера и создает промежуточный документ. Часть Validate считывает входящие «schemas» конвейера и результат, полученный XInclude, затем создает итоговый документ. Результат проверки — это и есть результат работы конвейера.
Ниже представлен аналогичное описание укороченного XProc-конвейера:
<p:pipeline name="pipeline" xmlns:p="http://www.w3.org/ns/xproc">
<p:input port="schemas" sequence="true"/>
<p:xinclude/>
<p:validate-with-xml-schema>
<p:input port="schema">
<p:pipe step="pipeline" port="schemas"/>
</p:input>
</p:validate-with-xml-schema>
</p:pipeline>
Реализации
[править | править код]- Calabash, поддерживается Норманом Уолшем (англ.)
- Calumet — реализация XProc от EMC (англ.)
- QuiXProc, реализация XProc от Innovimax (англ.)
- yax — реализация на языке Java 5 (на основе черновика рекомендации) (англ.) (нем.)
См. также
[править | править код]Ссылки
[править | править код]Сайты и ресурсы
- The XML Processing Model Working Group на сайте W3C (англ.)
- XProc: An XML Pipeline Language (англ.)
- Веб-сайт Xproc.org, поддерживаемый Норманом Уолшем (англ.)
Руководства и справочная документация
- XFront. XProc Tutorial (англ.)
- An introduction to Xproc: An XML Pipeline Language (англ.)
- XProc Introduction (недоступная ссылка) — краткий курс с примерами (англ.)
- XProc-Tutorial (недоступная ссылка) (нем.)
- Dokumentation zum Entwurf einer komplexeren XProc Pipeline (недоступная ссылка) (нем.)
- XProc-Tutorial (нем.)
- XProc-Reference (нем.)
Разное
- WireIt — XProc Editor — графический онлайн-редактор (англ.)