xsl 예제

다음은 간단한 „Hello XSLT“ 예제에 대한 전체 코드입니다. 실제 예제(두 파일의 소스 검토): 예제: 이 예제에서는 5명의 학생에 대한 정보가 포함된 XML 파일을 만들고 XSLT를 사용하여 XML 파일을 표시합니다. 변환 언어를 XSLT(XSL 변환)라고 합니다. XSLT를 사용하면 XML 문서를 다른 형식으로 변환할 수 있습니다. 예를 들어 XSLT를 사용하여 XML 파일의 일부(또는 전부)를 다른 콘텐츠가 포함된 HTML 문서로 동적으로 출력할 수 있습니다. 다음은 XSLT를 사용하여 변환된 XML 문서의 예입니다. 일반적으로 이 명령은 파일의 시작 부분(xsl:stylesheet 이후)에 삽입됩니다. 다음은 먼저 주요 HTML 방언(HTML4, XHTML, HTML5)을 다루는 몇 가지 예제를 제공합니다. 그런 다음 XML에서 다른 XML로 변환하는 예제를 추가합니다. 예제 1 이 예제에서는 CD 가격이 10보다 높을 때 „아티스트“ 열에 분홍색 배경색을 추가합니다: XSLT 스타일시트는 최종 출력을 만드는 데 사용되는 모든 템플릿을 포함하는 xsl:stylesheet 요소로 시작합니다. 그림 1의 예제에는 루트 노드와 일치하는 템플릿과 작성자 노드와 일치하는 템플릿이 두 개 있습니다.

루트 노드와 일치하는 템플릿은 문서의 제목을 출력한 다음 작성자 노드의 자식인 Author 노드와 일치하는 모든 템플릿(적용 템플릿을 통해)을 처리하도록 합니다. 이 예제에서는 루핑 구문입니다. xsl:for-each는 select 특성의 XPath 식과 일치하는 모든 항목을 소위 노드 집합으로 수집합니다. 그런 다음 이 노드 집합의 요소 다음에 요소를 처리합니다. 또한 정렬 문을 추가할 수 있습니다(코드와 같이 아래 참조). 도 1은 기본 XSLT 예제의 소스를 보여 주다. XML 문서(예.xml)에는 문서에 대한 정보가 포함되어 있습니다. ?xml 스타일 시트를 사용? 처리 명령어를 통해 Href 특성을 통해 XSLT 스타일시트(예.xsl)에 연결됩니다.

다음 예제에서는 값 추출의 사용을 보여 줍니다. 우리가 아래에 보여주는 것보다 몇 가지 다른 솔루션이 존재 … 위의 예에서 Students.xml이 만들어지고 해당 XSL 스타일 시트 규칙을 포함하는 Rule.xsl과 연결됩니다. 이 예제는 기본 예제보다 약간 더 복잡합니다. 제목은 장 요소 아래에 있으며 이들 각각에는 ID 태그가 없습니다. 즉, 장의 자식 요소이고 toc_id 특성이 있는 제목만 처리하는 템플릿을 작성해야 합니다. 이를 필터링하기 위한 Xpath 표현식은 XSLT 프로그래밍에 매우 중요합니다. 예를 들어, 고도로 집중된 XSLT 템플릿을 정의하거나 XML 파일의 정확한 정보를 정의할 수 있습니다. 기술적으로 XSLT 내에서 모든 일치 및 선택 특성은 XPath 식입니다. 더 쉬운 용어로 XPath를 사용하면 XML 요소 또는 „당신이 말하는 것“을 정확하게 정의 할 수 있습니다.

이전 XML 예제를 사용하여 XML 문서를 출력할 때 문서 맨 위에 제목과 텍스트를 추가하려고 하는 경우를 가정해 보겠습니다. 예 2 예제에서는 CD 가격이 10보다 높을 때 „아티스트“ 열에 분홍색 배경색을 추가하고 CD 가격이 9보다 높고 10보다 낮거나 같을 때 회색 배경색을 추가합니다. 이 첫 번째 예제에서는 브라우저에서 XSLT 변환을 설정하는 기본 을 보여 줍니다. 이 예제에서는 문서에 대한 정보(제목, 작성자 목록 및 본문 텍스트)가 포함된 XML 문서를 사람이 읽을 수 있는 형식으로 제공합니다. 다음 예제에서는 제목에 ID를 제공하지 않는 텍스트(예: 더 빈번한 상황)를 다룹니다. 각 제목에 대해 고유한 ID를 만들려면 보다 정교한 Xpath 표현식이 필요합니다. „POS_“ 문자열과 챕터의 위치를 사용하는 ID를 생성하기로 결정했습니다. (3) 등등 …. XSLT 프로세서는 항상 지정된 컨텍스트 내에서 작동한다는 것을 이해하는 것이 중요합니다. 이 예제에서는 프로세서가 „페이지“ 요소 내에 있으면 제목, 콘텐츠 및 주석을 자식 요소로 인식합니다.