XML学习笔记

xml中文全称为可扩展标记语言(Extensible Markup Language) xml和html类似,但是xml是用来传输和存储数据的,xml大小写敏感,xml的标记是自定义的 xml声明,该声明位在xml文档的第一行,结尾 version属性表示xml的版本,encoding属性表示该xml文档的编码方式,standalone属性表示该文档是否为独立,no表示依赖于外部文档 xml的标记也可以像html一样,认为是元素,一般由开始标签,属性,内容,结束标签组成,例如xml 和就是xml文档中的标签(元素),和html一样,可以嵌套n个子元素,如果一个元素没有被嵌套到其他元素上,那么这个元素就是根元素 一般来说一个格式良好的xml文档只有一个根元素,而且根元素是xml文档的第一个元素,如果一个元素没有嵌套子元素也没有内容,那么这个元素为空元素,空元素不需要结束标签,例如 属性是元素的描述和说明,可以使用多个属性,每个属性都有自己名称和值,值用"“或者’‘包起来 xml的注释方式和html一样, DTD约束 XML是自定义标签,浏览器不知道这个标签是用来干什么的,因此制定的一套约束,遵循一定的语法 DTD约束写在一个DTD文件里,dtd导入,例如: 如果导入了本地的DTD文档,那么standalone属性的值不能为yes DTD除了导入外,还可以内嵌,例如 元素内容包括元素的声明,包括数据类型和符号 PCDATA 中文意思就是被解析的字符数据,会被解析器解析 子元素 例如 空元素 一般用来定义空元素 ANY 表示这个元素没有包含任何字符数据和子元素,例如,在实际开发中,尽量不要使用ANY,除了根元素外,其他使用ANY的元素会失去DTD对XML的约束 符号 问号?:表示该对象可以出现0次或者1次 星号*:表示该对象可以出现0次或者多次 加号+:表示该对象可以出现1次或者多次 竖线|:表示在列出的对象中选择一个 逗号,:表现对象必须按照指定的顺序出现 括号():用于给元素进行分组 DTD除了给定义元素外,也可以为元素定义属性 属性类型指定该属性是属性哪个类型的,属性说明一般用来说明该属性是否必须出现 属性类型 CDTATA // 表示属性类型为字符数据,如果想在属性设置值中出现特殊符号(例如<),那么需要使用其转义字符序列来表示,例如 “<“来表示”<” Enumerated(枚举类型) // 在声明一个属性时,可以限制该属性的取值只能从一个列表中选择,但是在DTD文档中不会出现Enumerated关键字,用法例如: ID // 表示该属性类型为唯一标识,一个元素只能有一个id类型的属性,而且属性说明必须为REQUIRED或者IMPLIED IDREF和IDREFS // 一般用来关联元素与元素之间的关系,而且IDREF类型的属性的值必须为一个已经存在的ID类型的属性值,例如: 1 2 说明ID为01和02的元素之间,存在关联 IDREFS就是引用多个ID类型的属性值,例如: 1 属性说明 REQUIRED // 表示这个元素的这个属性是必须的 IMPLIED // 表示这个元素可以包含这个属性,也可以不包含 FIXED // 表示这个固定的属性默认值,不能将该属性的值设置为其他值,使用该说明时还需要提供一个默认值,如果XML没有定义该属性,那么其值就被自动设置为DTD定义的默认值 默认值 // 和FIXED一样,不同的是,这个属性的值可以改变,如果在xml文档中设置了新的值,那么新的值会覆盖DTD定义的默认值

2021-06-16 · 1 min · Me