XML 기술 매뉴얼login
XML 기술 매뉴얼
작가:php.cn  업데이트 시간:2022-04-14 15:57:53

XML 네임스페이스



XML 네임스페이스는 요소 이름 지정 충돌을 방지하는 방법을 제공합니다.


이름 지정 충돌

XML에서 요소 이름은 개발자가 정의합니다. 두 개의 서로 다른 문서가 동일한 요소 이름을 사용할 때 이름 지정 충돌이 발생합니다.

이 XML은 HTML 테이블의 정보를 전달합니다:

<table>
​ <tr>
​​ <td>사과</td>
​​ <td>바나나</td>
​ </tr>
</table>

이 XML 문서는 테이블(가구)에 대한 정보를 전달합니다.

<table>
아프리카 커피 테이블
​ <폭>80
​ <length>120</length>
</table>

이 두 XML 문서를 함께 사용하는 경우 두 문서 모두 < 다른 내용과 정의를 가진 ;table> 요소를 포함하므로 이름 충돌이 발생합니다.

XML 파서는 이러한 유형의 충돌을 처리하는 방법을 결정할 수 없습니다.


접두사를 사용하여 이름 지정 충돌 방지

XML의 이름 지정 충돌은 이름 접두사를 사용하여 쉽게 피할 수 있습니다.

이 XML은 HTML 테이블과 가구에 대한 정보를 전달합니다.

<h:table>
​ <h:tr>
​​ <h:td>사과</h:td>
​​ <h:td>바나나</h:td>
​ </h:tr>
</h:테이블>

<f:테이블>
<f:name>아프리카 커피 테이블</f:name>
<f:너비>80</f:너비>
<f:길이>120</f:길이>
</f:테이블>

위의 예에서는 두 개의 <table> 요소가 서로 다른 이름을 가지므로 충돌이 발생하지 않습니다.


XML 네임스페이스 - xmlns 속성

XML에서 접두사를 사용할 경우 접두사에 대한 소위 네임스페이스를 정의해야 합니다.

네임스페이스는 요소 여는 태그의 xmlns 속성 에 정의됩니다.

네임스페이스 선언 구문은 다음과 같습니다. xmlns:접두사="URI".

<루트>

<h:테이블 xmlns:h="http://www.w3.org/TR/html4/">
<h:tr>
<h:td>사과</h:td>
<h:td>바나나</h:td>
</h:tr>
</h:테이블>

<f:테이블 xmlns:f="http://www.w3cschool.cc/furniture">
<f:name>아프리카 커피 테이블</f:name>
<f:너비>80</f:너비>
<f:길이>120</f:길이>
</f:테이블>

</root>

위 예에서 <table> 태그의 xmlns 속성은 h: 및 f: 접두사에 대한 정규화된 네임스페이스를 정의합니다.

요소의 여는 태그에 네임스페이스가 정의되면 접두사가 동일한 모든 하위 요소는 동일한 네임스페이스와 연결됩니다.

네임스페이스는 사용되는 요소 또는 XML 루트 요소에서 선언할 수 있습니다.

<root xmlns:h="http://www .w3.org/TR/html4/"
xmlns:f="http://www.w3cschool.cc/furniture"
>

<h:테이블>
<h:tr>
<h:td>사과</h:td>
<h:td>바나나</h:td>
</h:tr>
</h:테이블>

<f:테이블>
<f:name>아프리카 커피 테이블</f:name>
<f:너비>80</f:너비>
<f:길이>120</f:길이>
</f:테이블>

참고: 네임스페이스 URI는 파서가 정보를 찾는 데 사용되지 않습니다.

네임스페이스에 고유한 이름을 부여하는 것이 목적입니다. 그러나 많은 회사에서는 네임스페이스에 대한 정보가 포함된 실제 기존 웹 페이지에 대한 포인터로 네임스페이스를 사용하는 경우가 많습니다.

http://www.w3.org/TR/html4/를 방문하세요.


Uniform Resource Identifier(URI, 전체 이름:Uniform Resource Identifier) ​​​​

Uniform Resource Identifier(URI)는 식별할 수 있는 문자열입니다. 인터넷 자원.

가장 일반적으로 사용되는 URI는 인터넷 도메인 주소를 식별하는 데 사용되는 Uniform Resource Locator(URL)입니다. 덜 일반적으로 사용되는 또 다른 URI는 Uniform Resource Name(URN)입니다.

이 예에서는 URL만 사용합니다.


기본 네임스페이스

요소에 대한 기본 네임스페이스를 정의하면 모든 하위 요소에 접두사를 사용하는 작업이 줄어듭니다. 구문은 다음과 같습니다.

xmlns="namespaceURI"

이 XML은 HTML 테이블의 정보를 전달합니다.

<table xmlns="http://www.w3.org/TR/html4/">
​ <tr>
​​ <td>사과</td>
​​ <td>바나나</td>
​ </tr>
</table>

이 XML은 가구에 대한 정보를 전달합니다.

<table xmlns="http://www.w3schools.com/furniture ">
아프리카 커피 테이블
​ <폭>80
​ <길이>120


사용 중인 네임스페이스

XSLT는 XML 문서를 HTML과 같은 다른 형식으로 변환하는 데 사용되는 XML 언어입니다.

아래 XSLT 문서를 보면 대부분의 태그가 HTML 태그인 것을 확인할 수 있습니다.

HTML이 아닌 태그에는 xsl이라는 접두사가 붙고 다음 네임스페이스로 식별됩니다. xmlns:xsl="http://www.w3.org/1999/XSL/Transform":

<?xml version="1.0" 인코딩="ISO-8859-1"?>

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:템플릿 일치="/">
<html>
<본문>
<h2>내 CD 컬렉션</h2>
<테이블 테두리="1">
<tr>
                                                    <th align="left">제목</th>
> </tr>
<xsl:for-each select="카탈로그/cd">
<tr>
<td><xsl:value-of select="title"/></td>
<td><xsl:value-of select="artist"/></td>
</tr>
</xsl:개별>
</테이블>
</본문>

</xsl:템플릿>

</xsl:stylesheet>
XSLT에 대해 알아보려면 당사 홈페이지에서 XSLT 튜토리얼을 찾아보세요.