• XML 技术


    1、XML 简介

    • xml,eXtensible Markup Language,可扩展标记语言。是一种标记语言
    • xml 是一种非常灵活的语言,没有固定的标签,所有标签都可以自定义。
    • 通常,xml 都被用于信息的记录和传递。因此,常常用来配置文件。

    2、XML 用途

    • XML 把数据从 HTML 分离

    • XML 简化数据共享

    • XML 简化数据传输

    • XML 简化平台的变更

    • XML 用于创建新的 Internet 语言

    3、XML 语法规则

    • 所有 XML 元素都必须有关闭标签
    • XML 标签对大小写敏感
    • XML 必须正确的嵌套
    • XML 文档必须有根元素
    • XML 的属性值必须加引号
    • XML 中,空格会被保留(多个合并为一个)

    实体引用(对特殊字符的代替)

    < - &lt; (less than)
    > - &gt; (greater than)
    & - &amp; (ampersand)
    ' - &apos; (apostrophe)
    " - &quot; (straight double quotation mark)

    4、 XML 约束

    DTD约束,Document Type Definition,文档类型定义

    XSD约束,XML Schema Definition,XML 结构定义( XML Schema 是基于 XML 的 DTD 替代者。

    graph RL 自定义xml文件1 -- 被dtd文件约束 --> dtd文件 自定义xml文件2 -- 被xsd文件约束 --> xsd文件1 xsd文件1 -- 被w3c的xsd文件约束 --> w3c的xsd文件 自定义xml文件2 -- 被xsd文件约束 --> xsd文件2 xsd文件2 -- 被w3c的xsd文件约束 --> w3c的xsd文件

    xml 可以引用多个 xsd约束,只能引用一个 dtd约束

    xsd约束 种类更多

    DTD 约束

    内部的 DOCTYPE 声明

    <!DOCTYPE 根元素 [元素声明]>
    

    示例代码:

    <?xml version="1.0"?>
    <!DOCTYPE note [
      <!ELEMENT note (to,from,heading,body)>
      <!ELEMENT to      (#PCDATA)>
      <!ELEMENT from    (#PCDATA)>
      <!ELEMENT heading (#PCDATA)>
      <!ELEMENT body    (#PCDATA)>
    ]>
    <note>
      <to>George</to>
      <from>John</from>
      <heading>Reminder</heading>
      <body>Don't forget the meeting!</body>
    </note>
    

    以上 DTD 解释如下:

    !DOCTYPE note (第二行)定义此文档是 note 类型的文档。

    !ELEMENT note (第三行)定义 note 元素有四个元素:"to、from、heading,、body"

    !ELEMENT to (第四行)定义 to 元素为 "#PCDATA" 类型

    !ELEMENT from (第五行)定义 from 元素为 "#PCDATA" 类型

    !ELEMENT heading (第六行)定义 heading 元素为 "#PCDATA" 类型

    !ELEMENT body (第七行)定义 body 元素为 "#PCDATA" 类型

    外部文档声明

    假如 DTD 位于 XML 源文件的外部,那么它应通过下面的语法被封装在一个 DOCTYPE 定义中:

    <!--本地-->
    <!DOCTYPE 根元素 SYSTEM "文件名">
    <!--网络-->
    <!DOCTYPE 根元素 PUBLIC "url文件名">
    

    这个 XML 文档和上面的 XML 文档相同,但是拥有一个外部的 DTD: (在 IE5 中打开,并选择“查看源代码”命令。)

    <?xml version="1.0"?>
    <!DOCTYPE note SYSTEM "note.dtd">
    <note>
    <to>George</to>
    <from>John</from>
    <heading>Reminder</heading>
    <body>Don't forget the meeting!</body>
    </note> 
    

    这是包含 DTD 的 "note.dtd" 文件:

    <!ELEMENT note (to,from,heading,body)>
    <!ELEMENT to (#PCDATA)>
    <!ELEMENT from (#PCDATA)>
    <!ELEMENT heading (#PCDATA)>
    <!ELEMENT body (#PCDATA)>
    

    XSD 约束

    maven 仓库 的 pom.xml 使用 XSD约束

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    

    http://maven.apache.org/xsd/maven-4.0.0.xsd

    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
               xmlns="http://maven.apache.org/POM/4.0.0" elementFormDefault="qualified"
               targetNamespace="http://maven.apache.org/POM/4.0.0">
    
    graph LR *.xsd中targetNamespace --"http://maven.apache.org/POM/4.0.0" --> *.xml中xmlns w3c中xsd -- 是xsd文件 http://www.w3.org/2001/XMLSchema--> *.xsd中的xmlns:xs w3c中xsd -- 是xml文件 http://www.w3.org/2001/XMLSchema-instance--> *.xsd中的xmlns:xsi xsi:schemaLocation --- xsd文件位置
  • 相关阅读:
    Fire
    Apple Tree
    访问艺术馆
    三角关系
    字母表
    折纸
    旅行
    单词分类

    圆桌游戏
  • 原文地址:https://www.cnblogs.com/sweetorangezzz/p/13371085.html
Copyright © 2020-2023  润新知