C# 验证XML】的更多相关文章

XML Schema 语言也称作 XML Schema 定义(XML Schema Definition,XSD),作用是定义 XML 文档的合法构建模块,类似 DTD,但更加强大. 作用有: ①定义可出现在文档中的元素 ②定义可出现在文档中的属性 ③定义哪个元素是子元素 ④定义子元素的次序 ⑤定义子元素的数目 ⑥定义元素是否为空,或者是否可包含文本 ⑦定义元素和属性的数据类型 ⑧定义元素和属性的默认值以及固定值 XSD元素可分为简单元素和复杂元素. 一.简单元素 简易元素指仅包含文本的元素,它…
假使说XML是一个数据库,那么XSD就是这个数据库的结构.由此可见,XSD是如此重要,如果没有它,我们如何声明以及验证我们需要的XML数据文件的格式和合法性呢?那是不可能完成的任务,如果你将XML数据文件当作普通的文本文件去验证的话. 我用下面一个例子来解释如何定义XSD以及如何使用它来验证 1. 首先来看一下我们的数据文件 <?xml version="1.0" encoding="utf-8" ?> <Order> <OrderID…
C# 使用xsd文件验证XML 格式是否正确 核心示例代码: //创建xmlDocument XmlDocument doc = new XmlDocument(); //创建声明段 如<?xml version="1.0" encoding="utf-8" ?> doc.AppendChild(doc.CreateXmlDeclaration("1.0", "utf-8", null)); //创建一个根节点 K…
DTD验证XML文档        1.DTD简介:DTD是Document Type Definition的缩写,即文档定义            1.1:DTD的内容包含:                    元素定义规则                    元素之间的关系规则                    属性的定义规则            1.2:DTD的作用如下:                    DTD使每个XML文件可以携带一个自身格式的描述          …
一.验证XML文档 若要验证 XML 文档,需要构造一个 XmlReaderSettings 对象,其中包含用于验证 XML 文档的 XML 架构定义语言 (XSD) 架构.Schema是用于描述和规范XML文档的逻辑结构的一种语言,它最大的作用就是验证XML文件逻辑结构的正确性. 二.验证的类 public class XMLValidate { /// <summary> /// 辅助验证变量 /// </summary> private static bool isValid…
使用XSD进行批量数据导入时生成的XML数据有效性这样的功能已经不是第一次做了,之前做的时候都没有碰到什么问题,这些天在开发中遇到了一个很头痛的问题就是无论XSD文件规则怎么写,验证都是通过的. 下面是具体的代码: C#验证部分: /// <summary> /// 对已转换成映射XML文件使用指定架构文件进行验证 /// </summary> /// <param name="mappingXmlFile">映射XML文件</param>…
最近做项目时,用到了xml的序列化与反序列化, 发现最好用xsd来验证xml, 因为反序列化xml不校验xsd. 方法:xmlData变量为xml字符串 MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(xmlData)); ms.Position = 0; string path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, GetNoNamespaceSchemaL…
拥有正确语法的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模型.在这里…
转自https://www.cnblogs.com/gdjlc/archive/2013/09/08/3308229.html XML Schema 语言也称作 XML Schema 定义(XML Schema Definition,XSD),作用是定义 XML 文档的合法构建模块,类似 DTD,但更加强大.作用有:①定义可出现在文档中的元素②定义可出现在文档中的属性③定义哪个元素是子元素④定义子元素的次序⑤定义子元素的数目⑥定义元素是否为空,或者是否可包含文本⑦定义元素和属性的数据类型⑧定义元…
class ValidateXML { public string ErrString = string.Empty; public void ValidationEventCallBack(Object sender, ValidationEventArgs e) { if (e.Severity == XmlSeverityType.Warning)//区分是警告还是错误 { //Console.WriteLine("验证成功!警告:" + e.Message); ErrStrin…
市场上的MFC第三方库很多,最终选定dskinlite企业版,成熟度比较高,当然价格也略贵. 在2017年仍然使用MFC是有些另类,但特定场景很适用,也适合不愿转型的老程序员. 目前处于学习阶段,欢迎加扣扣交流(80101277) xml达到一定规模后,验证文档有效性成了当务之急,通常有命令行的xmlint.这里推荐xmlspy(有2013破解版). 例如: <color id="system_bg" value="RGB(255,255)" />  …
procedure TFrmPrintReport.Button3Click(Sender: TObject);var  SchemaDoc, XmlDoc: IXMLDOMDocument2;  SchemaCache: IXMLDOMSchemaCollection;  Error: IXMLDOMParseError;begin    // Load the data    XmlDoc := CoDOMDocument40.Create;    XmlDoc.async := False…
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN" "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd"> <validators> <…
<html> <head> <script language="javascript"> <!-- //加载解析器对象 var xmldoc = new ActiveXObject("Microsoft.XMLDOM"); //开启xml校验 xmldoc.validateOnParse = "true"; //要校验的文件 xmldoc.load("tiaojianjie.xml")…
using System; using System.Text; using System.Xml; namespace WebApplication1 { public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } StringBuilder sb = null; protected void ValidateFile(object s…
1.内部DTD       最简单的使用DTD的方法是在XML文件的序言部分加入一个DTD描述,加入的位置是紧接在XML处理指示之后.一个包含DTD的XML文件的结构为:    <?xml version = "1.0" encoding="GB2312" standalone = "yes"?><!DOCTYPE 根元素名[    元素描述    ]>文件体. 一个完整的XML文件为: <?xml version …
如果想变成自己的,就把这里的xml文档名替换成自己xml文档名 var xmlDoc = new ActiveXObject("Microsoft.XMLDOM") xmlDoc.async="false"; xmlDoc.validateOnParse="true"; /**********************/ xmlDoc.load("book.xml"); /**********************/ docu…
import sys import StringIO import lxml from lxml import etree from StringIO import StringIO # Construct XML relevant to the XML schema we're validating against. By altering the string, adding/removing elements # we can force different errors to occur…
XML 文档包含元素和属性等,它们提供一种灵活且功能强大的方法,为应用程序和组织之间交换数据.所有的 XML 文档(以及 HTML 文档)均由以下简单的构建模块构成: 1.元素 元素是XML的主要构建模块,将xml数据划分为不同部分和语义的标签,如<note></note> 2.属性 属性可提供有关元素的额外信息,被置于元素的开始标签中,总是以名称/值的形式成对出现的. <img src="computer.gif" /> 元素的名称是 "…
XML DTD验证 一.什么是DTD 文档类型定义(DTD:Document Type Definition)可定义合法的XML文档构建模块.它使用一系列合法的元素来定义文档的结构. DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用. 二.DTD的作用 1.有了DTD,每个XML可以携带一个自身格式的描述. 2.有了DTD,不同组织可以使用一个通用的DTD来交换数据. 3.应用程序中使用DTD校检从外部接受的XML数据是否有效. 三.DTD中包含的内容 1.元素的定义规则:在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是可以扩展的.…
1.xml中写入sql有时报错,例如有大于号小于号,要用<![CDATA[                  ]]>扩起来 2.验证xml有错的方式,以浏览器方式打开,如果正常打开,无错. 所有 XML 文档中的文本均会被解析器解析. 只有 CDATA 区段(CDATA section)中的文本会被解析器忽略. PCDATA PCDATA 指的是被解析的字符数据(Parsed Character Data). XML 解析器通常会解析 XML 文档中所有的文本. 当某个 XML 元素被解析时,…
XML允许创作者定义自己的标签,因其灵活的特性让其难以编写和解析.因此必须使用某种模式来约束其结构.目前最流行的这种模式有两种:DTD和SCHEMA,而后者以其独特的优势即将取代DTD模式,目前只是过渡时期.XML教程请参考这里. 为什么要用Schema DTD 的局限性 DTD不遵守XML语法(写XML文档实例时候用一种语法,写DTD的时候用另外一种语法) DTD数据类型有限(与数据库数据类型不一致) DTD不可扩展 DTD不支持命名空间(命名冲突) .Schema的新特性 Schema基于X…
XML 验证 拥有正确语法的 XML 被称为"形式良好"的 XML. 通过 DTD 验证的XML是"合法"的 XML. 形式良好的 XML 文档 "形式良好"的 XML 文档拥有正确的语法. 在前面的章节描述的语法规则: XML 文档必须有一个根元素 XML元素都必须有一个关闭标签 XML 标签对大小写敏感 XML 元素必须被正确的嵌套 XML 属性值必须加引号 Tove Jani Reminder Don't forget me this we…
XML 验证器 使用我们的 XML 验证器来对您的 XML 文件进行语法检查. XML 错误会终止您的程序 XML 文档中的错误会终止您的 XML 应用程序. W3C 的 XML 规范声明:如果 XML 文档存在错误,那么程序就不应当继续处理这个文档.理由是,XML 软件应当轻巧,快速,具有良好的兼容性. 如果使用 HTML,创建包含大量错误的文档是有可能的(比如您忘记了结束标签).其中一个主要的原因是 HTML 浏览器相当臃肿,兼容性也很差,并且它们有自己的方式来确定当发现错误时文档应该显示为…
一.sax简介 SAX是事件驱动型的XML解析方式.顺序读取XML文件,生成事件,传播到用户定义的回调方法中来处理XML文件. 优点: 分段处理xml,而不是将整个xml一次加载进内存,内存占用少,速度快. 缺点: 顺序访问,不能回退.编码复杂,需要用户把控数据结构. 二.使用流程 1.创建工厂 SAXParserFactory saxParserFactory = SAXParserFactory.newInstance(); 2.设置工厂属性(可选) saxParserFactory.set…
XML 文档形成了一种树结构,它从"根部"开始,然后扩展到"枝叶". 一个 XML 文档实例 XML 文档使用简单的具有自我描述性的语法: <?xml version="1.0" encoding="UTF-8"?> <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</hea…
从一个范例看XML的应用 引言 如果你已经看了Asp.Net Ajax的两种基本开发模式 这篇文章,你可能很快会发现这样一个问题:在那篇文章的方式2中,客户端仅仅是发送了页面上一个文本框的内容到服务端,而服务端的Web服务方法也只接收一个来自客户端的字符串类型的数值.而很多时候,服务端的方法期望接收的是一个自定义类型,或者是多个不同类型的参数.为了能够处理这种由一个字符串包含多种不同类型值情况,我们可以采用XML. 这篇文章将构建一个简单的图书查询页面,通过这个程序,我们将会看到XML.XSD模…
在本教程中,我们将讨论如何使用Struts 2的XML验证方法来验证表单字段中用户的输入.在前面的教程中,我们讨论了在Action类中使用validate方法验证用户的输入.使用单独的XML验证文件让您可以内置到Struts 2框架的验证器. 贴个本帖的地址,以免被爬:struts2官方 中文教程 系列十一:使用XML进行表单验证  即 http://www.cnblogs.com/linghaoxinpian/p/6938720.html 下载本章代码 为了使用户能够编辑存储在Person对象…
Odoo 源码包含了2个 relax ng 文件,也是odoo sa用来验证xml的正确性的. openerp/import_xml.rng openerp/addons/base/rng/view.rng 阅读源码,发现odoo 在装载xml 文件以及加载 view到数据库的时候,会使用 lxml 调用 relax ng 来验证 XML文件,以及view 定义的正确性. 源码 addons/base/ir/ir_ui_view.py 里面的 _check_xml 方法 源码 tools/con…