diff options
Diffstat (limited to 'files/ko/xslt_in_gecko')
-rw-r--r-- | files/ko/xslt_in_gecko/basic_example/index.html | 49 | ||||
-rw-r--r-- | files/ko/xslt_in_gecko/browser_differences/index.html | 8 | ||||
-rw-r--r-- | files/ko/xslt_in_gecko/generating_html/index.html | 174 | ||||
-rw-r--r-- | files/ko/xslt_in_gecko/index.html | 14 | ||||
-rw-r--r-- | files/ko/xslt_in_gecko/introduction/index.html | 13 | ||||
-rw-r--r-- | files/ko/xslt_in_gecko/resources/index.html | 14 |
6 files changed, 272 insertions, 0 deletions
diff --git a/files/ko/xslt_in_gecko/basic_example/index.html b/files/ko/xslt_in_gecko/basic_example/index.html new file mode 100644 index 0000000000..cb96c52c55 --- /dev/null +++ b/files/ko/xslt_in_gecko/basic_example/index.html @@ -0,0 +1,49 @@ +--- +title: Basic Example +slug: XSLT_in_Gecko/Basic_Example +translation_of: Web/API/XSLTProcessor/Basic_Example +--- +<h2 id=".EA.B8.B0.EB.B3.B8_.EC.98.88"> 기본 예 </h2> +<p>이 첫 예는 브라우저에서 XSLT 변환 설정의 기본을 보여준다. 이 예는 Article에 대한 정보(Title, Author 목록과 Body 글)를 포함한 XML 문서를 얻어 그것을 사람이 읽을 수 있는 형식으로 나타낸다. +</p><p>그림1은 기본 XSLT예의 소스를 보여준다. XML문서(example.xml)은 글의 정보를 포함한다. ?xml-stylesheet? 처리명령을 써서, 그것의 href 속성을 통해 XSLT 스타일쉬트(example.xsl)에 연결한다. +</p><p>XSLT 스타일쉬트는 xsl:stylesheet 요소로 시작하는데, 이것은 최종 출력을 생성하는데 쓰이는 모든 템플리트를 포함한다. 그림1의 예는 템플리트 2개를 가진다 - 하나는 root 노드에 하나는 Author 노드에 대응한다. root 노드에 대응하는 템플리트는 글의 제목을 출력하고 Authors 노드의 자식노드인 Author 노드에 대응하는 모든 템플리트를 처리하기 위해 말한다. +</p><p>그림1 : 간단한 XSLT예 +</p><p>XML 문서 (example.xml) : +</p> +<pre> <?xml version="1.0"?> + <?xml-stylesheet type="text/xsl" href="example.xsl"?> + <Article> + <Title>My Article</Title> + <Authors> + <Author>Mr. Foo</Author> + <Author>Mr. Bar</Author> + </Authors> + <Body>This is my article text.</Body> + </Article> +</pre> +<p>XSL 스타일쉬트 (example.xsl) : +</p> +<pre> <?xml version="1.0"?> + <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + + <xsl:output method="text"/> + + <xsl:template match="/"> + Article - <xsl:value-of select="/Article/Title"/> + Authors: <xsl:apply-templates select="/Article/Authors/Author"/> + </xsl:template> + + <xsl:template match="Author"> + - <xsl:value-of select="." /> + </xsl:template> + + </xsl:stylesheet> +</pre> +<p>브라우저 출력: +</p> +<pre> Article - My Article + Authors: + - Mr. Foo + - Mr. Bar +</pre> +{{ languages( { "en": "en/XSLT_in_Gecko/Basic_Example" } ) }} diff --git a/files/ko/xslt_in_gecko/browser_differences/index.html b/files/ko/xslt_in_gecko/browser_differences/index.html new file mode 100644 index 0000000000..0d22a5b825 --- /dev/null +++ b/files/ko/xslt_in_gecko/browser_differences/index.html @@ -0,0 +1,8 @@ +--- +title: Browser Differences +slug: XSLT_in_Gecko/Browser_Differences +translation_of: Web/API/XSLTProcessor/Browser_Differences +--- +<h2 id=".EB.B8.8C.EB.9D.BC.EC.9A.B0.EC.A0.80_.EC.B0.A8.EC.9D.B4"> 브라우저 차이</h2> +<p>Netscape 7.x (모든 플랫폼)과 Internet Explorer 6(윈도즈)는 W3C XSLT 1.0 표준( <a class=" external" href="http://www.w3.org/TR/xslt">http://www.w3.org/TR/xslt</a> )을 지원합니다. IE 5.0과 5.5 (둘 다 윈도즈)는 XSLT의 초안만 지원하므로 XSLT 1.0 스타일쉬트와는 호환하지 않습니다. Netscape 6.x는 XSLT 1.0을 부분적으로만 지원합니다. +</p>{{ languages( { "en": "en/XSLT_in_Gecko/Browser_Differences" } ) }} diff --git a/files/ko/xslt_in_gecko/generating_html/index.html b/files/ko/xslt_in_gecko/generating_html/index.html new file mode 100644 index 0000000000..5bb284bdb8 --- /dev/null +++ b/files/ko/xslt_in_gecko/generating_html/index.html @@ -0,0 +1,174 @@ +--- +title: Generating HTML +slug: XSLT_in_Gecko/Generating_HTML +translation_of: Web/API/XSLTProcessor/Generating_HTML +--- +<h2 id="HTML_.EC.83.9D.EC.84.B1.ED.95.98.EA.B8.B0"> HTML 생성하기</h2> +<p>브라우저에서 XSLT의 공통 응용은 XML을 클라이언트의 안에 변환해 넣는 것이다. 두번째 예는 입력문서(example2.xml)를 변환하는데, 이것은 또 글의 정보를 포함하고 HTML문서 안에 들어간다. +</p><p>Article의 <code><span><body></span></code> 요소는 지금 HTML의 요소 (<code><span><b></span></code> 와 <code><span><u></span></code> 태그, 그림 2)를 포함한다. XML 문서는 HTML요소와 XML 요소 모두 포함하지만, 단 하나의 namespace 즉 XML 요소만 필요하다. HTML namespace가 없으므로, 그리고 XHTML namespace를 사용하여 XSL에서 an XML document를 생성하고 그것은 HTML문서와 같은 양상은 아닐 것이고, XSL Stylesheet 의<code>xsl:output</code>는 결과문서는 HTML처럼 다루어질 것을 보장한다 . XML 요소에 대해, 우리 자신의 namespace <code><a class=" external" href="http://devedge.netscape.com/2002/de">http://devedge.netscape.com/2002/de</a></code> 는 필요하고, 그것은 접두어 myNS <code>(xmlns:myNS="<span>http://devedge.netscape.com/2002/de</span>)</code>에 주어진다. +</p><p><small><b>그림 2 XML 파일 (example2.xml)</b></small> +<span>XML Document (example2.xml):</span> +</p> +<pre><?xml version="1.0"?> +<?xml-stylesheet type="text/xsl" href="example2.xsl"?> +<myNS:Article xmlns:myNS="http://devedge.netscape.com/2002/de"> +<myNS:Title>My Article</myNS:Title> +<myNS:Authors> +<myNS:Author company="Foopy Corp.">Mr. Foo</myNS:Author> +<myNS:Author>Mr. Bar</myNS:Author> +</myNS:Authors> +<myNS:Body> +The <b>rain</b> in <u>Spain</u> stays mainly in the plains. +</myNS:Body> +</myNS:Article> +</pre> +<p>The XSL Stylesheet used will need to have two namespaces - one for the XSLT elements and one for our own XML elements used in the XML document. The output of the XSL Stylesheet is set to <code>HTML</code> by using the <code>xsl:output</code> element. By setting the output to be HTML and not having a namespace on the resulting elements (colored in blue), those elements will be treated as HTML elements. +</p><p><small><b>그림 3 : 두 namespaces를 가진 XSL Stylesheet (example2.xsl)</b></small> +<span>XSL Stylesheet (example2.xsl):</span> +</p> +<pre><?xml version="1.0"?> +<xsl:stylesheet version="1.0" +xmlns:xsl="http://www.w3.org/1999/XSL/Transform" +xmlns:myNS="http://devedge.netscape.com/2002/de"> + +<xsl:output method="html"/> +... +</xsl:stylesheet version="1.0"> +</pre> +<p>A template matching the root node of the XML document is created and used to create the basic structure of the HTML page. +</p><p><small><b>Figure 4 : Creating the basic HTML document</b></small> +<span>XSL Stylesheet (example2.xsl):</span> +</p> +<pre>... +<xsl:template match="/"> +<html> + +<head> + +<title> +<xsl:value-of select="/myNS:Article/myNS:Title"/> +</title> + +<style type="text/css"> +.myBox {margin:10px 155px 0 50px; border: 1px dotted #639ACE; padding:0 5px 0 5px;} +</style> + +</head> + +<body> +<p class="myBox"> +<span class="title"> +<xsl:value-of select="/myNS:Article/myNS:Title"/> +</span> </br> + +Authors: <br /> +<xsl:apply-templates select="/myNS:Article/myNS:Authors/myNS:Author"/> +</p> + +<p class="myBox"> +<xsl:apply-templates select="//myNS:Body"/> +</p> + +</body> + +</html> +</xsl:template> +... +</pre> +<p>Three more <code>xsl:template</code>'s are needed to complete the example. The first <code>xsl:template</code> is used for the author nodes, while the second one processes the body node. The third template has a general matching rule which will match any node and any attribute. It is needed in order to preserve the html elements in the XML document, since it matches all of them and copies them out into the HTML document the transformation creates. +</p><p><b><small>그림 5 : 최종 3개 템플리트</small></b> +<span>XSL Stylesheet(example2.xsl):</span> +</p> +<pre>... +<xsl:template match="myNS:Author"> +-- <xsl:value-of select="." /> + +<xsl:if test="@company"> +:: <b> <xsl:value-of select="@company" /> </b> +</xsl:if> + +<br /> +</xsl:template> + +<xsl:template match="myNS:Body"> +<xsl:copy> +<xsl:apply-templates select="@*|node()"/> +</xsl:copy> +</xsl:template> + +<xsl:template match="@*|node()"> +<xsl:copy> +<xsl:apply-templates select="@*|node()"/> +</xsl:copy> +</xsl:template> +... +</pre> +<p>The final XSLT stylesheet looks as follows: +</p><p><small><b>그림 6 : 최종 XSLT Stylesheet<span>view example | view source</span></b></small> +<span>XSL Stylesheet:</span> +</p> +<pre><?xml version="1.0"?> +<xsl:stylesheet version="1.0" +xmlns:xsl="http://www.w3.org/1999/XSL/Transform" +xmlns:myNS="http://devedge.netscape.com/2002/de"> + +<xsl:output method="html" /> + +<xsl:template match="/"> +<html> + +<head> + +<title> +<xsl:value-of select="/myNS:Article/myNS:Title"/> +</title> + +<style type="text/css"> +.myBox {margin:10px 155px 0 50px; border: 1px dotted #639ACE; padding:0 5px 0 5px;} +</style> + +</head> + +<body> +<p class="myBox"> +<span class="title"> +<xsl:value-of select="/myNS:Article/myNS:Title"/> +</span> <br /> + +Authors: <br /> +<xsl:apply-templates select="/myNS:Article/myNS:Authors/myNS:Author"/> +</p> + +<p class="myBox"> +<xsl:apply-templates select="//myNS:Body"/> +</p> + +</body> + +</html> +</xsl:template> + +<xsl:template match="myNS:Author"> +-- <xsl:value-of select="." /> + +<xsl:if test="@company"> +:: <b> <xsl:value-of select="@company" /> </b> +</xsl:if> + +<br /> +</xsl:template> + +<xsl:template match="myNS:Body"> +<xsl:copy> +<xsl:apply-templates select="@*|node()"/> +</xsl:copy> +</xsl:template> + +<xsl:template match="@*|node()"> +<xsl:copy> +<xsl:apply-templates select="@*|node()"/> +</xsl:copy> +</xsl:template> +</xsl:stylesheet> +</pre> +{{ languages( { "en": "en/XSLT_in_Gecko/Generating_HTML" } ) }} diff --git a/files/ko/xslt_in_gecko/index.html b/files/ko/xslt_in_gecko/index.html new file mode 100644 index 0000000000..6f7fae0786 --- /dev/null +++ b/files/ko/xslt_in_gecko/index.html @@ -0,0 +1,14 @@ +--- +title: XSLT in Gecko +slug: XSLT_in_Gecko +tags: + - XSLT +translation_of: Web/API/XSLTProcessor +--- +<ol><li> <a href="ko/XSLT_in_Gecko/Introduction">개요</a> +</li><li> <a href="ko/XSLT_in_Gecko/Basic_Example">기본 예제</a> +</li><li> <a href="ko/XSLT_in_Gecko/Generating_HTML">HTML 생성</a> +</li><li> <a href="ko/XSLT_in_Gecko/Browser_Differences">브라우저 차이</a> +</li><li> <a href="ko/XSLT_in_Gecko/Resources">자원</a> +</li></ol> +{{ languages( { "en": "en/XSLT_in_Gecko" } ) }} diff --git a/files/ko/xslt_in_gecko/introduction/index.html b/files/ko/xslt_in_gecko/introduction/index.html new file mode 100644 index 0000000000..bfb103b98f --- /dev/null +++ b/files/ko/xslt_in_gecko/introduction/index.html @@ -0,0 +1,13 @@ +--- +title: Introduction +slug: XSLT_in_Gecko/Introduction +translation_of: Web/API/XSLTProcessor/Introduction +--- +<h2 id=".EA.B0.9C.EC.9A.94">개요</h2> +<p>W3표준 안에서 주목할만한 하나의 흐름은 스타일로부터 내용을 분리하려는 노력이다. +</p><p>이것은 같은 스타일이 여러 내용에서 재사용되는 것을 허용할 뿐 아니라 유지보수를 쉽게 하고 (하나의 파일만 바꾸어서) 내용의 외관을 빠르게 바꾸는 방법을 허용한다. +</p><p>CSS (Cascade Style Sheets)는 W3C에서 제안된 첫번째 방법이다. CSS는 스타일규칙을 웹문서에 적용하는 간단한 방법이다. 이 스타일규칙은 어떻게 문서(내용)가 놓일지 정의한다. 그러나, 여러 제한이 있다. 프로그램 구조와 복잡한 레이아웃 모델을 만드는 가능성의 부족. CSS는 요소의 위치 변화제공에 제한된다. +</p><p>XSL (Extensible Stylesheet Language)변환은 두 부분으로 구성된다. XML트리를 다른 마크업 트리로 변환하는 XSL요소, 트리를 위한 선택언어 XPath. +XSLT는 XML문서를 얻어서 XSL스타일쉬트안의 규칙에 기반한 새 문서를 생성한다. 이것은 XSLT가 원 XML문서로부터 요소를 추가, 제거, 재구성하는 것을 허용하고 따라서 결과문서구조의 좀더 세분된 제어를 허용한다. +</p><p>XSLT의 변환은 template로 구성된 규칙에 기반한다. 각 template은 입력 XML문서의 조각에 대응하고 대응하는 부분을 새 결과문서에 적용한다. +</p>{{ languages( { "en": "en/XSLT_in_Gecko/Introduction" } ) }} diff --git a/files/ko/xslt_in_gecko/resources/index.html b/files/ko/xslt_in_gecko/resources/index.html new file mode 100644 index 0000000000..bcdb54116f --- /dev/null +++ b/files/ko/xslt_in_gecko/resources/index.html @@ -0,0 +1,14 @@ +--- +title: Resources +slug: XSLT_in_Gecko/Resources +translation_of: Web/API/XSLTProcessor/Resources +--- +<h2 id=".EC.9E.90.EC.9B.90" name=".EC.9E.90.EC.9B.90">자원</h2> +<ul> + <li><a class="external" href="http://devedge.netscape.com/library/manuals/2001/xslt/1.0/">Transforming XML: Netscape and XSLT</a></li> + <li><a class="external" href="http://www-106.ibm.com/developerworks/library/x-xslt/">What kind of language is XSLT?</a> at <a class="external" href="http://www-106.ibm.com/developerworks/">IBM developerWorks</a></li> + <li><a class="external" href="http://www.zvon.org/xxl/XSLTutorial/Books/Book1/index.html">XSLT Tutorial</a> at <a class="external" href="http://www.zvon.org/">zvon.org</a></li> + <li><a class="external" href="http://www.zvon.org/xxl/XPathTutorial/General/examples.html">XPath Tutorial</a> at <a class="external" href="http://www.zvon.org/">zvon.org</a></li> + <li><a href="ko/Using_the_Mozilla_JavaScript_interface_to_XSL_Transformations">Using the Mozilla JavaScript interface to XSL Transformations</a></li> + <li><a class="external" href="http://www.mozilla.org/projects/xslt/">Mozilla.org's XSLT Project Page</a>, which includes a frequently encountered issues section.</li> +</ul> |