zoukankan      html  css  js  c++  java
  • Xml学习笔记(一)基础篇

    Preface:本文是W3Schools上《XML指南》基础篇的学习笔记。其中大部分内容是对指南的翻译总结。由于原文的例子更详尽生动,如果各位想阅读原文可以到这个网址http://www.w3schools.com/xml/default.asp。 同时,W3Schools提供了测试,大家可以测测自己对XML的理解程度。

    一、什么是XML?

    Extensible Markup Language 可扩展标记语言。它具有如下的优点和特征:
    • 和HTML一样是一种标记语言。
    • 但XML是设计用于承载数据而非像HTML那样是用于展示的。
    • 你可以定义自己的tag(标签)。
    • XML是自描述的。
    • XML是W3C标准。
    XML并不神秘,它的作用就是承载数据,这和纯文本(PlainText)文件是一样的。但正是由于它的其它特点:标记语言、自描述、可自定义标签和标准。使得它有超凡的地位。XML文件是以.xml为后缀的文件。一般用来保存使用XML语言编写的数据。

    二、XML应用

    由于以上介绍的XML特性,目前XML被应用于以下的方面。但至于具体如何应用。那可要下回分解了。
    • 将数据从HTML分离出来。这样就可以使展现(Display)和数据(Data)分离。文档更清晰和便于维护。只需使用数行的JavaScript,就可以将数据从XML添加到HTML中。
    • 作为数据共享、数据交互。纯文本格式(plain text format)使XML可以方便的存储及被各种应用读取。同时XML的可扩展性使其可以很好的承载数据随时作扩展。XML与平台无关(设备、操作系统、数据库)与应用无关,因此非常适合作数据交互。
    目前一些使用XML标准创建的新语言包括:
    • 作为HTML最新版的XHTML
    • 描述WebService的WSDL
    • 为手持设备设计的标记语言WAP和WML
    • 作为新闻种子的RSS 多媒体描述语言SMIL

    三、XML树和XML语法

          首先看一个XML文件:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <bookstore>
    <book category="COOKING">
      
    <title lang="en">Everyday Italian</title> 
      
    <author>Giada De Laurentiis</author> 
      
    <year>2005</year> 
      
    <price>30.00</price> 
    </book>
    <book category="CHILDREN">
      
    <title lang="en">Harry Potter</title> 
      
    <author>J K. Rowling</author> 
      
    <year>2005</year> 
      
    <price>29.99</price> 
    </book>
    <book category="WEB">
      
    <title lang="en">Learning XML</title> 
      
    <author>Erik T. Ray</author> 
      
    <year>2003</year> 
      
    <price>39.95</price> 
    </book>
    </bookstore>

          第一行是一句定义声明说明这是一个XML文件。每个XML文件以树结构进行组织。每个标记称为一个元素(Element)。而第一个元素又称为根(root),它是所有其它元素的祖先。每个元素都可以有多个子元素(Child)。
    针对以上的XML文件用下图来说明XML树的组织。

    关于XML文件的编写要遵循以下的语法规则:
    • 每个XML Element都要有一个闭合标记。(可以是自闭合的)
    • 大小写敏感。
    • Element要正确地嵌套。
    • 包含有一个根元素(root element)
    • 所有属性(Attribute)的值必须用双引号括住。
    • 注释是这样写的“<!-- 这是注释 --> ”(不包括双引号)。
    • 空格保留。

    四、XML元素(Element)和属性(Attribute)

    通过上一节已经对Element和Attribute有感性的认识了。首先深入了解一下Element:
    1. 什么是元素?XML元素是从开始标记到结束标记之间的所有东西。(包括标记本身)一个元素包括其它的元素,或者文本内容,或者属性。
    2. 元素命名规则 可以包含字母、数字和其它符号 不能以数字或标点符号开头 不能以xml或XML、Xml等等的单词开头 名称不能包含有空格。
    3. 元素是可扩展的 可以扩展元素以携带更多的信息。
    了解Element后,我们再用Attribute和Element比较,加深认识Attribute(属性):
    1. 属性通常用来提供非数据的信息。注意一定要用双引号括住属性的内容。如果内容包含有双引号那么应该用&quot来代替。&lt,&gt代替“<”和“>”。
    2. 元素和属性的使用 并没有规定什么数据应该放在属性中,什么数据放在元素中。但是以下是一些比较。 属性不能包含多值,但元素可以。 属性不能包含树结构,但元素可以。 属性很难被扩展。 ID一类的数据比较适合使用属性来保存。

    五、XML校验

          我们把遵循语法规则的XML称为“格式良好的XML”(WellFormantXML) 而能通过结构校验的XML称为“有效的XML”(ValidXML)。首先有效的XML肯定是格式良好的XML,同时要遵循XML结构定义规则。目前定义一个XML文件的结构规则的方法有两种:使用DTD文件或Schema。
    • DTD(DocumentTypeDefinition)是用于定义XML结构的文件,以dtd为后缀。 一般我们会在XML中声明这个外部的DTD。如:<!DOCTYPE note SYSTEM "Note.dtd"> 关于DTD的详细使用不在此文介绍。
    • XML Schema。XML Schema是另一种定义XML结构的方法。在后缀为xsd的文件中定义。
          可以使用XML校验器(Validator)对XML文件的作语法检查和有效性验证。 网上有很多的在线校验器可以使用。

    六、展示XML

          如果你熟悉CSS,那么可以使用CSS对每个标记编写样式。然后再XML文件中添加如下的声明<? xml-stylesheet type="text/css" href="cd_catolog.css" ?> 但是W3C的标准是使用XSLT。

          XSLT是标准的XML样式语言。保存在xsl为后缀的文件中。使用XSLT可以将XML转换成和HTML一样的可以展示的文档。同样是在XML中增加如下声明 <? xml-stylesheet type="text/xsl" href="simple.xsl" ?>

    本文为个人原创,转载请注明出自:http://jackma.cnblogs.com/ 
    Author:JackMa

  • 相关阅读:
    项目管理5大过程组,42个过程一句话讲解
    在命令中输入信息创建maven项目
    《Maven应用实战》一书的在线学习网址和源码链接
    [转]使用Eclipse创建一个简单的servlet项目
    使用Maven客户端从Maven中心仓库下载到本地的jar包的默认存储位置及远程仓库
    ant利用ivy从maven仓库下载项目所依赖的jar包默认的存储位置
    Ant和Ivy集成部署和使用
    Ant入门简单实例
    TIBCO Jaspersoft Studio-6.12.2连接mysql时显示时区问题
    JAVA Swing日期选择控件datepicker的使用
  • 原文地址:https://www.cnblogs.com/JackMa/p/1062668.html
Copyright © 2011-2022 走看看