Indigo DRS Data Reporting System Indigo DRS
Report XSLT Indigo DRS Help

Report Data Sources can be XML as a Data Set or an XML document or CSV, JSon, XLSX or HTML and all are converted and loaded as XML for querying using XQuery or Python and transformation using XSLT.

Data Reporting features Extensible Stylesheet Language Transformations (XSLT) which is a language for transforming XML documents into other XML documents or other formats such as HTML for web pages or plain text.

Report Data Contexts and XSLT can be applied to Report Sections, Groups, Paragraphs and Tables and can be used to drive and build the Report output content if the Data Context nodes can be contextually enumerated.

To specify an XSLT to transform the Report Data Source or Report Data Context click the XSLT (...) property button.

The XSLT Editor allows complex transformations to be validated and executed against XML data.

Functions, tags and snippets can be inserted in the XSLT Editor and transforms tested before deployment.

Report Fields

XQuery or Python can be used to query Report Data and display it in the form of Report Fields.

To add Report Fields to a Report XSLT click the Fields (...) collection property button to open Report Fields Collection Editor.

Enter the details for the Report Field using the property grid. Clicking the Query (...) button will open the relevant Query Designer / Editor.

Data Field Formatting

There are many options for formatting Field Data. Select the best formatting option to display the Field Data according to your requirements.

Data can be formatted for Boolean, Time, Date, Number, Currency and Strings.

Regular Expressions and Inbuilt Functions can also be applied to Data Formats to manipulate and extract Data.

Data Formats can also be declared globally in the Report and used throughout the Report to apply common Data Formatting options. If a global Data Format is available it will be shown in the drop-down for Field Formatting under Format Name.

Report Expressions

Report XSLT can contain multiple Report Expressions. Report Expressions are mathematical equations and formulas that are evaluated by the Indigo DRS Expression Evaluation Engine (EEE).

The Expression Editor allows Report Expressions to be developed and evaluated.

Select the Report Expression to be inserted into the Report XSLT.

Both symbolical and numerical computations are supported allowing complex mathematical equations and formulas to be calculated. Scientific, engineering, finance and mathematical expressions can be evaluated and included in the Report.

Report Data Contexts

Report Data Contexts are used to drive and build Reporting output content and also allows the consolidation and integration of data from multiple different sources and types such as API's, websites and data files to be read and used in the Report.

The default Data Context is the Report Data Source (XDM) root node. Data Contexts can be applied to specific Report elements allowing data in XML documents to be contextually enumerated.

To apply a Data Context to a Report element expand the Data Context property or click the (...) property button and specify the Content Type as either a Literal (Constant) or a File. Context Types can be either XQuery, Python, XML, XLS, XLSX, CSV, JSon or HTML.

Report Namespaces

Report Namespaces are used for providing uniquely named elements and attributes and is a mechanism to avoid name conflicts by differentiating elements or attributes within an XML document that may have identical names, but different definitions. If the Report Data Source contains namespaces they can be applied to the XQuery Processor.

To add or edit Report Namespaces open the Report Namespaces Editor. Add a Report Namespace, Prefix and URI to reflect the namespaces in the XML data.

File URI's

Report File URI's are expressed as Uniform Resource Identifiers (URI) and can be either a Literal or a Query to specify the location of the File Resource. Literal values are constants that are determined by the URI File property.

Query based URI's are determined by the result of the URI Query which can be a series of XQuery or Python statements to specify the location of the File URI.