Hitachi Vantara Pentaho Community Wiki
Child pages
  • 6 - XML Schema
Skip to end of metadata
Go to start of metadata

This is not actually a schema, but it does explain the Action Sequence XML and node requirements.

XML Nodes marked as REQUIRED are only required if their parent node is being used. Attributes shown in square brackets [PentahoDoc: ] are optional.

  • <action-sequence> REQUIRED - Top level node for the Action Sequence Document
    • <name> NOT REQUIRED - The name of the Action Sequence, it must match the file name of the document.
    • <version> NOT USED - The version of this document
    • <title> NOT REQUIRED - Friendly name of the document. Used for display only
    • <logging-level> NOT REQUIRED - Sets the logging level for the entire Action Sequence. Valid values are: TRACE, DEBUG, INFO, WARN, ERROR and FATAL. If no logging level is set, ERROR will be used.
    • <documentation> NOT REQUIRED - Contains descriptive nodes used for generating documentation.
      • <author> - NOT REQUIRED - The author of this Action Sequence
      • <description> - NOT REQUIRED - Short (1-3 lines) description of the Action Sequence. This description is used by the solution navigation component to generate its display.
      • <help> - NOT REQUIRED - Long Description of the Action Sequence including instructions for it's use by an end user.
      • <result-type> - NOT REQUIRED - Type of output this Action Sequence will generate. It is used by the solution navigation component to generate its display. Action Sequences without a result-type will not be displayed by the navigation component. Valid values are: Report, Process, Rule, View and None.
      • <icon> - NOT REQUIRED - Thumbnail image that the navigation component will use for generating its display. The path to the image is relative to the directory that the ActionSequence document is in. For example: Example1_image.png
    • <inputs> - NOT REQUIRED - Collection of input parameters.
      • <param-name type="data-type" > - NOT REQUIRED - param-nameis the name of a parameter that the Action Sequence is expecting to be available at run time. The type attribute specifies the data type of this parameter. See below for valid data types.
        • <default-value> - NOT REQUIRED - Allows the input parameter to specify a default value if a value has not been supplied. If the default-value node is present but has no value specified, the user will be prompted for the value if possible.
        • <sources> - NOT REQUIRED - list of parameter providers in the order they should be queried to obtain a parameter. Valid values are request, session and runtime. Note: if a param-name is set but default-value and sources are both not specified, a validation error will occur.
          • <request> - NOT REQUIRED - Name of the request parameter that is to provide its value to this input
          • <session> - NOT REQUIRED - Name of the session variable that is to provide its value to this input.
          • <runtime> - NOT REQUIRED - Name of the runtime variable that is to provide its value to this input.
    • <outputs> - NOT REQUIRED - Collection of output parameters.
      • <param-name type="data-type" > - NOT REQUIRED - param-nameis the name of a parameter that the Action Sequence is expecting will be set by the time all action-definitions have executed. The type attribute specifies the data type of this parameter. See below for valid data types.
        • <destinations> - A container element for all possible destinations where the output will be piped to.
          • <response> - Use this destination to write the output value to the HTTP response.
            • content - use the text 'content' to write the output to the current HTTP response
            • redirect - ?
          • <runtime>
          • <session>
          • <global>
          • <file>
          • user-defined - User defined destinations are any ids of Spring beans that implement IContentOutputHandler. For example, 'file', 'vs-ftp' or 'content-repo'. These user-defined destinations can be found in pentahoObjects.spring.xml.
    • <resources> - NOT REQUIRED - Collection of resource parameters.
      • <resource-name > - NOT REQUIRED - resource-nameis the name of a resource that the Action Sequence is expecting to use. The type attribute specifies the data type of this parameter. See below for valid data types.
        • <resource-type> - REQUIRED - The name of the type of resource required. Valid values are: solution-file, file and url.
          • <location> - REQUIRED - The path to the resource. For a resource-type of "solution-file", the location is a pathname relative to the top level of the current solution. If the resource-type is "file" then the location is assumed to be the a fully qualified path. For resource-type of "url" the location is assumed to be a fully qualified URL.
          • <mime-type> - NOT REQUIRED - Gives a hint about the mime type of the resource.
    • <actions loop-on="parameter-name" > - REQUIRED - The actions node contains "action-definition" nodes and optionally more "actions" nodes. The loop-on attribute is optional. When it is used, the nodes within "actions" will be executed multiple times. It is necessary to specify a parameter that is of type list (string-list or property-map-list) and the group of nodes that will be executed once for each element in the list. An input parameter will be generated with the same name as the loop-on attribute but it will have the value of one element in the list. For example: if a loop-on attribute named "department" is a string-list with department names, then a parameter named department will be available and be set to a different department name for each iteration.
      • <condition> - NOT REQUIRED - If a condition child element is present, its parent action will be executed only when the javascript expression text inside the condition element evaluates to true.
      • <actions loop-on="parameter-name"> - NOT REQUIRED - Since a single level of looping is not very fun, actions nodes can be nested within actions nodes to any level desired - no matter how silly it may be to do so.
      • <action-definition> - REQUIRED (At least 1) - It defines one complete call to a component for execution of a task.
        • <action-inputs> - NOT REQUIRED - Collection of action-input parameters.
          • <input-name type="data-type" mapping="param"> - NOT REQUIRED - input-name is the name of a parameter that the Action Definition is expecting to be available at run time. The type attribute specifies the data type of this parameter. See 3 - Data Types for valid data types. The mapping attribute allows this input to be mapped to an Action Sequence input or a previous action-definition output with a different name.
        • <action-outputs> - NOT REQUIRED - Collection of action-output parameters.
          • <output-name type="data-type" > - NOT REQUIRED - output-nameis the name of a parameter that the Component will have set by the time it finishes executing. The type attribute specifies the data type of this parameter. See below for valid data types.
        • <component-name> - REQUIRED - The name of the java class that executes the action definition.
        • <action-type> - NOT REQUIRED The human readable friendly name for this action-definition
        • <component-definition> - REQUIRED - The component specific XML definition. See the documentation for the specific component for more information. This node may be empty but it must exist or a validation error will occur.

TODO

* Verify this is up to date

  • Add output destinations
  • Add resource types xml and string
  • come up with a better way to display this - table maybe?
  • Link to download the "real" xml schema
  • No labels