0%

10

自动摘要: 1.XML:可扩展标记语言(eXtensibleMarkupLanguage) 2.XML:传输和存储数据,焦点是数据的内容,传输信息 HTML:显示数据,焦点是数据的外观,显示信息 3. ……..

  1. XML:可扩展标记语言(eXtensible Markup Language)
  2. XML:传输和存储数据,焦点是数据的内容,传输信息

HTML:显示数据,焦点是数据的外观,显示信息

  1. XML:标签没有被定义需要自定义标签

HTML:使用的标签都是预定义的

  1. XML是独立于软件和硬件的信息传输工具
  2. XML用途:
    1. 把数据从HTML中分离,数据存储在独立的XML中,并确保修改底层数据不需要对HTML进行任何改变
    2. 简化数据共享
    3. 简化数据传输
    4. 简化平台变更,XML数据以文本格式存储
    5. XML用于创建新的互联网语言:XHTML等
  3. XML树结构
    1. XML声明
    2. XML必须包含根元素,是所有其他元素的父元素
    3. 树结构

1
2
3
4
5
6
7
8
9
10
11
12
<bookstore>
<book category="COOKING">
<title lang="en">Harry Potter</title>
<author>JK.Rowing</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>

<!--实例中的根元素是 <bookstore>。文档中的所有 <book> 元素都被包含在 <bookstore> 中。

<book> 元素有 4 个子元素:<title>、<author>、<year>、<price>。-->
  1. XML语法规则

    1. 必须有根元素

    2. XML声明是可选的,如果存在需要放在文档的第一行

    3. 所有XML元素都必须有一个关闭标签

    4. XML标签对大小写敏感,必须使用相同的大小写来编写打开标签和关闭标签

    5. XML必须正确嵌套

    6. 属性值必须加引号

    7. 实体引用

      < < less than
      > > greater than
      & & ampersand
      &apos apostrophe
      &quot quotation mark
    8. 注释:

    9. 在XML中,空格会保留,XML以LF存储换行

  2. XML元素命名规则:

    • 名称可以包含字母、数字以及其他的字符
    • 名称不能以数字或者标点符号开始
    • 名称不能以字母xml(或者XML、Xml等等)开始
    • 名称不能包含空格
    • 没有使用任何名称,没有保留的自此
    • 最佳命名习惯
      • 使用下划线:
      • 名称简短简单:
      • 避免”-“,”.”,”:”字符
    • XML元素是可扩展的
    • XML的优势之一就是可以在不中断应用程序的情况下进行扩展
  3. XML属性

    1. 属性必须加引号

    2. XML元素vs.属性

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      <person sex="female">
      <firstname>Anna</firstname>
      <lastname>Smith</lastname>
      </person>

      <person>
      <sex>female</sex>
      <firstname>Anna</firstname>
      <lastname>Smith</lastname>
      </person>

      <!--在XML中尽量避免使用属性,如果信息感觉起来很像数据就使用元素-->
    3. 避免XML属性

      1. 属性不能包含多个值(元素可以)
      2. 属性不能包含树结构(元素可以)
      3. 属性不容易扩展(为未来的变化)
    4. 元数据(有关数据的数据)应当存储为属性,而数据本身应当存储为元素

  4. XML验证

  5. XML查看

  6. XML文件不会直接显示为HTML页面

  7. XML查看时显示的都是原始的XML文件

  8. XML文档不会携带有关如何显示数据的信息

  9. 使用CSS显示XML

  10. CSS

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    CATALOG
    {
    background-color: #ffffff;
    width: 100%;
    }
    CD
    {
    display: block;
    margin-bottom: 30pt;
    margin-left: 0;
    }
    TITLE
    {
    color: #FF0000;
    font-size: 20pt;
    }
    ARTIST
    {
    color: #0000FF;
    font-size: 20pt;
    }
    COUNTRY,PRICE,YEAR,COMPANY
    {
    display: block;
    color: #000000;
    margin-left: 20pt;
    }
  11. XML

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <?xml-stylesheet type="text/css" href="cd_catalog.css"?>

    <CATALOG>
    <CD>
    <TITLE>Empire Burlesque</TITLE>
    <ARTIST>Bob Dylan</ARTIST>
    <COUNTRY>USA</COUNTRY>
    <COMPANY>Columbia</COMPANY>
    <PRICE>10.90</PRICE>
    <YEAR>1985</YEAR>
    </CD>
    </CATALOG>
  12. 使用XSLT显示XML(一般情况下不用CSS)

  13. XMLHttpRequest对象

  14. 用于在后台与服务器交换数据

  15. 可以在不重新加载页面的情况下更新网页

  16. 在页面已加载后从服务器请求数据,接收数据

  17. 在后台向服务器发送数据

  18. 语法:xmlhttp = new XMLHttpRequest();

  19. XML DOM

  20. 在HTML中显示XML数据

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <CATALOG>
    <CD>
    <TITLE>Empire Burlesque</TITLE>
    <ARTIST>Bob Dylan</ARTIST>
    <COUNTRY>USA</COUNTRY>
    <COMPANY>Columbia</COMPANY>
    <PRICE>10.90</PRICE>
    <YEAR>1985</YEAR>
    </CD>
    <CD>
    <TITLE>Hide your heart</TITLE>
    <ARTIST>Bonnie Tyler</ARTIST>
    <COUNTRY>UK</COUNTRY>
    <COMPANY>CBS Records</COMPANY>
    <PRICE>9.90</PRICE>
    <YEAR>1988</YEAR>
    </CD>
    </CATALOG>
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    <html>
    <body>
    <script>
    if(window.XMLHttpRequest)
    {
    xmlhttp = new XMLHttpRequest();
    }
    else
    {
    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.open("GET","1.xml",false);
    xmlhttp.send();
    xmlDoc=xmlhttp.responseXML;

    document.write("<table border = '1'>");
    var x = xmlDoc.getElementsByTagName("CD");
    for(var i=0;i<x.length;i++){
    document.write("<tr><td>")
    document.write(x[i].getElementsByTagName("ARTIST")[0].childNodes[0].nodeValue);
    document.write("<td><td>")
    document.write(x[i].getElementsByTagName("TITLE")[0].childNodes[0].nodeValue)
    document.write("<td><tr>")
    }
    document.write("</table>")
    </script>
    </body>
    </html>
  21. XML命名空间

  22. XML命名空间提供避免元素命名冲突

  23. 使用前缀避免命名冲突

    1. <h:table>
    2. <f:table>
  24. XML命名空间-xmlns属性

    1. 在xml中使用前缀时,一个所谓的用于前缀的命名空间必须被定义
    2. 命名空间时在元素的开始标签的xmlns属性中定义的
    3. 语法:xmlns:前缀=”URI”
      1. 统一资源标识符(URI,全称Uniform Resource ldentifier)
    4. 命名空间可以在它们被使用的元素中或者在XML跟元素中声明
  • 本文作者: SindreYang
  • 本文链接: http://blog.mviai.com/2025/10._XML/
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!

欢迎关注我的其它发布渠道