Skip to main content


class HS.Util.XSLTTransformer extends %Library.RegisteredObject

XSLT utility that will cache and compile transforms. It can either be used standalone or as a super class to an ensemble business host.

Property Inventory

Method Inventory


parameter LogTransformEnabled = 0;
parameter SETTINGS = XSLTDirectory,XSLTCallbackHandlerClass,XSLTErrorHandlerClass,XSLTCacheMode;


property CallbackHandler as %XML.XSLT.CallbackHandler [ InitialExpression = $$$NULLOREF ];
Instance of the callback handler for isc:evaluate() functions
Property methods: CallbackHandlerGet(), CallbackHandlerGetSwizzled(), CallbackHandlerIsValid(), CallbackHandlerNewObject(), CallbackHandlerSet()
property DoHSTrace as %Boolean;
Controls sending HSTrace messages when extending Ensemble hosts. If not set by the caller, will look at the "TraceOperations" setting
Property methods: DoHSTraceDisplayToLogical(), DoHSTraceGet(), DoHSTraceIsValid(), DoHSTraceLogicalToDisplay(), DoHSTraceNormalize(), DoHSTraceSet()
property ErrorHandler as %XML.XSLT.ErrorHandler [ InitialExpression = $$$NULLOREF ];
Instance of the XSLT error handler
Property methods: ErrorHandlerGet(), ErrorHandlerGetSwizzled(), ErrorHandlerIsValid(), ErrorHandlerNewObject(), ErrorHandlerSet()
property UseXSLT2 as %Boolean [ InitialExpression = 0 ];
The boolean to indicate whether XSLT2.0 engine is used (1 = XSLT 2.0; 0 = XSLT 1.0)
Property methods: UseXSLT2DisplayToLogical(), UseXSLT2Get(), UseXSLT2IsValid(), UseXSLT2LogicalToDisplay(), UseXSLT2Normalize(), UseXSLT2Set()
property XSLTCacheMode as %String (DISPLAYLIST = ",Always,Timestamp,Never", VALUELIST = ",A,T,N") [ InitialExpression = "T" ];
How stylesheets should be cached
  • Always - The stylesheet is loaded and compiled once
  • Timestamp - The stylesheet is loaded if file modification time is after the load time
  • Never - The stylesheet is never cached (desirable during development) NOTE: Currently, timestamps are checked only for file transforms, not XData or URLs
    Property methods: XSLTCacheModeDisplayToLogical(), XSLTCacheModeGet(), XSLTCacheModeIsValid(), XSLTCacheModeLogicalToDisplay(), XSLTCacheModeLogicalToOdbc(), XSLTCacheModeNormalize(), XSLTCacheModeSet()
  • property XSLTCallbackHandlerClass as Ens.DataType.Class;
    XSLT transformer callback class name Defaults to HS.Util.XSLTHelper
    Property methods: XSLTCallbackHandlerClassDisplayToLogical(), XSLTCallbackHandlerClassGet(), XSLTCallbackHandlerClassIsValid(), XSLTCallbackHandlerClassLogicalToDisplay(), XSLTCallbackHandlerClassLogicalToOdbc(), XSLTCallbackHandlerClassNormalize(), XSLTCallbackHandlerClassSet()
    property XSLTDirectory as Ens.DataType.Directory;
    Location for file transforms (defaults to %install dir%/csp/xslt)
    Property methods: XSLTDirectoryDisplayToLogical(), XSLTDirectoryGet(), XSLTDirectoryIsValid(), XSLTDirectoryLogicalToDisplay(), XSLTDirectoryLogicalToOdbc(), XSLTDirectoryNormalize(), XSLTDirectorySet()
    property XSLTErrorHandlerClass as Ens.DataType.Class;
    XSLT error handler callback class name, if any
    Property methods: XSLTErrorHandlerClassDisplayToLogical(), XSLTErrorHandlerClassGet(), XSLTErrorHandlerClassIsValid(), XSLTErrorHandlerClassLogicalToDisplay(), XSLTErrorHandlerClassLogicalToOdbc(), XSLTErrorHandlerClassNormalize(), XSLTErrorHandlerClassSet()


    method CanonicalizeStream(pInput As %Stream.Object, Output pOutput As %Stream.Object) as %Status
    Canonicalize an XML stream
    classmethod GetXSLTDirectory() as %String
    method ImportObject(pInput, Output pObject As %XML.Adaptor, pClassname As %String = "", pXMLName As %String = "", pCanonicalize As %Boolean = 0) as %Status
    Import an object from a stream, optionally canocalizing the stream before import
    method Initialize() as %Status
    Setup default values
    method Transform(pInput="", pLocation As %String = "", ByRef pOutput, ByRef pParameters="", pDisableCache=0) as %Status
    Transform a string or stream
    method TransformFile(pInput="", pLocation As %String = "", pOutput As %String = "", ByRef pParameters="", pDisableCache=0) as %Status
    Transform a file
    method TransformFromObject(pInput As %XML.Adaptor, pLocation As %String = "", ByRef pOutput, ByRef pParameters="", ByRef pXMLName As %String, pAsStream As %Boolean = 1) as %Status
    Transform an object into a string or stream
    method TransformIntoObject(pInput, pLocation As %String = "", Output pOutput As %XML.Adaptor, ByRef pParameters="", pClassname As %String = "", pXMLName As %String = "", pCanonicalize As %Boolean = 0, pTempStream As %Stream.Object) as %Status
    Transform a string or stream into an object
    method TransformObjects(pInput As %XML.Adaptor, pLocation As %String = "", ByRef pOutput As %XML.Adaptor, ByRef pParameters="", pClassname As %String = "", pXMLName As %String = "", pCanonical As %Boolean = 0, pTempStream As %Stream.Object) as %Status
    Transform an object into another object
    classmethod debugParams(ByRef pParams="") as %Stream.GlobalCharacter
    Dump parameters out to a stream
    method getLastModified(pFilename As %String) as %Integer
    Return last modified time for file as an integer

    Inherited Members

    Inherited Methods


    FeedbackOpens in a new tab