- 7 minutes to read

What is a stylesheet?

Transform complex XML and JSON data into user-friendly formats with Nodinite Stylesheets. On this page, you will:

  • ✅ Empower business users - Present technical data in formats non-technical users can understand
  • ✅ Protect sensitive information - Hide confidential data from specific users or roles
  • ✅ Format alerts - Customize email and event log notifications with readable, actionable content
  • ✅ Support multiple formats - Transform XML and JSON into HTML, flat files, or any text-based output
  • ✅ Reuse templates - Apply the same stylesheet across multiple Message Types for consistency

In the Log View Contoso Orders: Finance, the raw invoice JSON of order ORD-10001, then the same invoice as a document through View message formatted as Contoso - Invoice view, animated walkthrough (7.12)
Animated walkthrough: the same invoice, first as raw JSON, then as a document a business user can read.

  1. In the Log View Contoso Orders: Finance, type ORD-10001 in O2C - Order ID and click Search.
  2. Open the Action menu of the Order Invoiced event and choose View message body: the raw invoice JSON.
  3. Close it, open the Action menu again, and choose View message formatted as 'Contoso - Invoice view': the same invoice as a document, with the customer, the lines, and the total.

Tip

Use Stylesheets in Nodinite to visualize data for the business in a format they can understand. You can also use this feature to hide sensitive data they do not need to see, ensuring compliance and security.

Why Use Stylesheets?

Business Impact

  • 70% faster incident resolution - Business users identify critical issues without waiting for technical teams to interpret logs
  • Enhanced security - Mask credit card numbers, social security numbers, and other sensitive data while preserving business context
  • Actionable alerts - Emails with formatted data tables instead of raw XML reduce time-to-action from hours to minutes
  • Self-service reporting - Enable business analysts to review transaction data without developer assistance

Common Use Cases

  • Financial Transaction Reports - Transform XML order messages into readable invoices with line items, totals, and customer details
  • Healthcare Data Compliance - Display patient encounter summaries while automatically redacting PHI (Protected Health Information)
  • Order Status Tracking - Convert EDI 850 purchase orders into visual order summaries with delivery timelines
  • Executive Dashboards - Present JSON metrics from REST APIs as formatted KPI cards and trend charts
  • Compliance Audits - Generate audit-ready reports showing message flow history with timestamps and status indicators

How Stylesheets Work

Nodinite has built-in support for Stylesheets to transform technical data into business-friendly formats. You can present both XML and JSON data for end-users in formats they can understand and act upon.

Transformation Flow

