Passa al contenuto principale
Administrator Guide
Ultimo aggiornamento: 2023-06-23
Riferimenti: Modifiche al processore Saxon XSLT

Riferimenti: Modifiche al processore Saxon XSLT

La tabella seguente riepiloga il supporto di Workday per varie versioni di Saxon e XSLT. Si noti che dopo la versione 27, il sistema ha introdotto un nuovo schema di denominazione nel modulo
year.week
.
Versione Workday
Versione Saxon supportata
Versione XSLT supportata
Note
<20
9.1
1.0, (2.0)
Supporto limitato per XSLT versione 2.0.
20-2017.05
9.4
2.0, (3.0)
Supporto limitato per XSLT versione 3.0.
2017.05-
9.7
3,0
Supporto per streaming XSLT.
Studio visualizza un messaggio di avviso se si crea una raccolta contenente assembly con numeri di versione diversi. Ciò è dovuto al fatto che gli assembly con versioni diverse possono richiedere versioni di Saxon in conflitto, causando errori di caricamento delle classi in fase di esecuzione. La best practice consiste nell'utilizzare le versioni più recenti dell'assembly per tutte le integrazioni.
Si noti quanto segue:
  • I metodi XPath disponibili in MVEL per l'accesso alle parti e alle variabili dei messaggi supportano XPath 3.0.
  • Il
    mctx
    Il protocollo URL consente agli sviluppatori XSL di scrivere parti e variabili del messaggio, ad esempio:
    <xsl:result-document href="mctx:vars/var1">...</xsl:result-document>
  • Sebbene non sia disponibile il supporto dell'assembly diretto per XQuery, è possibile aggiungere step personalizzati per richiamare gli script XQuery.
  • Negli assembly con versione 2022.46 o precedente, Saxon è impostato come trasformatore predefinito solo quando il
    use.saxon.transformer
    La proprietà è impostata su
    true
    nel contesto della mediazione Negli assiemi con versione 2022.47 o successiva, Saxon è impostato come valore predefinito se la proprietà è impostata su
    true
    o se non è presente.
XSLT 2.0 e XSLT 3.0 sono fortemente tipizzati. Ad esempio, non sono consentiti
xs:string
da valutare per l'uguaglianza nelle espressioni XPath. L'espressione seguente, in cui
stringParam
è un parametro XSL, genera un errore di runtime sassone:
$stringParam = true()
Il compilatore XSL non riscontrerà il problema al momento della distribuzione, perché non è in grado di prevedere in anticipo il tipo di parametro.
I documenti XSL esistenti e le integrazioni di Workday Studio non saranno interessati da questo grave problema di tipizzazione, a meno che non si scelga di abilitare XSLT 3.0 modificando il valore dell'attributo
della versione
nei documenti XSL in
3.0
. Se si verificano questi errori di runtime, che derivano dall'XSLT distribuito con l'integrazione, è necessario intervenire per correggerli.
Nell'XSL legacy per la stampa dei moduli aziendali è stato rilevato il seguente errore relativo all'aggiornamento sassone:
Failed to compile stylesheet.
X
errors detected. Invalid value for @case-order. Value must be one of (lower-first|upper-first).
Se si verifica questo errore, verificare se l'XSL contiene la seguente impostazione di attributo in un elemento di ordinamento:
case-order="#default"
Facoltativo
case-order
determina se l'ordinamento elenca per prime le lettere maiuscole o minuscole nell'ordinamento. L'impostazione predefinita è elencare prima le lettere maiuscole. Il parser Saxon accetta solo i seguenti valori per l'ordine dei ticket:
  • upper-first
  • lower-first
Per correggere l'errore, effettuare una delle seguenti operazioni:
  • Rimuovere l'attributo ticket esistente dall'elemento di ordinamento, perché è un'impostazione facoltativa.
  • Impostare il valore dell'ordine ticket in modo esplicito su
    upper-first
    .
  • Impostare il valore dell'ordine ticket in modo esplicito su
    lower-first
    .