XProc (от англ. XML Processing) — официально утверждённая рекомендация комитета W3C по описанию XML-конвейеров на языке преобразования XML. Рекомендация была утверждена 11 мая 2010 года.
Данный конвейер состоит из двух неделимых частей (шагов или этапов): XInclude (подключение) и Validate (проверка). Конвейер сам по себе обладает двумя входными параметрами: «source» (исходный документ) и «schemas» (список W3C XML-схем). Часть XInclude считывает исходный «source» конвейера и создает промежуточный документ. Часть Validate считывает входящие «schemas» конвейера и результат, полученный XInclude, затем создает итоговый документ. Результат проверки — это и есть результат работы конвейера.
Ниже представлен аналогичное описание укороченного XProc-конвейера: ipeline name="pipeline" xmlns ="http://www.w3.org/ns/xproc">
ipe step="pipeline" port="schemas"/>
ipeline>
Реализации
Calabash, поддерживается Норманом Уолшем (англ.)
Calumet — реализация XProc от EMC (англ.)
QuiXProc, реализация XProc от Innovimax (англ.)
yax — реализация на языке Java 5 (на основе черновика рекомендации)