참조: Saxon XSLT 프로세서 변경사항
다음 표에는 다양한 버전의 Saxon 및 XSLT에 대한 Workday의 지원이 요약되어 있습니다. 버전 27 이후로 Workday는 다음 형식의 새로운 명명 체계를 도입했습니다.
year.week
.Workday 버전 | 지원되는 Saxon 버전 | 지원되는 XSLT 버전 | 참고 |
|---|---|---|---|
<20 | 9.1 | 1.0, (2.0) | XSLT 버전 2.0에 대한 지원은 제한적입니다. |
20-2017.05 | 9.4 | 2.0, (3.0) | XSLT 버전 3.0에 대한 지원은 제한적입니다. |
2017.05- | 9.7 | 3.0 | XSLT 스트리밍을 지원합니다. |
버전 번호가 서로 다른 어셈블리가 포함된 컬렉션을 생성하면 Studio에서 경고 메시지를 표시합니다. 서로 다른 버전의 어셈블리에 필요한 Saxon 버전이 충돌할 수 있으며, 이로 인해 런타임 시 클래스 로드 오류가 발생할 수 있기 때문입니다. 모든 통합에 최신 어셈블리 버전을 사용하는 것이 가장 좋습니다.
다음에 유의하십시오.
- 메시지 부분 및 변수에 액세스하기 위해 MVEL에서 사용할 수 있는 XPath 메서드는 XPath 3.0을 지원합니다.
- 다음mctxURL 프로토콜을 사용하면 XSL 개발자가 메시지 부분 및 변수에 작성할 수 있습니다. 예를 들면 다음과 같습니다.<xsl:result-document href="mctx:vars/var1">...</xsl:result-document>
- XQuery에 대한 직접 조립 지원은 없지만 커스텀 단계를 추가하여 XQuery 스크립트를 호출할 수 있습니다.
- 2022.46 이하 버전의 조립품에서 Saxon은 다음과 같은 경우에만 기본 변환기로 설정됩니다.use.saxon.transformer속성이 으로 설정됨true조정 컨텍스트에서 확인할 수 있습니다. 버전이 2022.47 이상인 조립품에서 Saxon은 기본값으로 설정됩니다.true또는 이(가) 없는 경우.
XSLT 2.0 및 XSLT 3.0은 강력한 형식입니다. 예를 들어, 다음을 허용하지 않습니다.
xs:string
XPath 표현식에서 동일한지 평가됩니다. 다음 표현식에서, stringParam
이(가) XSL 매개변수이면 Saxon 런타임 오류가 발생합니다.
$stringParam = true()
XSL 컴파일러는 매개변수의 유형을 미리 예측할 수 없으므로 배포 시 문제가 발생하지 않습니다.
기존 XSL 문서 및 Workday Studio 통합은 XSL 문서의
버전
속성 값을 3.0
. 통합과 함께 배포하는 XSLT로 인해 이러한 런타임 오류가 발생하면 오류를 수정하는 액션을 수행해야 합니다.Saxon 업그레이드와 관련된 다음 오류가 업무 양식 인쇄용 레거시 XSL에서 발견되었습니다:
이 오류가 발생하면 XSL의 정렬 요소에 다음 특성 설정이 포함되어 있는지 확인하십시오.Failed to compile stylesheet.Xerrors detected. Invalid value for @case-order. Value must be one of (lower-first|upper-first).
이 옵션은case-order="#default"
case-order
특성은 정렬에서 대문자 또는 소문자를 먼저 나열할지 여부를 결정합니다. 기본값은 대문자를 먼저 나열하는 것입니다. Saxon 파서는 대소문자 순서에 다음 값만 허용합니다.
- upper-first
- lower-first
- 정렬 요소에서 기존 case-order 특성은 옵션 설정이므로 제거하십시오.
- 케이스 순서 값을 다음으로 명시적으로 설정합니다.upper-first.
- 케이스 순서 값을 다음으로 명시적으로 설정합니다.lower-first.