XML的约束(dtd)】的更多相关文章

DTD(Document Type Definition),文档类型定义,DTD文件应使用UTF-8或Unicode   1.XML中有多少个元素,就在dtd文件中写几个 <!ELEMENT>   2.判断元素是简单元素还是复杂元素 简单元素:没有子元素 <!ELEMENT 元素名称 (#PCDATA)> 复杂元素:有子元素 <!ELEMENT 元素名称 (子元素名称,用英文逗号隔开)>   3.在XML文件中引入dtd文件 (1)引入外部的dtd文件 <!DOC…
今日大纲 1.什么是xml.xml的作用 2.xml的语法 3.DTD约束xml 4.Schema约束xml 5.DOM解析xml 1.什么是xml.xml的作用 1.1.xml介绍 在前面学习的html语言,html是超文本标记语言,使用html语言规定好的标签来封装文本数据.而html使用的标签html语言规定好的,每个标签都有自己特定的功能. xml语言,可扩展的标记语言,这门语言它没有定义任何的标记,而标记是由使用者自己来定义,但是由于标签名称以及属性名称都由用户自己来命名,导致别人在使…
前面介绍了XML的作用和基本的格式,今天我给大家分享的是关于XML的约束.废话不多说,我们直接来正题! 一.DTD简介 1.1.DTD概述 DTD(Document Type Definition,文档类型定义) 1)DTD是一套关于标记符的语法规则.它是XML1.0版规格的一部分,是XML文件的验证机制,属于XML文件组成的一部分. 2)XML文件提供应用程序一个数据交换的格式,DTD正是让XML文件能够成为数据交换的标准,因为不同的公司只需定义好标准的DTD, 各公司都能够依照DTD建立XM…
xml主要用来描述数据,比如配置文件,网络之间传输数据等,并且在android中也经常用xml来布局,,接下来便来学习xml常用的东西 1.XML语法 xml语法分为: 1.1 文档声明 必须位于文档第一行,用来声明当前版本.编码格式以及standlane,如果没有编码格式,折则默认为utf-8,比如为<?xml version="1.0" encoding="UTF-8"?> 1.2 元素 元素可以包含子元素,文本内容,或者元素属性. 元素名称不能以数…
<元素1> <元素2> <元素3>描述1</元素3> <元素4>描述2</元素4> </元素2> </元素1> 1. 引入网络上的DTD <!--文档类型 根标签名字 网络上的dtd dtd的名称 dtd的路径--> <!DOCTYPE stus PUBLIC "//UNKNOWN/" "unknown.dtd"> 2. 引入本地的DTD <…
DTD(Document Type Definition),全称为文档类型定义. 文件清单:book.xml <?xml version="1.0" ?> <!DOCTYPE 书架 SYSTEM "book.dtd"> <书架> <书> <书名>Java就业培训教程</书名> <作者>张孝祥</作者> <售价>39.00元</售价> </书&…
今天在做Android项目的时候,用到了XML解析,服务端返回的不是JSON,而是XML,这时候就需要我们解析XML了,当然在解析XML的时候,需要了XML文件的定义结构,任何一个文件的定义都是要遵循一个规范和约束的,那么XML也不例外 XML的约束模式有两种,一种是DTD,还有一种就是Schema,我们先来说一下DTD DTD(Document Type Definition),全称为文档类型定义,下面直接来看一下dtd文档的定义吧: <!ENTITY 版权 "合肥师范学院"&…
一.DTD约束xml 1.约束介绍 由于xml的标签由用户自己定义,因此在开发的时候,每个人都可以根据自己的需求来定义xml标签,这样导致项目中的xml难以维护,因此需要使用一定的规范机制来约束xml文件中的标签书写. 2.DTD约束快速入门 第一步:先自己定义一个xml文件 <?xml version="1.0" encoding="UTF-8"?> <users> <user> <name>zhangsan<…
参考: 方立勋老师的讲课视频.   什么是XML约束 •在XML技术里,可以编写一个文档来约束一个XML文档的书写规范,这称之为XML约束. 为什么需要XML约束 常用的约束技术 •XML DTD •XML Schema DTD(Document Type Definition),全称为文档类型定义 编写DTD约束的两种方式: lDTD约束即可以作为一个单独的文件编写,也可以在XML文件内编写. 在xml文件内编写DTD: <?xml version="1.0" encoding…
一:XML约束概念 xml约束:可以编写一个文档来约束xml文件的书写规范. xml语言格式比较严谨,不可能让程序员随意编写,所以必须要有约束. 二:常用的xml约束技术 1:DTD,document type definition 2:校验xml文件正当性 a:使用解析工具 b:使用ide工具,如:eclipse books.html <?xml version="1.0" ?> <!DOCTYPE bookstore SYSTEM "book.dtd&q…
XML 可扩展的标记语言(!!!可扩展) 作用 1.存放数据 2.配置文件 语法 文档声明 <?xml version="1.0" encoding="UTF-8"?> 1.文档声明必须为<?xml开头,以?>结束: 2.文档声明必须从文档的0行0列位置开始: 3.文档声明只有2个属性: version 版本 encoding 编码 元素 <bean></bean> 1.必须开始结束 2.标签由开始标签,元素体,结束标…
此演示xml和DTD在一个文件中 book.xml <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE 书架 [ <!ELEMENT 书架 (书+)> <!ELEMENT 书 (书名,作者,售价)> <!ELEMENT 书名 (#PCDATA)> <!ELEMENT 作者 (#PCDATA)> <!ELEMENT 售价 (#PCDATA)> &…
xml:可扩展标记语言,w3c组织发布的,用于保存有关系的数据,作为配置文件,描述程序模块之间的关系 <?xml version="1.0" encoding="gb2312" standalone="yes" ?> encoding 指定文档的字符编码: standalone 说明文档是否独立,如果 yes 则表示XML文件既不需要DTD文件来验证标记是否有效,也不需要XSL.CSS控制外观显示 元素:由一个标记来定义,包括开始和结…
XML Schema也是一种用于定义和描述XML文档结构与内容的模式语言,其出现是为了克服DTD的局限性 XML Schema符合XML语法结构 DOM.SAX等XML API很容易解析出XML Schema文档中的内容 一个XML中个可以有多个schema,多个Schema使用名称空间(类似于Java的包名)进行区分 XML Schema比XML DTD支持更多的数据类型,并支持用户自定义新的数据类型 XML Schema定义约束的能力非常强大,可以对XML实例文档做出细致的语义限制 XML…
在Eclipse中本地配置schema约束(xsd): 1.比如配置spring的applicationContext.xml中的约束条件: 复制applicationContext.xml中如图: 2.window->Preterences 3.搜索xml,选择XML Catalog 4.点击add,选择约束文件的具体路径: 5.选择Schema location 6.将第一步复制的,粘贴在key的位置,点击ok完成保存 7.配置完成: 在Eclipse中本地配置DTD约束(前4步与配置sch…
<?xml version="1.0" encoding="UTF-8" ?> <!--DTD外部引用:--> <!DOCTYPE note SYSTEM "note.dtd"> <!--外联文件可以不写申明,如果写必须要有encoding="UTF-8" SYSTEM代表系统内部调用,后面是相对路径--> <!--DTD内嵌引用 --> <!DOCTYPE n…
用了很多第三方库,也看了些源码,总是想如果自己写一个类似的库,读取xml配置文件(properties配置文件比较简单) 该如何给配置文件添加头,添加校验,因为xml配置文件相对于properties配置文件结构更加清晰.最近刚好在看spring 1.2.9版本的源码,就来总结一下如何定义一个dtd文件用于约束xml文件的配置.这里之所以选择这个非常久远的低版本,主要是因为代码少,便于阅读.虽然版本很低,但是其核心设计,核心类都没变,比如ApplicationContext ,各种 Applic…
一.XML语法 xml 可扩展标记语言,w3c组织发布的,用于保存有关系的数据,作为配置文件,描述程序模块之间的关系 xml 文件开头必须包括下面的标签: <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> encoding 用来指定XML文档的字符编码,一般都是 UTF-8 standalone 用来说明文档是否独立,默认是no,通常用不到这属性(如果是 yes 则表示X…
无意义的XML 之前说过因为xml没有预设的标签,所以说你怎麽写他一般都不会报错. 所以需要对xml的书写格式进行一些限制,这就引入了DTD 下面的这个xml你可以给book添加各种属性还不会报错,但是有时属性是固定的,所以就需要对xml进行一定的约束.  DTD的引入(有意义的XML) 文档类型定义(DTD)可定义合法的XML文档构建模块.它使用一系列合法的元素来定义文档的结构. DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用. 内部dtd(还是以上面的例子进行书写) id只能…
你没有错,现在的浏览器都不怎么支持实体引用了,这是个无奈的现实.我记得上回试过,好像如果DTD不是单独的文件而是内置到XML里面的话,实体还可以显示的.你可以试一下 <?xml version="1.0" encoding="UTF-8"?> <!ELEMENT 书架 (书+)> <!ELEMENT 书 (书名|作者|售价|简介)*> <!ELEMENT 书名 (#PCDATA)> <!ELEMENT 作者 (#…
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.mycom.mybatis_1.test1.us…
导读:DTD是Document type definition(文档类型定义的缩写),是一套关于标记符的语法规则,它是XML文件的验证机制,数以XML文件的组成部分.XML文档是一种描述标记语言的语言,它可以由DTD来定义结构,DTD制定了文档的一系列规则,确保文档的一致性和有效性.本篇博客,就将具体介绍:什么是DTD,为什么用DTD,怎样用DTD. 一.什么是DTD DTD是一套关于标记的语法规则,该规则详细地描述了一组XML文档的结构.DTD说明了在文档中可以使用哪些标记,哪些标记可以出现在…
参考: http://shansun123.iteye.com/blog/1020425 http://blog.csdn.net/hailanzhijia/article/details/6004947 问题: 解析xml时,报找不到.dtd错误,从而解析错. 解决方法: 在使用builder解析之前,设置禁止校验dtd. builder.setEntityResolver( new EntityResolver(){ public InputSource resolveEntity(Stri…
有时候我们想编辑struts或spring的xml配置文件的时候,输了“<”之后eclipse却没有提示关键字,这是因为eclipse需要到网络下载dtd文件而由于网络原因没下载下来所以无法提示,这种情况我们可以通过配置eclipse的XML catalog来解决,让我们即使在离线情况下依然可以有关键字提示,具体操作步骤如下:…
DTD(Document Type Definition):文档类型定义,可以定义合法的XML文档结构,它使用一系列合法元素来定义文档的结构.DTD分为内部DTD和外部DTD,所谓内部DTD是指该DTD在某个文档的内部,只被该文档使用.外部DTD是指该DTD不在文档内部,可以被其他所有的文档来共享. 符号 含义 + >=1 * >=0 ? =0 或=1 数据的分类: 1.PCDATA(parse character data):可以解析的字符数据: 2.CDATA(character data…
解决方式整合一下,就分两种: 1.用setFeature() SAXReader reader = new SAXReader();reader.setValidation(false); reader.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false);... 2.用setEntityResolver() SAXReader reader = new SAXReader…
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" -> 引入Schema约束 xsi:schemaLocation=&q…
在编辑struts.xml 文件时,“alt + /”无提示信息,需要在myeclipse 中添加消息头中的文件,步骤如下: 1. 选中该段复制 2. Preferences——>XML Catalog——>Add 3. 添加本地 .dtd文件路径 4. done... 如果不行关掉xml文件重启.…
[转自] http://blog.chinaunix.net/uid-276853-id-366491.html 关于XML的验证一点实践 1)此方法是在XML文档中绑定对应的DTD文件来进行的 //部分程序代码如下: //为解析XML作准备,创建DocumentBuilderFactory实例,指定DocumentBuilder DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); dbf.setValidatin…
文件后缀为.xml里如下一行报错“The markup declarations contained or pointed to by the document type declaration must be well-formed.” <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> 外…