教育资源为主的文档平台

当前位置: 查字典文档网> 所有文档分类> 外语学习> 日语学习> xml笔记

xml笔记

上传者:贺娟
|
上传时间:2015-05-07
|
次下载

xml笔记

这是学习xml的笔记

DTD语法细节:元素定义2 元素内容中可以使用如下方式,描述内容的组成关系 用逗号分隔,表示元素内容的出现顺序必须与声明时一致 <!ELEMENT (TITLE,AUTHOR,EMAIL)> 用|分隔表示任选其一,即多个只能出现一个 <!ELEMENT MYFILE(TITLE | AUTHOR | EMAIL)> 在元素内容中也可以使用+ * ? 等符号表示元素出现的次数: + 一次或多次(书+) ? 0次或一次(书?) * 0次或多次(书*) 默认方式表示必须出现一次 (书) 也可以使用圆括号()批量设置,例如 <!ELEMENT MYFILE((TITLE*,AUTHOR?,EMAIL)) | COMMENT> 属性定义 xml文档中的标签虎山行需要通过ATTLIST为其设置属性 语法格式 <!ATTLIST 元素名 属性名1 属性值类型 设置说明 属性名2 属性值类型 设置说明 …… > 例如: <!ATTLIST 商品 类别 CDATA #REQUIRED 颜色 CDATA #IMPLIED > CDATA(字符串) 对应xml文件 <商品 类别="" 颜色="" >……</商品> <商品 类别="">……</商品> 属性定义: 设置说明 #REQUIRED:必须设置该属性 #IMPILED:可以设置也可以不设置 #FIXED: 说明该属性取值固定为一个值,在XML文档 中不能为该属性设置其他值。但需要为该属性提供这个值 直接使用默认值: 在XML文档中可以设置该值也可以不设定该属性值。 若没有设置则使用默认值 例如 <!ATTLIS 页面作者 姓名 CDATA #IMPILED 年龄 CDATA #IMPILED 联系信息 CDATA #REQUIRED 网站职务 CDATA #FIXED "页面作者" 个人爱好 CDATA "上网" > 常用属性值类型 CDATA ENUMERATION ID ENTITY 属性值类型----ENUMERATION 属性的类型可以是一组取值的列表,在xml文件中设置的 属性值只能是这个列表中的某个值(枚举) 例如: <?xml version="1.0" encoding="gbk" standalone="yes"> <?DOCTYPE 购物篮[ <!ELEMENT 肉 EMPTY> <! ATTLIST 肉 品种 (鸡肉|牛肉|猪肉|鱼肉) "鸡肉"(默认值)> ]> (这种书写方式为将dtd文件直接写在xml文档中) <购物篮> <肉 品种="鱼肉"/> <肉 品种="牛肉"/> <肉/> </购物篮> 属性值类型----ID 表示属性的设置值为一个唯一值。 ID属性的值只能由字母,下划线开始,不能出现空白字符 实体定义: 实体用于为一段内容创建一个别名,以后在XML文档中就可以 使用别名引用这段内容类。 在DTD文件中定义中,一条<!ENTITY ……>语句 用于定义了一个实体。 实体可分为2种类型: 引用实体和参数实体 实体定义---引用实体 引用实体主要在XML文档中被应用 语法格式: <!ENTITY 实体名称 "实体内容">:直接转变成实体内容 引用方式: &实体名称; 举例: <!ENTITY copyright "I am a programmer"> …… &copyright; copyright指向了指定内容"I am a programmer" 实体定义---

这是学习xml的笔记

