博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【XML】概念,语法
阅读量:2038 次
发布时间:2019-04-28

本文共 2488 字,大约阅读时间需要 8 分钟。

【XML】概念,语法

1. 概念

  • XML:可扩展标记语言

    xml是互联网数据传输的重要工具,它可以跨越互联网任何的平台,不受编程语言和操作系统的限制,可以说它是一个拥有互联网最高级别通行证的数据携带者。xml是当前处理结构化文档信息中相当给力的技术,xml有助于在服务器之间穿梭结构化数据,这使得开发人员更加得心应手的控制数据的存储和传输。

    Xml用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。Xml是标准通用标记语言(SGML)的子集,非常适合Web传输。XML提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。

1.1 XML的特点以及作用。

* XML 指可扩展标记语言(EXtensible Markup Language)* XML 是一种标记语言,很类似 HTML* XML 的设计宗旨是传输数据,而非显示数据* XML 标签没有被预定义。您需要自行定义标签* XML 被设计为具有自我描述性* XML 是 W3C 的推荐标准
  • XML的特点

    1. xml与操作系统、编程语言的开发平台都无关;
    2. 实现不同系统之间的数据交互。
  • XML的作用

    1. 配置应用程序和网站;
    2. 数据交互;
    3. Ajax基石。

1.2 HTML与XML区别

  • XML 被设计为传输和存储数据,其焦点是数据的内容
  • HTML 被设计用来显示数据,其焦点是数据的外观
  • HTML 旨在显示信息,而 XML 旨在传输信息
  • HTML语法比较松散,xml语法严格
  • HTML所有标签都是预先定义好的, 使用固定的标签,展示不同的内容
  • XML当中的标签都是自己定义的
  • XML用处: 数据存储、配置文件、数据传输

2. 语法

2.1 基本语法:

  1. xml文档的后缀名 .xml
  2. xml第一行必须定义为文档声明
  3. xml文档中有且仅有一个根标签
  4. 属性值必须使用引号(单双都可)引起来
  5. 标签必须正确关闭
  6. xml标签名称区分大小写
  • 文档声明
必须写在文档的第一行属性:version版本号,一般1.0encoding指定文档的码表 默认iso-8859-1standalone指定文档是否独立yes或no,即是否可以引用其它文件
  • 5个预定义的实体引用
<   <   小于>   >   大于&  &   和号' ’   单引号" "   双引号
  • 元素

    1. 名称可以包含字母、数字以及其他的字符
    2. 名称不能以数字或者标点符号开始
    3. 名称不能以字符“xml” (或者XML,Xml)开始
    4. 名称不能包含空格
  • 文本

转义字符 数据内容中输入什么就显示什么,不用使用预定义实体引用。
  • 属性
    id值唯一确定。

2.2 快速入门

张三
23
male
李四
21
female
b&&a

浏览器打开后:

2.3 约束

  • 作为框架的使用者(程序员):

    1. 能够在xml中引入约束文档
    2. 能够简单的读懂约束文档
  • 分类:

    1. DTD:一种简单的约束技术
    2. Schema:一种复杂的约束技术

2.3.1 DTD:

  • 引入dtd文档到xml文档中
    • 内部dtd:将约束规则定义在xml文档中
    • 外部dtd:将约束的规则定义在外部的dtd文件中
* 本地:		* 网络:

例如

student.dtd

student.xml

tom
18
male

2.3.2 Schema:

  • 引入:
    1.填写xml文档的根元素
    2.引入xsi前缀. xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”
    3.引入xsd文件命名空间. xsi:schemaLocation=“https://blog.csdn.net/qq_41879343/xml student.xsd”
    4.为每一个xsd约束声明一个前缀,作为标识 xmlns=“https://blog.csdn.net/qq_41879343/xml”
  • 例如

student.xsd

student.xml

tom
18
male
你可能感兴趣的文章
UIWindow & UIWindowLevel笔记
查看>>
Creating an Xcode4 Plugin
查看>>
iOS截取视频某一帧图片(关键帧,AVAssetImageGenerator)
查看>>
SDWebImage缓存图片的机制
查看>>
更轻量的 View Controllers
查看>>
谈谈编程思想
查看>>
iOS MapKit导航及地理转码辅助类
查看>>
检测iOS的网络可用性并打开网络设置
查看>>
简单封装FMDB操作sqlite的模板
查看>>
iOS开发中Instruments的用法
查看>>
iOS:关于获取网络类型和运营商信息
查看>>
使用CoreTelephony获得SIM卡网络运营商名称
查看>>
IOS学习笔记(六)inputAccessoryView,inputView
查看>>
LSCTableView: Building an Open, Drop-in Replacement of UITableView
查看>>
Android 假冒建行网银病毒分析
查看>>
9 Time-Saving iOS 7 Libraries
查看>>
11 Insanely Great iOS Developers Sites
查看>>
Core Telephony
查看>>
如何使用KeyChain保存和获取UDID
查看>>
Haskell教程
查看>>