zoukankan      html  css  js  c++  java
  • XML语法笔记

    XML(可扩展标记语言)

    XML的特点:

    XML是一种标记语言,适合跨平台、跨语种信息交互
    XML被用于存储、传输数据
    XML可扩展性良好,没有预定义标签,需要用户自定义标签
    XML具有自我描述性
    XML采用树状结构存储,是一种信息的对象化语言
    XML是纯文本的

    XML常用场景:

    数据交换
    数据库支持
    配置文件


    XML语法:

    示例:
    <?xml version="1.0" encoding="utf-8">
    <!-- 学生信息 -->
    <student>
    <name>Halen</name>
    <hometown>unknown</hometown>
    <age>ninteen</age>
    </student>

    语法规则:

    XML文档第一行必须以文档的声明语句开头:
     <?xml version="1.0" encoding="utf-8">
     version表示XML版本信息
     encoding表示文档采用的编码格式

    XML注释:

    写法:<!-- 注释内容 -->

    XML元素:

    <name>Halen</name> 
    元素定义:<开始标记 属性1="属性值"...>数据内容</结束标记>
    XML元素内可以嵌套其他元素,但嵌套元素的标记不能重叠
        <student><name></student></name> (错误)
    XML文档至少有一个元素,有且只有一个根元素

    元素名规则:

    不能以数字或标点符号开头且不能含空格,对大小写敏感
    名称不能以xml(XML、XmL...)开头
     

    空元素写法:

    <name></name>
    <name/>  (常用)

    XML属性:

    <student id="001" name="halen">unknown</student>
    XML元素属性定义:<开始标记 属性1="属性值"...>数据内容</结束标记>
    属性名规则与元素名规则一致
    XML属性值必须加引号,如果属性值内容出现单引号,则用双引号括起来,反之亦然

    使用属性的缺点:

    属性不易扩展
    属性不能描述结构(树状结构)
    属性很难被程序代码处理
    属性很难通过DTD进行测试
    属性难以阅读、维护

    注意:

    <student>
      <name>Halen</name>
      <age>five</age>
    </student>
    
    <student name="Halen" age="five"></student>
    元数据(有关数据的数据)应当存储为属性,而数据本身应当存储为元素

    实体引用:

    在XML中有些符号具有特殊含义,如:< 若果将这些符号放在XML元素中会出现错误
    为了避免此错误,可以采用实体引用

    XML中的预定义实体引用:

    &lt;   < 小于
    &gt;   > 大于
    &amp;  & 和号
    &apos; ' 单引号
    &quot; " 引号
    示例:<name>HK'KK</name>  -->  <name>HK&apos;KK</name>

    CDATA区段:

    包含在CDATA区段中的内容能够当做纯文本数据进行处理,解析器不会解析CDATA区段
    中的任何符号和标记
    定义格式:
    <![CDATA[数据内容]]>
    注意:CDATA区段要放在元素中使用,且不能嵌套
     
    补充:
    XML编辑器:文本编辑器或专门的XML阅读编辑工具
    XML解析器:根据XML语法规则,检查XML文档的规范性及有效性
  • 相关阅读:
    Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示
    总结软连接和硬连接区别,并用实例操作说明
    描述文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息?
    Git Shell push_code 脚本
    YDD的铁皮锅——C/C++内存概念
    Linux Shell 常见用法及问题
    MFC 设置鼠标样式(SetSystemCursor函数问题)
    Qt QTableView自定义列表(插入图片)
    Github libinjection库研究总结
    Windows/Linux:VMware虚拟机用内网IP通讯
  • 原文地址:https://www.cnblogs.com/lnlin/p/9564252.html
Copyright © 2011-2022 走看看