参数实体 参数实体北DTD文件自身使用 语法格式:<!ENTITY 实体名称 "实体内容"> 引用方式:%实体名称; 举例: <!ENTITY % TAG_NAME "姓名 | EMAIL | 电话 | 地址"> <!ELEMENT 个人信息 (%TAG_NAME; | 生日)> <!ELEMENT 客户信息 (%TAG_NAME; | 公司名)> 举例2: <!ENTITY % common.attributes "id ID #IMPILED account CDATA #REQUIRED" > …… <!ATTLIST purchaseOrder %common.attributes;> <!ATTLIST item %common.attributes;> XML编程(CRUD) xml解析技术概述: xml解析技术分为两种:dom和sax dom解析缺点,文件不能太大,消耗内存 dom解析优点,容易进行CRUD sax解析特点:从上往下读,读取一行处理一行,只适合做读取 不适合做crud 优点:内存消耗特别小 缺点:不适合进行增删改查 xml解析开发包:Jaxp(sum) Jdom dom4j 主要学习dom4j Jaxp JAXP Jaxp开发包是J2SE的一部分,由javax.xml org.w3c.dom org.xml.sax包及其子包组成 在javax.xml.parsers包中,定义了几个工厂类,程序员调用这些 工厂类,从而实现对xml文档的解析 使用jaxp进行dom解析: javax.xml.parsers包中的DocumentBuilderFactory 用于创建DOM模式的解析器对象,DocumentBuilderFactory是一个 抽象工厂类,它不能直接实例化但是该类提供了一个newInstance 方法,这个方法会根据本地平台默认安装的解析器,自动创建 一个工厂的对象并返回。 更新xml文档: javax.xml.transform包中的Transformer类用于把代表 xml文件的Document对象转换为某种格式后进行输出,例如把 xml文件应用样式表转成一个html文档。利用这个对象,当然也可以 把Document对象重新写入到一个xml文件中。 Transformer类通过transform方法完成转化操作, 该方法接受一个源和一个目的地。我们可以通过: javax.xml.transform.dom.DOMSource类来关联要转换的documen对象 用javax.xml.transform.stream.StreamResult对象来表示数据的目的地 Transformer对象通过TransformerFactory获得 SAX解析:SAX解析允许在读取文档时,即对文档进行处理, 而不必等到整个文档加载完成才会对文档进行操作。 SAX采用事件处理的方式解析xml文件,利用SAX解析xml文档, 涉及两个部分:解析器和事件处理器: 解析器可以使用JAXP的api创建,创建出SAX解析器后, 就可以指定解析器去解析某个xml文档。 解析器采用sax方式在解析某个xml文档时,它只要解析到 xml文档的一个组成部分,都会去调用事件处理器的一个方法,解析器 在调用事件处理器的方法时,会把当前解析道德xml文件内容作为 方法参数传递给事件处理器。 事件处理器由程序员编写,程序员通过事件处理器中方法的参数, 就可以很轻松的得到sax解析器解析到的数据,从

这是学习xml的笔记

而可以决定如何对数据进行处理。 常用的事件处理器:ContentHandler(接口),常用的方法为: startElement、endElement、characters DOM4J解析xml文档: dom4j-docs-guide.html文档 XPath提取xml文档数据: 基本的XPath语法类似于在一个文档系统中定位 文件,如果路径以/开始,那么该路径就表示到一个元素 的绝对路径。 如果路径以//开始,则表示选择文档中所有满足//之后 规则的元素(无论层级关系) *表示选择所有由*之前的路径所定位的元素 方块号里的表达式可以进一步的指定元素, 其中数字表示元素在选择集里的位置,而last()函数 则表示选择集中的最后一个位置。 属性值可以被用来最为选择的准则,normalize-space函数删除 了前部和尾部的空格,并且把连续的空格串替换为一个单一的空格 count()函数可以计数所选元素的个数 name()函数返回元素的名称,start-with() 函数在该函数的第一个参数字符串是以第二个参数字符串开始的情况 返回true,contains()函数当其第一个字符串参数包含有 第二个字符串参数时,返回true. XML Schema XML Schema也是一种用于定义和描述xml文档结构与 内容的模式语言,其出现是为了克服dtd的局限性。 xml Schema VS DTD: Xml Schema 符合xml语法结构。 dom,sax等xml api很容易解析出xml schema 文档中的内容。 xml schema对名称空间支持的非常好。 xml schema比xml DTD支持更多的数据类型,并 支持用户自定义新的数据类型。 xml schema 定义约束的能力非常强大,可以对xml 实例文档做出细致的语义限制。 xml schema不能像dtd一样定义实体,比dtd更复杂, 但xml schema现在已是w3c组织的标准,正逐步取代dtd。 schema 约束快速入门: xml schema文件自身就是一个xml文件,但他的扩展名常为 .sxd 一个xml schema 文档通常称为模式文档()约束文档, 遵循这个文档书写的xml文件称为实例文档。 和xml文件一样,一个xml schema 文档必须有一个 根节点,但这个根节的名称必须为Schema 编写了一个xml Schema约束文档之后,通常需要把 这个文件中声明的元素绑定到一个URI的地址上,在xml Schema 技术中有一个专业术语来描述这个过程,即把xml Schema文档 声明的元素绑定到一个名称空间上,以后xml文件就可以通过这个 URI(即名称空间)来告诉解析引擎,xml文档中编写的元素 来自哪里,被谁约束。 Schema语法:参看w3c文档

版权声明:此文档由查字典文档网用户提供,如用于商业用途请与作者联系,查字典文档网保持最终解释权!

下载文档

热门试卷

