IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> xml,http协议,tomact(本篇是xml) -> 正文阅读

[网络协议]xml,http协议,tomact(本篇是xml)

1.xml叙述:

(1)什么是xml:可扩展的标记语言。

(2)xml用途:他用来存储数据

①作为系统与系统之间传输数据的格式

②作为项目的配置文件

③保存有结构关系型的数据

2.xml和html的区别:

①.xml文档的标记可以随意扩展,html的标记是预定义好的

②.xml区分大小写,html不区分大小写

③.html主要是用于显示数据的,xml是用来保存数据的

④.html中,空格会自动过滤,而xml不会

⑤.html中可以有多个根节点,在xml里面只有一个

3.XML语法:

(1)XML的文档声明:

? ? ? ? ? 语法:<?xml version="1.0" encoding="utf-8" standalone="yes" ?>

? ? ? ? ? 属性:?version?用来表示xml的版本

? ? ? ? ? ? ? ? ? ? ? encoding?用来表示xml的编码格式

? ? ? ? ? ? ? ? ? ? ? standalone?用来表示xml文档是否依赖外部的文件

注意:XML文档声明一定要放在第一行,第一列

(2)XML元素定义:

? ? ? ? ?xml文档都是通过元素操作(标记),元素是开始标记,属性,文本和结束标记组成。

? ? ? ? ?标记可以嵌套,但是必须合理嵌套

(3)属性定义:

? ? ? ? ? ? ? ? ? ? ? ? 语法:<probice name="hebei">

? ? ? ? ? ? ? ? ? ? ? ? 属性对应的值要用“”给括起来

(4)注释:

? ? ? ? ? html的注释:<!--heml注释-->

? ? ? ? ? javascript的注释:参照java的注释

? ? ? ? ? xml的注释:<!--xml的注释-->

? ? ? ? ? ?注意:

? ? ? ? ? ①xml是区分大小写的

? ? ? ? ? ②xml的标记不能以数字或者下划线开头。比如<1a></1a>,<_a></_a>?

? ? ? ? ? ③xml的标记不能以xml或XML等开头

? ? ? ? ? ④xml的标记里面不能包含空格等特殊符号,比如<a? a>,<a :b>,<? a>都是错误的

4.DTD约束:

(1)什么是约束:在xml文档中,咱们可以通过一个文件来约束xml文档中的内容规范,这个规范就是约束。

为什么要有约束?? 因为xml文件可以随意写,如果标记随意写,在解析xml文件时,程序员就不知道xml文件中的标记具体表示什么含义,所以说用约束规范xml的书写。

(2)创建约束文件

? ? ? ? ?什么是DTD:文档类型定义(DTD),它使用一系列合法的元素来定义文档的结构。DTD可被声明与XML文档中,也可作为一个外部引用

语法:<!DOCTYPE? 根元素名称? [dtd具体约束条件]>

例如:

<!ELEMENT 书架 (书+)>
<!ELEMENT 书 (书名,作者,售价)>
<!ELEMENT 书名 (#PCDATA)>
<!ELEMENT 作者 (#PCDATA)>
<!ELEMENT 售价 (#PCDATA)>

(3)DTD引入:

? ①直接在xml文件中,引入dtd约束

? ? ? ? 语法:

<!DOCTYPE 书架 [
        <!ELEMENT 售价 (#PCDATA)>
        <!ELEMENT 书名 (#PCDATA)>
        <!ELEMENT 作者 (#PCDATA)>
        <!ELEMENT 书 (书名,作者,售价)>
        <!ELEMENT 书架 (书+)>
        ]>

? ? ? ? ? <!--(#PCDATA)代表普通文本内容-->

? ? ②外部引入方式:

? ? >>>本地引入:

? ? ? ? 语法:<!DOCTYPE? 书架? SYSTEM? "book.dtd">?

(!DOCTYPE ——>文档类型定义? ? ? ? 书架——>根节点名称? ? ??"book.dtd"——>约束文件地址?)

??? ? >>>公网引入:

? ? ? ? ? ? ? ? ? ? <!DOCTYPE? 书架? PUBLIC? "DTD名称"? "DTD文件在公网的url">

(4)DTD语法:

? ? ? ? ? ? ?①元素定义:

? ? ? ? ? ? ? ? ? ? ? ? ? 基本语法? :? <!ELEMENT? 元素名称? 元素内容>

? ? ? ? ? ? ? ? ? ? ? ? ? 元素内容对应的类型:

? ? ? ? ? ? ? ? ? ?>>>元素内容是普通的文本:#PCDATA

? ? ? ? ? ? ? ? ? ?>>>元素内容是子元素:比如:(子元素1 ,?子元素2 ,- - -)

? ? ? ? ? ? ? ? ? ?>>>元素内容是EMPTY:比如: <book />? ? 空元素

? ? ? ? ? ? ? ? ? ?>>>元素内容是ANY:代表任意内容,元素内容可以是普通的文本,也可以是子元素

? ? ? ? ? ? ? ? ? ? ? ? ? ? 注意:

? ? ? ? ? ? ? ? ? ? *?表示0个或者多个?

? ? ? ? ? ? ? ? ? ? + 表示一个或者多个

? ? ? ? ? ? ? ? ? ? |?任选一个

? ? ? ? ? ? ? ? ? ? ,?表示子元素按顺序排列

? ? ? ? ? ? ? ? ? ? ??表示可以出现0或者1

? ? ? ? ? ? ? ? ? ??

? ? ? ? ? ? ?②?属性定义

? ? ? ? ? ? ? ? ?语法: <!ATTLIST? 元素名称? 属性名称? 属性类型? 默认值>

? ? ? ? ? ? ? ? ?属性类型:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? CDATD:属性值为任意文本数据。(字符类型)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Enumerated:属性值必须是枚举列表中的一个;

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ID:属性值必须是唯一的,并且属性值不能以数字开头

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? IDREF:属性值必须是ID属性的值;

? ? ? ? ? ? ? 设置说明:

? ? ? ? ? ? ? #REQUIRED:表示属性是必须的;

? ? ? ? ? ? ? #IMPPLIED:表示属性是可选的,即这个属性可以不给出;

(5)Schema约束

? ? ? ? ? ? ? ①什么是Schema:它同DTD约束基本一样,也是用来规范xml文件内容的书写规范,只? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 不过Schema的约束比DTD更加强大。

? ? ? ? ? ? ? ? ? ? 区别:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?>>>DTD约束文件的后缀名dtd,机制采用自身的约束。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?>>>Schema约束文件的后缀名是xsd,他是基于xml语法格式

? ? ? ? ? ? ? ②名称空间:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 名称空间的作用就是用来在xml文档中引入schema文件的,但是在一个xml? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文件中可以引入多个schema文件。就可以使用名称空间来区分不同的约束? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文件。

? ? ? ? ? ? ? ③引入Schema文档:

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?第一种方式:通过名称空间来引入schema文件。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 第二种方式:不通过名称空间引入。

(http协议,Tomact见后续--)

? ? ? ? ? ? ??

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-09-14 13:44:27  更:2021-09-14 13:46:32 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/29 13:10:01-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计