关于XML的验证(DTD与XSD)一点实践】的更多相关文章

[转自] http://blog.chinaunix.net/uid-276853-id-366491.html 关于XML的验证一点实践 1)此方法是在XML文档中绑定对应的DTD文件来进行的 //部分程序代码如下: //为解析XML作准备,创建DocumentBuilderFactory实例,指定DocumentBuilder DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); dbf.setValidatin…
拥有正确语法的XML被称为“形式良好”的XML.通过DTD验证的XML是“合法”的XML.DTD(文档类型定义)的作用是定义XML 文档的合法构建模块.它使用一系列的合法元素来定义文档结构.XML Schema是基于XML的DTD替代者.XML Schema描述XML文档的结构.XML Schema语言也称作XML Schema定义(XML Schema Definition,XSD).        PowerDesigner是Sybase公司的CASE工具集,也可以用来设计XML模型.在这里…
前言: 在众神的努力之下,js已经可以跨出浏览器走向不同的领域了 也因为这个,对前端工程师的要求也不仅仅是会写写h5页面做交互.前端涉及的领域越来越广,对开发人员对素质能力要求越高. 以前因设备不同导致开发语言不同,写一个app需要招一个懂IOS和一个懂Android的,现在一套js就能写移动app了,甚至小程序在某些时候也能满足移动端的需求. 以前写游戏的全套C++,现在js也能写,甚至在美术方面js有独特的优势. 以前独立安装的操作系统,因为云端的崛起,甚至可以在网页浏览器上体验其他操作平台…
那点你不知道的XHtml(Xml+Html)语法知识(DTD.XSD) 什么是XHtml: 摘录网上的一句话,XHTML就是一个扮演着类似HTML的角色的XML. XHtml可当模板引擎应用: CYQ.Data 框架里有一套XHtmlAction模板引擎, 应用在QBlog开源博客里. 简单说,把Html当Xml进行Load加载,再使用常规的Xml语法就可以对模板进行增删改查等操作. 为啥不是Html,而是XHtml? Html的语法约束不严格,任你标签不闭合,或者标签错乱,也能被浏览器解析,或…
下载DTD或XSD文件 添加到Eclipse…
XML的编写是否符合规范,可以通过XML Schema或DTD进行验证,但有时候电脑本来就很卡,而且XML的某些错误并未导致程序无法运行的情况下,暂时关闭XML的验证也算不错的选择. 如web.xml中web-app标签没指定version:<web-app xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”http://java.sun.com/xml/ns/j2ee” xsi:schemaLocation=”http:/…
XML文件的验证模式保证了XML文件的正确性,而比较常用的验证模式有两种:DTD和XSD. DTD与XSD区别 DTD(Document Type Definition)即文档类型定义,是一种XML约束模式语言,是XML文件的验证机制,属于XML文件组成的一部分.DTD是一种保证XML文档格式正确的有效方法,可以通过比较XML文档和DTD文件来看文档是否符合规范,元素和标签使用是否正确. 一个DTD文档包含:元素的定义规则,元素间关系的定义规则,元素可使用的属性,可使用的实体或符号规则. 要使用…
XML Schema验证 一.什么事Schema(XSD) XML Schema是微软定义的一套用来验证XML技术.是一套预先规定的XML元素和属性创建的,这些元素和属性定义了XML文档的结构和内容模式. DTD的局限性: 1.DTD不遵循XML语法. 2.DTD的数据类型有限,与数据库类型不一致. 3.DTD不可以扩展. 4.DTD是不支持命名空间的. Schema的优势: 1.Schema是一种XML语法结构,编写更加方便. 2.Schema可以支持数据类型. 3.Schema是可以扩展的.…
DTD=类型定义(Documnet Type Definition) XSD=XML结构定义 ( XML Schemas Definition ) DTD 就相当于 XML 中的“词汇”和“语法”,不同的行业可以定义自己的“词汇”和“语法”,以利于解析器验证 XML 文档的有效性,并且这样也利于行业中和行业之间的交流. XSD是DTD替代者的原因,一是据将来的条件可扩展,二是比DTD丰富和有用,三是用XML书写,四是支持数据类型,五是支持命名空间. DTD和XSD相比:DTD 是使用非 XML…
XML的编写是否符合规范,可以通过XML Schema或DTD进行验证,但有时候电脑本来就很卡,而且XML的某些错误并未导致程序无法运行的情况下,暂时关闭XML的验证也算不错的选择. 如web.xml中web-app标签没指定version:<web-app xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”http://java.sun.com/xml/ns/j2ee” xsi:schemaLocation=”http:/…
今日大纲 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语言,可扩展的标记语言,这门语言它没有定义任何的标记,而标记是由使用者自己来定义,但是由于标签名称以及属性名称都由用户自己来命名,导致别人在使…
DTD(Document Type Definition),全称为文档类型定义. 文件清单:book.xml <?xml version="1.0" ?> <!DOCTYPE 书架 SYSTEM "book.dtd"> <书架> <书> <书名>Java就业培训教程</书名> <作者>张孝祥</作者> <售价>39.00元</售价> </书&…
经常会发现导入一些js框架,eclipse会编译报错 这是eclipse对js的瞎验证,如何解决呢? 关闭eclipse对js,xml的验证即可: 菜单Window - > Preferences->Validation 然后我们再点 Disable All 按钮: 最后点 OK 按钮: 即可:: 从此再也看不到红色叉叉了:…
a.编写一个类,继承FieldValidatorSupport类. b.在public void validate(Object object)编写你的验证逻辑 不符合要求的就向fieldErrors中放消息 String fieldName=getFieldName(); String fieldValue=(String) getFieldValue(fieldName, object); c.一定注册你的验证器才能使用在src底下建立validators.xml定义验证器文件. eclip…
Eclipse引入自定义XML约束文件(DTD,SCHEMA)问题 1:说明 使用Eclipse 编写xml文件的约束文件的,包括DTD约束文件,Schema约束文件的时候, 我们也需要接受eclipse的提示,但是问题是没有 2:一般解决办法 Eclispe > windows >perfecmerce> Workspace: 引入当前工作空间的约束文件 File System : 引入磁盘上的约束文件 (以上根据需要选择,没有必须一定说需要本地磁盘的上) Key Tyoe : 如果是…
1.xml的约束 (1)为什么需要定义约束了 比如现在定义一个person的xml文件,只想要这个文件里面保存人的信息,比如name age等,但是如果在xml文件中写了一个元素<猫>,发现可以正常显示,因为符合语法规范.但是猫肯定不是人的信息,xml的元素时自定义的,需要技术来规定xml中只能出现的元素,这个时候就需要约束了 xml的约束的技术:dtd约束 和 schema约束 2.dtd的编写使用步骤(注意语法的格式,该打空格就打空格) (1)创建一个文件,后缀名为.dtd (2)在文件中…
什么是XHtml: 摘录网上的一句话,XHTML就是一个扮演着类似HTML的角色的XML. XHtml可当模板引擎应用: CYQ.Data 框架里有一套XHtmlAction模板引擎, 应用在QBlog开源博客里. 简单说,把Html当Xml进行Load加载,再使用常规的Xml语法就可以对模板进行增删改查等操作. 为啥不是Html,而是XHtml? Html的语法约束不严格,任你标签不闭合,或者标签错乱,也能被浏览器解析,或忽略,或错位,或XX: 如果直接解析使用Html,没约束意味着无规则,存…
解决方式整合一下,就分两种: 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…
下载Schema文件 首先要下载框架官网下的xsd或者xml文件,例如Spring官网地址,schema里面的就是xsd文件 Myeclipse中配置 我用的Myeclipse纯净版6.5,Windows->Preference->**->XML->XML Catalog 点击User Specified Entries,在点击Add,弹出弹框. Location选dtd/xsd文件的位置,Key Type选Public ID,Key填Public ID(dtd文件)/target…
DTD 类型约束文件    1. Window->Preferences->XML->XML Catalog->User Specified Entries窗口中,选择Add 按纽            2.在Add XML Catalog Entry 对话框中选择或输入以下内容:        Location: F:/soft/programmingSoft/Framework/Ibatis/sql-map-config-2.dtd        Key Type: URI  …
DTD 类型约束文件 1. Window->Preferences->XML->XML Catalog->User Specified Entries窗口中,选择Add 按纽 2.在Add XML Catalog Entry 对话框中选择或输入以下内容: Location: F:/soft/programmingSoft/Framework/Ibatis/sql-map-config-2.dtd Key Type: URI KEY: http://ibatis.apache.org…
DTD 类型约束文件      1. Window->Preferences->XML->XML Catalog->User Specified Entries窗口中,选择Add 按纽               2.在Add XML Catalog Entry 对话框中选择或输入以下内容:          Location: D:\dtdlib\sql-map-config-2.dtd          Key Type: URI          KEY: http://ib…
导读: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…
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…
一.sax简介 SAX是事件驱动型的XML解析方式.顺序读取XML文件,生成事件,传播到用户定义的回调方法中来处理XML文件. 优点: 分段处理xml,而不是将整个xml一次加载进内存,内存占用少,速度快. 缺点: 顺序访问,不能回退.编码复杂,需要用户把控数据结构. 二.使用流程 1.创建工厂 SAXParserFactory saxParserFactory = SAXParserFactory.newInstance(); 2.设置工厂属性(可选) saxParserFactory.set…
book.DTD 如下: <?xml version="1.0" encoding="UTF-8" ?> <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.atguigu.com/bookSchema" elementFormDefault="qualified"> <ele…
XML 可扩展的标记语言(!!!可扩展) 作用 1.存放数据 2.配置文件 语法 文档声明 <?xml version="1.0" encoding="UTF-8"?> 1.文档声明必须为<?xml开头,以?>结束: 2.文档声明必须从文档的0行0列位置开始: 3.文档声明只有2个属性: version 版本 encoding 编码 元素 <bean></bean> 1.必须开始结束 2.标签由开始标签,元素体,结束标…
你没有错,现在的浏览器都不怎么支持实体引用了,这是个无奈的现实.我记得上回试过,好像如果DTD不是单独的文件而是内置到XML里面的话,实体还可以显示的.你可以试一下 <?xml version="1.0" encoding="UTF-8"?> <!ELEMENT 书架 (书+)> <!ELEMENT 书 (书名|作者|售价|简介)*> <!ELEMENT 书名 (#PCDATA)> <!ELEMENT 作者 (#…
XML文件的约束:什么叫约束呢?顾名思义,就是对xml文件的内容进行按照既定规则的限制.我们知道,因为xml文件的标签是可以自定义的,而往往我们用xml文件都是为了表达一定的数据集合(即小型的数据库),而众所周知的,数据库也是分类型的,如学生数据库,就包含了一系列的诸如name,age,studentid,grade等等元素,如果没有约束,在这样的学生数据库中添加了诸如cat,foot等等与之毫不相干的元素,就破坏了我们利用xml文件作为规定数据传输的严谨性,所以W3C对xml提供了两种约束来限…