2010-08-12 5 views
11

라고 말하면 data.xml이라는 파일과(또는 format.xml?) 파일이 있는데, XML 데이터를 변환하고 CSS를 사용하여 형식을 지정하면 어떤 브라우저에서 표시 할 수 있습니까? 어떤 파일을 열어야합니까? 합니다 (.xsl 또는 .xml는?) XSLT로 변환 된 XML 데이터를 표시 할 수있는 브라우저는 무엇입니까?

사실 나는 XSLT 파일의 첫 번째 줄은 href="format.xsl" 인 것이 또 다른 예에서 본, 그래서 XSLT 파일이 이미 .xsl입니다 생각? 그렇다면 어떻게 다른 .xsl 파일로 연결됩니까? 2 ~ 3 개의 파일이 몇 개 있습니까?

답변

11

변형을위한 XSLT 스크립트와 함께 .xsl과 .xsl 파일의 두 파일이 있습니다. 2010 년 8 월 현재 모든 주요 브라우저는 클라이언트 측 XSLT 변환을 지원합니다. .xml 파일을 열면 관련 .xsl 파일이 사용됩니다. 일반적으로 스크립트는 즉시 표시되는 html 문서를 만듭니다. 변환도
는 XSLT 스크립트를 연결하려면 PHP 등을 사용하여 서버에 의해 수행 될 수 있으며, .XML 파일은 다음과 같은 라인이 필요 :

<?xml-stylesheet type="text/xsl" href="script.xsl" ?> 
8

많은 브라우저가 XML 스타일 시트 처리 명령어를 지원합니다. XML 파일에 포함되어 있고이 XML을 브라우저에서 열면 브라우저는 지정된 XSLT를로드하고 XML 파일을 입력으로 실행하며 원본 XML 문서 대신 XSLT의 출력을 표시합니다. 사양은 여기에서 확인할 수 있습니다. http://www.w3.org/TR/xml-stylesheet/

에는 처리 명령 사용 방법의 예가 있습니다.

<?xml-stylesheet href="example2.xsl" type="text/xsl" ?>

파이어 폭스 : 기본적으로 당신은 당신의 XSLT 파일의 경로 인 'example2.xsl'으로, XML 파일의 상단 (??를 < XML> 프롤로그 후)에이 줄을 추가해야합니다 IE는이 기능을 지원해야합니다. (아마도이 ​​기능은 자주 사용되지 않습니다.)

+0

은 현재 Safari 및 Chrome을 시험해 보았습니다. 로컬 파일 인 경우 Chrome에서 열지는 않았지만 둘 다 지원합니다. –

+1

XSL에서 XML을 XHTML로 변환하는 경우 XSL에 XHTML 네임 스페이스가 추가 된 경우 Chrome에서 로컬 파일을 열거 나 변환해야합니다. 필자는 로컬 XML 파일에서 FireFox에 대해 동일한 작업을 수행해야했습니다. 참조 : http://stackoverflow.com/questions/2981524/how-can-i-make-xslt-work-in-chrome –

1

파이어 폭스와 인터넷 익스플로러 (확실히 버전 6을 최대 가능성 이전 버전에서도) XML/XSL을 잘 구문 분석 할 수 있습니다. 실제로 Javascript에 클라이언트 측 파서를 작성할 수 있습니다. 두 브라우저 모두 잘 작동합니다.

호환성을 손상시킬 수있는 공급 업체별 제품 (예 : < msxsl : script >)을 사용하지 않으려는 경우가 좋습니다. 다른 구문 분석기 (예 : MSXML 모든 파서간에 동일하지 않은 node-set() 함수)도 마찬가지입니다.

XSL 파일 내에 다른 XSL 파일을 포함 할 수 있습니다. XSL 파일 이상 그렇게하면 다른 XSL 파일의 템플릿을 다시 사용할 수 있습니다.

1

:

는 여기에 몇 가지 차트입니다.

저에게 도움이되는 해결책은 명령 줄에서 xsltproc을 실행하여 HTML을 먼저 가져온 다음 브라우저에서 HTML을 여는 것입니다.명령은 다음과 같습니다.

xsltproc <XSL file> <XML file> > test.html 

이제 브라우저로 test.html을 엽니 다.

관련 문제