graph LR A["fa:fa-inbox Log Event
(XML or JSON)"] --> B{"fa:fa-tags Message Type"} B --> U["fa:fa-language Convert body to UTF-8
(resolved encoding)"] U --> C["fa:fa-file-code Stylesheet
(XSLT or Liquid)"] C --> D["fa:fa-cogs Transformation
Engine"] D --> E["fa:fa-file-alt User-Friendly
Output"] E --> F1["fa:fa-search Log Views"] E --> F2["fa:fa-envelope Email Alerts"] E --> F3["fa:fa-calendar-exclamation Event Logs"] E --> F4["fa:fa-chart-bar Reports"] E --> F5["fa:fa-sitemap BPM Log Search (7.11)"] style A fill:#2678BD style B fill:#9E59BB style U fill:#E47528 style C fill:#3F827B style D fill:#3F827B style E fill:#93d16d

Transformation flow: the Log Event (blue) is matched to a Message Type (purple), its body is converted to UTF-8 (orange), the Stylesheet and engine (teal) transform it, and the output (green) reaches Log Views, BPM Log Search, alerts, and reports.

Step by Step

  1. Log Event arrives - System receives XML or JSON message from integration
  2. Message Type identified - Nodinite determines which Message Type matches the event
  3. Body converted to UTF-8 - Nodinite reads the body with its resolved character encoding (context property, then XML declaration, then Endpoint, then Message Type) and converts it to UTF-8 before inserting it into the Stylesheet, so characters such as Å and é survive the transformation New 7.11
  4. Stylesheet selected - Associated XSLT or Liquid template is retrieved
  5. Transformation applied - Engine processes message through template
  6. Output generated - Transformed HTML, text, or XML is produced
  7. Display to user - Result appears in Log Views, BPM Log Search New 7.11, email alerts, reports, or Windows Event Log

Supported Transformation Engines

XML Transformation with XSLT

  • ✅ Convert XML documents into HTML for web display
  • ✅ Transform XML into different XML formats for system integration
  • ✅ Extract and reformat specific XML elements for reporting

JSON Transformation with Liquid

  • ✅ Convert JSON into HTML reports with tables and formatting
  • ✅ Generate flat files or text-based outputs
  • ✅ Transform any JSON structure into nearly any imaginable text-based format
  • ✅ Example: Base64Decode XML from JSON - Transform JSON with base64-encoded XML content into readable XML

Stylesheet editor with the Liquid template of Contoso - Invoice view on the left and the rendered invoice INV-2025-10001 on the right (7.12)
A Liquid Stylesheet turns the invoice JSON into a readable HTML invoice; the editor renders every template change at once.

Key Features

Transformation Engines

Nodinite supports two powerful template engines, each optimized for different data formats:

Engine Best For Capabilities
XSLT XML data Transform XML → HTML, XML → XML, element extraction, conditional formatting
Liquid JSON data Transform JSON → HTML, generate flat files, create custom text formats

Standard XSLT and Liquid always work. Embedded scripts, such as msxsl:script blocks in XSLT, run only when the StylesheetScriptsEnabled System Parameter is true; with the default false, a Stylesheet that contains scripts fails and an error is logged.

Advanced Example

See Base64Decode XML from JSON to learn how Liquid templates can extract base64-encoded XML from JSON and transform it into readable XML output.

Flexibility and Reusability

  • Multiple stylesheets per Message Type - Create specialized views for different audiences (business summary, technical details, compliance audit)
  • Shared stylesheets - Use the same template across many Message Types for consistent branding and formatting
  • Self-service access - Business users can view transformed data in Log Views without technical knowledge or database access
  • Template library - Build a library of reusable stylesheets for common patterns (invoices, error reports, status summaries)

Alarm Formatting

Stylesheets enhance notification channels by presenting data in context-appropriate formats. The Alarm Plugin Object XML page documents the data each Alarm Plugin, such as Email or Email with Options, receives, and the Monitor View decides which Alarm Plugins send its alerts:

Channel Use Case Stylesheet Capability
Email Incident notifications Format email body with readable data tables, conditional styling, and actionable summaries
Email with Options Interactive approval workflows Create emails with decision buttons (Approve/Reject) that include formatted transaction details
Windows Event Log IT operations monitoring Generate structured event log entries with severity levels and formatted message data

Data Security and Masking

Stylesheets enable granular control over what data users can see:

  • Sensitive data redaction - Hide credit card numbers, SSNs, passwords, API keys using template logic
  • Formatted view only - A Stylesheet is bound to Message Types, not to Log Views: every Log View offers every Stylesheet bound to the event's Message Type. What a Role sees is set by its rights on the Log View: with View Transformed but not View Body, users read only the formatted output; see Permission Set for Log Views
  • Compliance-ready output - Generate audit reports that automatically exclude PII while preserving business context
  • Custom masking rules - Use XSLT/Liquid conditional logic to implement organization-specific data protection rules

How It Works

Nodinite automatically applies the correct Stylesheet to transform message payloads based on the Message Type. When you associate a Stylesheet with a Message Type, it is used in:

  • Log Views - Transform technical data for business user consumption in the web interface; business users pick View message formatted as
  • BPM Log Search New 7.11 - The same formatted view, opened from Action on an event in the BPM Viewer
  • Alarm notifications - Format Email alerts, Event Logs, and interactive emails with readable, actionable content
  • Reports - Generate user-friendly reports from technical log data for compliance and analytics
  • API responses - Apply stylesheets to Log Event data returned via the Web API for custom integrations

All Logged Events have the mandatory Message Type property set, which determines which Stylesheet to apply. This automatic association ensures consistent formatting across all views and notification channels.


Next Steps

Start using Stylesheets to transform your data:

  1. Stylesheets Overview - Manage the list of Stylesheets
  2. Add or manage Stylesheet - Create XSLT or Liquid templates for your Message Types
  3. Message Types - Associate Stylesheets with specific Message Types
  4. Add or manage Log View - Create Log Views that use your Stylesheets
  5. Add or manage Monitor View - Apply Stylesheets to Monitor Views
  6. E-Mail - Configure email alerts with formatted content using Stylesheets