>  기사  >  백엔드 개발  >  XML 파일 구조 및 기본 구문

XML 파일 구조 및 기본 구문

高洛峰
高洛峰원래의
2016-12-19 16:08:071619검색

XML文件结构和基本语法

分类: html java2010-03-12 17:04 903人阅读 评论(1) 收藏 举报

4.1.1               XML文件结构

一个XML文件通常包含文件头和文件体两大部分

1.         文件头

XML文件头由XML声明与DTD文件类型声明组成。其中DTD文件类型声明是可以缺少的,关于DTD声明将在后续的内容中介绍,而XML声明是必须要有的,以使文件符合XML的标准规格。

在前面的Flowers.xml文件中的第一行代码即为XML声明:

              其中:

”代表一条指令的结束;

“xml”代表此文件是XML文件;

“ version="1.0" ”代表此文件用的是XML1.0标准;

“ encoding="gb2312" ” 代表此文件所用的字符集,默认值为Unicode,如果该文件中要用到中文,就必须将此值设定为gb2312。

 

注意:XML声明必须出现在文档的第一行。

 

2.         文件体

文件体中包含的是XML文件的内容,XML元素是XML文件内容的基本单元。从语法讲,一个元素包含一个起始标记、一个结束标记以及标记之间的数据内容。

 

XML元素与HTML元素的格式基本相同,其格式如下:

<标记名称 属性名1="属性值1" 属性名1="属性值1" ……>内容

 

所有的数据内容都必须在某个标记的开始和结束标记内,而每个标记又必须包含在另一个标记的开始与结束标记内,形成嵌套式的分布,只有最外层的标记不必被其他的标记所包含。最外层的是根元素(Root),又称文件(Document)元素,所有的元素都包含在根元素内。

在前面的Flowers.xml文件中,根元素就是,根元素必须而且只能有一个,在该文件有三个子元素,这样的元素可以有多个。

4.1.2               XML的基本语法

1.         注释

XML的注释与HTML的注释相同,以“”结束。

 

2.         区分大小写

在HTML中是不区分大小写的,而XML区分大小写,包括标记,属性,指令等。

 

3.         标记

XML标记与HTML标记相同,“<”表示一个标记的开始,“>” 表示一个标记的结束。XML中只要有起始标记,就必须有结束标记,而且在使用嵌套结构时,标记之间不能交叉。

在XML中不含任何内容的标记叫做空标记,格式为:<标记名称/>

 

4.         属性

XML属性的使用与HTML属性基本相同,但需要注意的是属性值要加双引号。

 

5.         实体引用

实体引用是指分析文档时会被字符数据取代的元素,实体引用用于XML文档中的特殊字符,否则这些字符会被解释为元素的组成部分。例如,如果要显示“<”,需要使用实体引用“<”否则会被解释为一个标记的起始。

XML中有5个预定义的实体引用,如表 4.1所示。

表 4.1 XML预定义的实体引用

6. CDATA

在XML中由一个特殊的标记CDATA,在CDATA中所有文本都不会被XML处理器解释,直接显示在浏览器中,使用方法如下:

这里的内容可以直接显示。

]]>

 

7.         处理指令

处理指令使用来给处理XML文件的应用程序提供信息的,处理指令的格式如下:

              例如,XML声明就是一条处理指令:

그 중 "xml"은 처리 명령어 이름이고, version="1.0" 인코딩="gb2312"는 처리 명령어 정보입니다.

4.2 XML 및 CSS

CSS는 XML 파일의 표시 모드를 설정하는 데 사용할 수 있습니다. 즉, XML 파일의 헤드, XML 선언 아래에 다음 명령문을 추가할 수 있습니다.

       

다음은 예제를 사용하여 방법을 소개합니다. CSS를 사용하여 XML 문서를 표시합니다. 먼저 CSS 파일을 만듭니다. 코드는 다음과 같습니다.

flowers.css: XML 파일을 표시하는 CSS 스타일

