색슨 XSLT

Saxon XSLT

Saxon은 Michael Kay가 개발XSLTXQuery 프로세서이며 현재 그의 회사인 Saxonica가 개발 및 관리하고 있습니다.오픈 소스 및 클로즈드 소스 상용 버전이 있습니다.Java, JavaScript[1] 버전이 있습니다.네트워크

2022년 4월 현재 버전은 11.[2]3입니다.

버전

색슨의 원래 개발 라인은 버전 6 시리즈로 종료되었습니다.이것은 XSLT 1.0 프로세서 시리즈입니다.현재 버전인 6.5.5는 유지 보수 외에 추가 개발이 진행 중이 아닙니다.6 시리즈는 Java 프로그래밍 언어에서만 사용할 수 있습니다.

현재의 개발 라인인 Saxon 11은 XSLT 3.0 및 XQuery 3.1 사양을 구현하고 있습니다.Saxon은 XSLT 1.0 및 XSLT 2.0 스타일시트를 처리할 수도 있습니다(XSLT 2.0 및 3.0은 XSLT 1.0과 매우 호환성이 있습니다).

Java 소스와 Javascript 소스의 두 가지 소스 베이스가 있습니다.Java 소스는 SaxonJ(Java 및 기타 JVM 언어(Scala 등) 및 SaxonCS(C# 및 기타)의 3가지 플랫폼용 제품을 생성하기 위해 사용됩니다.VB 등의 NET 언어NET) 및 SaxonC(C, C++, Python 및 PHP용 API 포함)입니다.Javascript 소스 베이스는 웹 브라우저 및 Node.js에서 실행되는 SaxonJs를 생성하기 위해 사용됩니다.

Java 빌드 버전은 다음 세 가지 레벨이 있습니다.Home Edition은 오픈 소스 제품으로서 사양에 정의된 최소한의 표준 준수를 제공합니다.Professional Edition에는 표준에서 필요하지 않은 벤더 고유의 기능(예: 다양한 확장 기능 및 시리얼화 옵션)이 추가되어 있습니다.Enterprise Edition은 스키마 인식 및 스트리밍을 포함한 고급 기능(옵션으로 W3C 표준에서 정의)과 멀티 스레드 실행 및 바이트 코드 생성 등의 성능 관련 기능을 추가합니다.

SaxonCS 제품은 XSLT로 작성된 커스텀 Java-to-C# 트랜스필러에 의해 Java 소스 베이스에서 구축됩니다(https://markupuk.org/webhelp/index.html#ar04.html) 참조).2022년 4월 현재 이 플랫폼에서는 Enterprise Edition만 제공됩니다.

2004년부터 2009년까지 색슨 B와 색슨 SA의 두 가지 형태로 제공되었습니다.둘 다 비슷한 코드베이스를 기반으로 구축되었습니다.Saxon-B는 Mozilla Public License에 따라 출시된 오픈 소스 소프트웨어이며 Saxon-SA는 비공개 소스 상용 제품이었다.

Saxon-B와 Saxon-SA의 차이점은 B는 "기본적"이고 SA는 "계획적 인식"이라는 것이었다.이러한 용어는 XSLT 2.0 및 XQuery 1.0 사양의 용어를 참조합니다.「스키마 인식」프로세서는, W3C XML 스키마를 사용해 소스 XML 문서의 다양한 요소의 데이터 타입을 정의할 수 있습니다.이러한 데이터 유형은 XPath 2.0 및 XSLT 2.0 명령어로 사용할 수 있습니다."기본" XSLT 2.0 프로세서는 데이터 입력 정보를 사용할 수 없습니다.

Saxon은 XSLT 2.0, XPath 2.0 및 3.0 및 XQuery 1.0 및 3.0 W3C 권장사항에 엄밀하게 준거하고 XML Schema 1.0 및 1.1을 구현합니다.2021년 현재 버전(10.6)은 XSLT 3.0, XPath 3.1 및 XQuery 3.1에 대한 W3C 권장 사항에 준거하고 있습니다.

색슨 소스코드는 자바어로 작성되어 있습니다.2005-6년 동안 David Peterson과 다른 사람들은 Saxon이 에서 실행되도록 교차 컴파일될 수 있다는 것을 시연했습니다.IKVM을 사용하여 NET을 실행합니다.NET 크로스 컴파일러, 색슨 작전 개시NET은 원래 개발자로부터 독립된 개별 제품으로 제공됩니다.Saxonica는 Saxon 8.7의 출시와 함께 이 기술을 채택했으며, 그 출시 이후 모든 버전이 Java 및용으로 동시에 출시되었습니다.NET. 그.제품의 NET 버전에서는 Java 플랫폼 고유의 기능(JDOM, Domino4jXOM과의 통합 등)이 생략되어 대신의 XML 처리 기능과 통합된 기능을 제공합니다.NET 플랫폼

2012년 일련의 프로토타입에 이어 Saxonica는 브라우저 환경에서 실행되도록 조정된 제품 버전인 Saxon Client Edition(Saxon-CE)을 출시했습니다.이는 구글이 제작GWT 크로스 컴파일러를 사용하여 자바 소스 코드를 자바스크립트에 크로스 컴파일 할 수 있도록 수정함으로써 실현됩니다.Saxon-CE는 브라우저에서 실행되는 XSLT 2.0의 첫 번째 구현을 제공하며 HTML을 생성하는 것뿐만 아니라 사용자 상호 작용을 직접 처리할 수 있도록 언어를 확장합니다.2013년 2월에 Saxon-CE 1.1이 출시되면서 이 제품은 오픈 소스가 되었습니다.2016년 2월 Michael Kay는 색소니카가 순수 자바스크립트(Saxon-JS)[4]로 작성된 색소니카의 대체품을 개발하고 있다고 발표했다.

Saxon의 저자 Michael Kay는 XSLT 2.0 사양의 편집자이며 XSLT 3.0 드래프트의 편집자이기도 합니다.

특징들

다음 표에서는 Saxon의 현재 버전에서 사용할 수 있는 기능을 보여 줍니다.자바와NET 버전은 단일 코드베이스에서 구축되므로 동일한 기능을 공유합니다.접미사 *HE*, *PE*, *EE* 및 *CE*는 각각 Home, Professional, Enterprise 및 Client Edition을 나타냅니다.Saxon-HE 및 -CE는 오픈소스이며 -PE 및 -E 버전은 상용 라이선스로 제공됩니다.

보다 상세하고 최신 기능 매트릭스는 Saxonica 웹사이트에서 찾을 수 있습니다.

특징 색슨족
6.5.5
(자바만 해당)

색슨족
HE 9.5
(홈 에디션,
MPL-2.0)
색슨족
PE 9.5
(Professional Edition,
상용)
색슨족
EE 9.5
(엔터프라이즈 에디션,
상용)
색슨족
CE 1.1
(클라이언트 에디션,
JS 전용, MPL-2.0)
XSLT 1.0 지원 네. 하위 호환 동작을 통해 하위 호환 동작을 통해 하위 호환 동작을 통해 하위 호환 동작을 통해
XSLT 2.0 지원 -- 네. 네. 네. 네.
XSLT 3.0 지원 -- -- 네. 네. --
XPath 1.0 지원 네. XPath 1.0 호환성 모드 경유 XPath 1.0 호환성 모드 경유 XPath 1.0 호환성 모드 경유 XSLT에서만
XPath 2.0 지원 -- 네. 네. 네. XSLT에서만
XPath 3.0 지원 -- -- 네. 네. --
XQuery 1.0 지원 -- 네. 네. 네. --
XQuery 3.0 지원 -- -- 네. 네. --
XQueryX 지원 -- -- -- -- --
XQuery 업데이트 1.0 지원 -- -- 네. 네. --
XQuery/XPath 풀텍스트 지원 -- -- -- -- --
XML Schema 1.0 지원 -- -- -- 네. --
XML Schema 1.1 지원 -- -- -- 네. --
시리얼라이제이션 기능 네. 네. 네. 네. --
스태틱 타이핑 기능 지원 -- -- -- -- --
xml: ID 1.0 지원 -- 네. 네. 네. 네.
XML 스타일시트 처리 명령 지원 네. 네. 네. 네. XSLT 1.0 부트스트랩 스타일시트 경유
고급 확장 기능 -- -- 네. 네. --
고도의 최적화 기능 -- -- -- 네. --
스트리밍 -- -- -- 네. --
바이트 코드 생성 -- -- -- 네. --

「 」를 참조해 주세요.

레퍼런스

  1. ^ "Saxon Client Edition 1.0". Saxonica. Retrieved 14 August 2012.
  2. ^ Saxon XSLT 공식 웹사이트
  3. ^ 이 권장사항은 1999년 11월 16일에 발표된 [XSLT 1.0]의 성공을 기반으로 합니다.언어에는 많은 신기능이 추가되어 있습니다(J.2 신기능 참조).또, 고도의 하위 호환성을 유지하고 있습니다.XSL 변환(XSLT) 버전 2.0
  4. ^ "Introducing Saxon-JS".

외부 링크