UCAIug open source library · builders for CIMTool
The UCAIug’s CIMTool community repository of publicly available XSLT builders
CIM Model Management

puml-json-l2r.xsl

This builder currently ships with CIMTool.

Builder Description

The puml-json-l2r.xsl builder produces a PlantUML class diagram representing the profile (for a JSON schema) that this builder is executed for. The diagram shows the document root, classes, compounds, enumerations and choices of the profile as they are represented in the JSON schema. The layout of the diagram is left-to-right (i.e. l2r).

Colors and other display options are taken from the PlantUML preferences in CIMTool and can be overridden for an individual diagram. For a top-to-bottom layout use the puml-json-t2b.xsl builder.

The following is an example of a PlantUML class diagram generated by CIMTool from the EndDeviceControlsTestProfileWithAnonymousTypes profile in the CIMTool-Test-Project (PlantUML source). Enumerations, CIMDatatypes, compounds and primitives are hidden in this diagram through its PlantUML preferences:

image

XSLT Version

This builder is XSLT 3.0 compliant.

Release History

CIMTool Release Release Date Changes
2.3.0 08-Jun-2026 Added to CIMTool.

Author

Todd Viegut [@tviegut] on behalf of UCAIug.

Submission Date

01-Jan-2025

Builder NTE Configuration

Given this builder ships with CIMTool the below screenshot highlights the existing NTE (Name/Type/Extension) settings for the builder. We strongly recommend that you do not import customized versions of this shipped builder over the original in your local CIMTool installation. Doing so will force regeneration of any existing builder-generated artifacts for projects in your workspace that have this builder enabled.

The recommended best practice is to rename the builder file (from puml-json-l2r.xsl to custom-puml-json-l2r.xsl for example) before importing. On import this will be interpreted as a new builder and you will be allowed to enter values in the Type and Extension fields.

NOTE: </br>CIMTool requires that file extensions be unique and will prevent you from entering an extension already assigned to a builder. This is because an artifact’s name is derived by concatenating the base name of the CIMTool .owl profile with the file extension assigned to the builder. Therefore, a unique file extension must be assigned to each builder when imported. The file extension for a builder can be modified later from within the “Maintain XSLT Transform Builders” screen.

image

License

This builder is released under the Apache 2.0 license and was developed under sponsorship of the UCAIug.