flower{font-size:24px; :block}

vendor{font-size:36px;color:red}

price{display:block}

그럼 꽃 속에 .xml 파일 이 CSS 스타일을 사용하려면 flowers.xml 파일의 XML 선언 아래에 다음 문을 추가하세요.

전체 프로그램 코드는 다음과 같습니다.

ex4_3_01.xml: CSS를 사용하여 XML 파일 표시

<꽃> <

<꽃>

;가격> $4.00

                                          ; ~

 이 예제의 브라우저 표시 효과는 그림 4.2에 나와 있습니다.

그림 4.2 CSS를 사용하여 XML 파일 표시

CSS를 사용하여 XML 파일을 표시하는 경우 선택성이 없습니다. 즉, 루트 요소 아래의 모든 데이터 모든 파일 가 표시되며, 원본 파일의 구조와 내용 순서는 변경할 수 없습니다. 게다가 CSS는 XML용으로 특별히 개발된 스타일 언어가 아니기 때문에 중국어 태그를 지원하지 않습니다. 그러나 아래에서 소개할 XSL은 XML용으로 특별히 설계되었으며 CSS보다 복잡합니다.

4.3 더 이상 적합하지 않습니다. 특히 파일 내용을 다른 조건에 따라 재배열하고 표시해야 하는 상황에서는 XSL을 사용할 수 있습니다.

XSL은 현재 가장 강력하고 유연한 스타일 언어로, XML을 적용하기 위해 특별히 설계되었습니다. CSS보다 훨씬 더 복잡합니다. 그러나 현재는 제대로 지원되지 않으며 아직 완성되지 않았습니다.

XSL을 사용하여 XML 파일의 표시 모드를 설정합니다. 즉, XML 파일 헤더의 XML 선언 아래에 다음 명령문을 추가합니다.

                       /xsl" href=" URL of xsl file"?>

아래에서는 예제를 사용하여 XSL을 사용하여 XML 파일을 표시하는 방법을 소개합니다. 먼저 xsl 파일을 생성합니다. 코드는 다음과 같습니다.

flowers.xsl: XML 파일을 표시하는 데 사용되는 xsl 파일

🎜>

XSL 파일은 빈 HTML 파일과 같고 기존 HTML 파일은 XML 파일을 채워 생성된다는 점을 알 수 있습니다.

XSL은 실제로 특수 XML 파일이기 때문에 XSL 파일에는 먼저 XML 선언(즉, 첫 번째 줄)이 있어야 합니다. XSL의 루트 요소는 xsl:stylesheet입니다. 즉, XSL 문서는 태그로 시작하고 XSL 이름 도메인.

XSL의 루트 요소는 일반적으로 하나 이상의 템플릿 요소로 구성됩니다. 이 예에서는 태그 끝에 match 속성을 사용하여 XML 파일의 조건을 충족하는 노드를 선택할 수 있습니다. 즉, 최상위 템플릿의 경우 match는 전체 XML 파일의 루트 요소를 나타내는 "/"로 설정됩니다.

그런 다음 XML 파일에서 필요한 데이터를 가져옵니다. 데이터를 가져오는 가장 쉬운 방법은 다음과 같습니다.

여러 요소를 가져오려면 xsl:for-each 요소를 사용해야 하며 형식은 다음과 같습니다.

… ..

다음으로 이 xsl 파일을 사용하겠습니다. flowers.xml 파일에서, 즉 flowers.xml 파일의 XML 선언 아래에 다음 문을 추가합니다.

전체 프로그램 코드는 다음과 같습니다.

ex4_4_01.xml: XSL을 사용하여 XML 파일 표시

                                                                          t;$4.00

< ;꽃>

< /이름>

                                                              shop3

                                                                                                                           

XML 파일 구조 및 기본 구문과 관련된 더 많은 글은 PHP 중국어 홈페이지를 주목해주세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:XML 형식 이해다음 기사:XML 형식 이해

                                                                                                             >