• 【XML编程与WEB服务】XML入门


    XML -入门

    XML(Extensible Markup Language):可扩展的标记语言

    作用:提供了一套跨平台、跨网络、跨程序语言的数据描述方式

    目的:描述与表达数据,使数据 在不同设备、程序之间实现数据互通

    【扩展】发展史:

    1969:GML 通用标记语言

    1985:SGML 标准通用标记语言

    1993:HTML 超文本标记语言

    1998:XML 可扩展标记语言

    1999:XML -> XHTML 可扩展超文本标记语言

    ……

    XML -> SVG:可缩放矢量图形语言

    XML -> SMIL:同步多媒体综合语言

    XML -> HDML:手持设备标记语言

    XML -> OEB:开放电子结构规范

    ……

    分类:

    • 格式不良好的XML文档
    • 格式良好的XML文档
      • 有效XML文档

    符合XML语法规范(符合规则定义)的是良好的XML文档,符合DTD等约束文件约束的是有效XML文档

    XML文档组成

    • XML声明

      "1.0|1.1"[ encoding="编码方式"] [standalone=”yes|no”]?>

      [属性说明]

      • version: 必需包含该属性,指明以下文档遵循哪个版本的XML规范。该属性必须放在其它属性之前,属性的合法值为1.0或1.1。

      • encoding:该属性可以被省略,指明文档中要采用的字符编码方式。当省略该属性时,属性的默认值为utf-8。

      • standalone:该属性可以被省略,指定该XML文档是否和一个外部文档配套使用。该属性为yes是说明当前XML文档是一个独立的XML文档,与外部文件无关联。否则相反。当省略该属性时,属性的默认值为yes。

      "1.0" encoding="utf-8"?>

      version必须填写,``encoding`可以不填写

    • 文档类型声明

    • 元素

    • 注释

      • 注释不能出现在XML文档声明之前,注释内容不能出现“--”

    • 处理指令

      • 处理指令(Processing Instructions,简称PIs)允许文档中包含由应用程序来处理的指令。在XML文档中,有可能会包含一些非XML格式的数据,XML处理器无法处理这些数据,我们就可以通过处理指令来通知其它应用程序来处理这些数据。

        处理指令(PI)的语法和XML声明类似,以“<?”开始并以“?>”结束。常见的使用样式表单的处理指令如下所示。

    XML文档规则

    1.【强制】必须有XML声明语句

    2.【重要】XML标记大小写敏感

    标记名字应该具有描述性,单词与单词之间可以使用下划线连接,但名称应该尽可能简洁;

    在标记名称中间尽量避免使用“-”、“.”、“:”容易造成歧义;

    非英语的字母比如éòá也是合法的XML元素名,但要避免使用,因为某些软件不支持这些特殊字符。

    3.【强制】属性值必须使用引号""''

    4.【强制】XML标记必须有对应的结束标记(例如:str),如果是空标记,也必须关闭(例如)

    5.【重要】所有XML元素必须合理包含

    6.所有标记以外的空白都会被保留(空白包括空格、制表符、空行)

    7.【强制】特殊字符必须用相应的符号来代替

    8.【强制】一个XML文档有且仅有一对根标签

    XML元素

    • 空元素
    • 非空元素

    特殊字符数据引用

    字符字符引用(十进制)字符引用(十六进制)预定义实体引用
    <<<<
    >>>>
    """"
    ''''
    &&&
    CDATA段

    格式:,里面的“字符串”是纯字符,但是不能包含]>

    空白处理

    在XML文档中,可以在元素中使用一个特殊的属性xml:space,来通知应用程序保留此元素中的空白。xml:space 属性接受两个值。

    ▪default :此值允许应用程序根据需要处理空白。 如果不包含 xml:space 属性,结果与使用 default 值相同。

    ▪preserve :此值表示应用程序按原样保留空白,空白可能有含义。

  • 相关阅读:
    代码随想录算法训练营第三十一天丨 贪心算法part02
    【音视频—基础】分辨率、码率和帧率
    【无标题】
    期末前端web大作业——名侦探柯南网页制作 Hbuiderx制作网页 静态HTML网页单页制作 dreamweaver网页设计与制作代码 web前端期末大作业
    亚马逊EC2服务器搭建Linux系统宝塔环境
    云服务器的快照功能是什么?
    laravel-admin 头部添加操作
    在C#中使用NModbus4通信库执行【读】操作
    升级iOS17后可以降级吗?iOS17退回iOS16方法教程分享
    everything-everything使用技巧,过滤文件语法
  • 原文地址:https://blog.csdn.net/ks2686/article/details/126748525