View Javadoc
1   /*
2    * SPDX-FileCopyrightText: Copyright (c) 2012-2025 Yegor Bugayenko
3    * SPDX-License-Identifier: MIT
4    */
5   package com.jcabi.xml;
6   
7   /**
8    * XSL stylesheet.
9    *
10   * <p>Implementation of this interface must be immutable and thread-safe.
11   *
12   * @see XSLDocument
13   * @since 0.4
14   * @checkstyle AbbreviationAsWordInNameCheck (5 lines)
15   */
16  public interface XSL {
17  
18      /**
19       * Transform XML to another one.
20       * @param xml Source XML document
21       * @return Result document
22       */
23      XML transform(XML xml);
24  
25      /**
26       * Transform XML into text.
27       * @param xml Source XML document
28       * @return Result text
29       * @since 0.11
30       */
31      String applyTo(XML xml);
32  
33      /**
34       * With this sources.
35       * @param src Sources
36       * @return New XSL document
37       */
38      XSL with(Sources src);
39  
40      /**
41       * With this parameter.
42       * @param name Name of XSL parameter
43       * @param value Value of XSL parameter
44       * @return New XSL document
45       * @since 0.16
46       */
47      XSL with(String name, Object value);
48  
49  }