////
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at
  http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
////
:documentationPath: /workflow/actions/
:language: en_US
:description: The XSL pipeline action transforms XML documents into other documents (XML or other format, such as HTML or plain text) using Extensible Stylesheet Language Transformations or XSLT.

= XSL pipeline

== Description

The `XSL pipeline` action transforms XML documents into other documents (XML or other format, such as HTML or plain text) using Extensible Stylesheet Language Transformations or link:http://en.wikipedia.org/wiki/XSLT[XSLT].

The original document is not changed; rather, a new document is created based on the content of the XML file.

== Options

=== General tab

[options="header", width="90%", cols="1,3"]
|===
|Option|Description
|Action name|The name of the workflow action.
2+|Files
|Get filenames from previous result|When this option is checked, the XML File name, XSL File name and Output File name are read from the previous result set.
When multilpe rows exists, it will loop.
At this time XML File name is the first field in the result set, XSL File name the second fields and Output File name the third field.
|XML File name|The full name of the source XML file
|XSL File name|The full name of the XSL file
|Output File name|The full name of the created document (result of XSL transformation)
2+|Settings
|Transformer Factory|You can select JAXP or SAXON as the transformer factory.
|If file exists a|Define the behavior when an output file with the same name exists. The available options are:

* Create new with unique name : a new output file will be created
* Do nothing : nothing will be done
* Fail : the workflow will fail

|Add files to result files name|Add the target file names to the list of result files of this workflow action for use in the next workflow actions.
|===

=== Advanced tab

[options="header", width="90%", cols="1,3"]
|===
|Option|Description
|Output properties a|A table with possible properties for the output of the XSL pipeline. The options are:

* method
* version
* encoding
* standalone
* indent
* omit-xml-declaration
* doctype-public
* doctype-system
* media-type

|Parameters|a list of parameter names and values to pass to the XSL pipeline
|===