2016年四川省内江市中考化学试卷
广西钦州市高新区2017届高三11月月考政治试卷
浙江省湖州市2016-2017学年高一上学期期中考试政治试卷
浙江省湖州市2016-2017学年高二上学期期中考试政治试卷
辽宁省铁岭市协作体2017届高三上学期第三次联考政治试卷
广西钦州市钦州港区2016-2017学年高二11月月考政治试卷
广西钦州市钦州港区2017届高三11月月考政治试卷
广西钦州市钦州港区2016-2017学年高一11月月考政治试卷
广西钦州市高新区2016-2017学年高二11月月考政治试卷
广西钦州市高新区2016-2017学年高一11月月考政治试卷
山东省滨州市三校2017届第一学期阶段测试初三英语试题
四川省成都七中2017届高三一诊模拟考试文科综合试卷
2017届普通高等学校招生全国统一考试模拟试题(附答案)
重庆市永川中学高2017级上期12月月考语文试题
江西宜春三中2017届高三第一学期第二次月考文科综合试题
内蒙古赤峰二中2017届高三上学期第三次月考英语试题
2017年六年级(上)数学期末考试卷
2017人教版小学英语三年级上期末笔试题
江苏省常州西藏民族中学2016-2017学年九年级思想品德第一学期第二次阶段测试试卷
重庆市九龙坡区七校2016-2017学年上期八年级素质测查(二)语文学科试题卷
江苏省无锡市钱桥中学2016年12月八年级语文阶段性测试卷
江苏省无锡市钱桥中学2016-2017学年七年级英语12月阶段检测试卷
山东省邹城市第八中学2016-2017学年八年级12月物理第4章试题(无答案)
【人教版】河北省2015-2016学年度九年级上期末语文试题卷(附答案)
四川省简阳市阳安中学2016年12月高二月考英语试卷
四川省成都龙泉中学高三上学期2016年12月月考试题文科综合能力测试
安徽省滁州中学2016—2017学年度第一学期12月月考​高三英语试卷
山东省武城县第二中学2016.12高一年级上学期第二次月考历史试题(必修一第四、五单元)
福建省四地六校联考2016-2017学年上学期第三次月考高三化学试卷
甘肃省武威第二十三中学2016—2017学年度八年级第一学期12月月考生物试卷

网友关注视频

第12章 圆锥曲线_12.7 抛物线的标准方程_第一课时(特等奖)(沪教版高二下册)_T274713
【部编】人教版语文七年级下册《泊秦淮》优质课教学视频+PPT课件+教案,辽宁省
3.2 数学二年级下册第二单元 表内除法(一)整理和复习 李菲菲
沪教版牛津小学英语(深圳用) 四年级下册 Unit 4
【部编】人教版语文七年级下册《泊秦淮》优质课教学视频+PPT课件+教案,天津市
化学九年级下册全册同步 人教版 第18集 常见的酸和碱(二)
沪教版八年级下册数学练习册20.4(2)一次函数的应用2P8
沪教版八年级下册数学练习册21.3(3)分式方程P17
化学九年级下册全册同步 人教版 第22集 酸和碱的中和反应(一)
沪教版牛津小学英语(深圳用) 六年级下册 Unit 7
冀教版小学数学二年级下册第二单元《有余数除法的整理与复习》
外研版英语七年级下册module3 unit2第一课时
8.对剪花样_第一课时(二等奖)(冀美版二年级上册)_T515402
【获奖】科粤版初三九年级化学下册第七章7.3浓稀的表示
冀教版小学数学二年级下册第二单元《有余数除法的竖式计算》
苏科版数学 八年级下册 第八章第二节 可能性的大小
外研版英语七年级下册module3 unit2第二课时
三年级英语单词记忆下册(沪教版)第一二单元复习
沪教版八年级下册数学练习册21.3(2)分式方程P15
沪教版八年级下册数学练习册一次函数复习题B组(P11)
北师大版八年级物理下册 第六章 常见的光学仪器(二)探究凸透镜成像的规律
【部编】人教版语文七年级下册《逢入京使》优质课教学视频+PPT课件+教案,安徽省
沪教版八年级下册数学练习册21.4(1)无理方程P18
3月2日小学二年级数学下册(数一数)
第8课 对称剪纸_第一课时(二等奖)(沪书画版二年级上册)_T3784187
外研版英语三起6年级下册(14版)Module3 Unit2
沪教版牛津小学英语(深圳用) 四年级下册 Unit 2
北师大版数学四年级下册第三单元第四节街心广场
外研版八年级英语下学期 Module3
第4章 幂函数、指数函数和对数函数(下)_六 指数方程和对数方程_4.7 简单的指数方程_第一课时(沪教版高一下册)_T1566237