首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何从命令行使用Saxon验证XML是否符合DTD

从命令行使用Saxon验证XML是否符合DTD,可以按照以下步骤进行:

  1. 安装Saxon:Saxon是一个流行的XSLT和XQuery处理器,可以用于XML文档的验证。你可以从Saxon官方网站(https://www.saxonica.com/)下载适合你操作系统的版本,并按照官方提供的安装指南进行安装。
  2. 准备XML和DTD文件:确保你已经准备好需要验证的XML文件和相应的DTD文件。XML文件是待验证的XML文档,DTD文件是定义XML结构的文档类型定义。
  3. 打开命令行终端:打开命令行终端,进入到Saxon安装目录下的bin文件夹。
  4. 运行验证命令:在命令行中输入以下命令来验证XML是否符合DTD:
  5. 运行验证命令:在命令行中输入以下命令来验证XML是否符合DTD:
  6. 其中,saxon9he.jar是Saxon的可执行文件,-val:strict表示使用严格模式进行验证,-xsd:your_dtd_file.dtd指定DTD文件的路径和文件名,-s:your_xml_file.xml指定XML文件的路径和文件名。
  7. 查看验证结果:命令执行完毕后,Saxon会输出验证结果。如果XML符合DTD,将显示"Validation successful";如果XML不符合DTD,将显示相应的错误信息。

这样,你就可以通过命令行使用Saxon验证XML是否符合DTD了。

注意:本回答中提到的Saxon是一款开源软件,用于演示目的。腾讯云没有直接相关的产品或服务与此问题相关。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Java XML和JSON:Java SE的文档处理,第1部分

第7章定义了关键术语,浏览JSON语法,在JavaScript上下文中演示JSON(因为Java SE尚未正式支持JSON),并展示了如何验证JSON对象(通过JSON Schema Validator...第6章介绍了如何使用SAXON超越XSLT / XPath 1.0。 第11章是探索杰克逊的一个新的(冗长的)章节。 第12章是探索JSON-P的新(冗长)章节。...Java XML和JSON,第6章介绍了如何使用SAXON覆盖Xalan,然后验证是否正在使用SAXON。...首先,main()必须使用两个命令行参数调用清单1的方法:第一个参数命名XML文件; 第二个参数命名XSL文件。 第二个区别是我没有在变压器上设置任何输出属性。...具体来说,我没有指定输出方法或是否使用缩进。这些任务可以在XSL文件中完成。

5.6K30
  • Java XML和JSON:Java SE的文档处理,第1部分

    第7章定义了关键术语,浏览JSON语法,在JavaScript上下文中演示JSON(因为Java SE尚未正式支持JSON),并展示了如何验证JSON对象(通过JSON Schema Validator...第6章介绍了如何使用SAXON超越XSLT / XPath 1.0。 第11章是探索杰克逊的一个新的(冗长的)章节。 第12章是探索JSON-P的新(冗长)章节。...Java XML和JSON,第6章介绍了如何使用SAXON覆盖Xalan,然后验证是否正在使用SAXON。...首先,main()必须使用两个命令行参数调用清单1的方法:第一个参数命名XML文件; 第二个参数命名XSL文件。 第二个区别是我没有在变压器上设置任何输出属性。...具体来说,我没有指定输出方法或是否使用缩进。这些任务可以在XSL文件中完成。

    6.3K10

    XML 相关漏洞风险研究

    与基于DTD(文档类型定义)的验证相比,XML Schema 提供了更丰富的数据类型支持、更强的约束定义能力以及命名空间的支持。...既然可以将 XML 转换成 HTML 来渲染,那么是否支持 HTML 中的一些特性呢,比如执行 JavaScript 脚本?答案是肯定的。...但如果你只禁用了外部实体的话,别忘记 DTD 本身也是可以使用 “外部” 引用的: <!...请求变体 传统上我们测试 XXE 漏洞会在遇到有 XML 请求时尝试修改请求体去验证外部实体的解析情况,但在一些场景中我们可以无中生有,将原本不是 XML 的请求修改成 XML 进行测试。...xml version="1.0" encoding="UTF-8"?> bar 如果服务端返回的结果相同,那么就可能解析 XML,从而进行下一步 XXE 验证

    29910

    【Java 进阶篇】Java XML约束:确保数据一致性和有效性

    XML约束是一种规则集,定义了XML文档的结构、元素、属性和数据类型。本篇博客将详细介绍Java中如何使用XML约束,以及如何创建、验证和应用XML约束。 什么是XML约束?...使用DTD验证XML 接下来,我们将创建一个XML文档,并使用Java来验证是否符合上述DTD的约束。 以下是一个名为 books.xmlXML示例: <?xml version="1.0"?...使用XSD验证XML 接下来,我们将创建一个XML文档,并使用Java来验证是否符合上述XSD的约束。 以下是一个名为 books.xmlXML示例,该XML文档与之前的DTD示例相同: <?...然后,我们使用Validator来验证XML文档。如果XML文档不符合XSD的约束,将抛出相应的错误。...然后,客户端发送订单请求,并在服务器端使用Java来验证请求是否符合XSD。如果验证通过,服务器会处理订单并返回确认响应。

    40910

    DTDXML Schema、WSDL

    它是标准通用标记语言(SGML)和可扩展标记语言(XML)1.0版规格的一部分,文档可根据某种DTD语法规则验证格式是否符合此规则。...文档类型定义也可用做保证标准通用标记语言、可扩展标记语言文档格式的合法性,可通过比较文档和文档类型定义文件来检查文档是否符合规范,元素和标签使用是否正确。文件实例提供应用程序一个数据交换的格式。...为什么使用 DTD?通过 DTD,您的每一个 XML 文件均可携带一个有关其自身格式的描述。通过 DTD,独立的团体可一致地使用某个标准的 DTD 来交换数据。...而您的应用程序也可使用某个标准的 DTD验证从外部接收到的数据。您还可以使用 DTD验证您自身的数据。...我们认为 XML Schema 很快会将 DTD 取而代之,被用在大部分的网络应用程序中。XML Schema 是基于 XMLDTD 替代物。

    72230

    Java 中文官方教程 2022 版(三十八)

    激活验证允许应用程序判断 XML 文档是否包含正确的标记,或这些标记是否按正确顺序出现。换句话说,它可以告诉您文档是否有效。...然而,如果未激活验证,它只能告诉文档是否格式良好,就像在上一节中删除 XML 元素的闭合标记时所示。要进行验证XML 文档需要关联到一个 DTDXML 模式。...您可以从命令行执行: java -Djavax.xml.parsers.SAXParserFactory=*yourFactoryHere* [...]...如果激活了 DTD 验证,则将检查正在解析的 XML 文件的结构是否符合play.dtd中提供的结构。) <!...在文本编辑器中打开 DTD 文件data/play.dtd。 在 DTD 文件中,你可以看到 元素的声明,以及可以在符合剧本 DTDXML 文档中使用的所有其他元素。

    6800

    struts2(四)之输入校验

    一、输入校验概述   在以前我们写一个登录页面时,并没有限制用户的输入,不管用户输入什么,我们都存入数据库中,很显然这是不行的,我们需要检测用户输入的文本是否合法,   是否符合我们需要的文本格式,符合就放行...现在   我们就来说说如何使用struts2中的校验功能把。   ...在这里使用了一个addFieldError("xxx","yyy"); 将错误信息存起来,等回到页面在显示出来,如何显示呢?   ...2)如何使用校验器     如果想要查看某个校验规则如何使用的话,看源码,然后打开Javadoc进行查看,其中会有例子让我们查看的。比如,我需要查看requiredstring的使用方法。     ...-- struts2框架为我们集成了很多的内置验证器。requiredstring会验证输入内容是否为空,是否为空字符串。

    1.2K80

    【死磕 Spring】----- IOC 之 获取验证模型

    XML 文件的验证模式保证了 XML 文件的正确性 DTD 与 XSD 的区别 DTD(Document Type Definition),即文档类型定义,为 XML 文件的验证机制,属于 XML 文件中组成的一部分...其实 DTD 就相当于 XML 中的 “词汇”和“语法”,我们可以通过比较 XML 文件和 DTD 文件 来看文档是否符合规范,元素和标签使用是否正确。...要在 Spring 中使用 DTD,需要在 Spring XML 文件头部声明: DTD 在一定的阶段推动了 XML 的发展,但是它本身存在着一些缺陷: 它没有使用 XML 格式,而是自己定义了一套格式,相对解析器的重用性较差;而且 DTD 的构建和访问没有标准的编程接口,因而解析器很难简单的解析...文件的内容,判断内容中是否包含有 DOCTYPE ,如果是 则为 DTD,否则为 XSD,当然只会读取到 第一个 "<" 处,因为 验证模式一定会在第一个 “<” 之前。

    56840

    定制SAX解析器的使用方式

    解析器使用标准Xerces-C++库,该库符合XML1.0推荐标准和许多相关标准。可用的解析器选项可以通过以下方式控制SAX解析器的行为:可以设置标志来指定要执行的验证和处理类型。...请注意,解析器始终检查文档是否为格式良好的XML文档。可以指感兴趣的事件(即希望解析器查找的项目)。为此,需要指定一个掩码来指示感兴趣的事件。可以提供验证文档所依据的架构规范。...可用的选项取决于如何使用InterSystems IRIS SAX Parser,如下表所示:%XML类中的SAX解析器选项Option%XML.Reader%XML.TextReader%XML.XPATH.Document...基本标志如下: $$$SAXVALIDATION -是否执行模式验证。如果此标志为开启(默认值),则报告所有验证错误。 $$$SAXNAMESPACES-指定是否识别命名空间。...$$$SAXNOVALIDATION - 不执行架构验证,但可以识别命名空间和命名空间前缀。请注意,SAX解析器总是检查文档是否为格式良好的XML文档。以下片段显示了如何组合解析器选项:...

    1.2K10

    学透之IoC篇 - BeanDefinition 的加载阶段(XML 文件)

    获取对应的 DTD 或 XSD 文件,用于对 XML 文件进行验证,这个类比较关键,在后续文章会讲到 获取 XML 文件验证模式,保证 XML 文件的正确性,通常情况下都是 XSD 模式 获取指定的验证模式...DTD(Document Type Definition),即文档类型定义,为 XML 文件的验证机制,属于 XML 文件中组成的一部分。...DTD 是一种保证 XML 文档格式正确的有效验证方式,它定义了相关 XML 文档的元素、属性、排列方式、元素的内容类型以及元素的层次结构。...其实 DTD 就相当于 XML 中的 “词汇”和“语法”,我们可以通过比较 XML 文件和 DTD 文件 来看文档是否符合规范,元素和标签使用是否正确。...DTD 在一定的阶段推动了 XML 的发展,但是它本身存在着一些缺陷: 它没有使用 XML 格式,而是自己定义了一套格式,相对解析器的重用性较差;而且 DTD 的构建和访问没有标准的编程接口,导致解析器很难简单的解析

    64810

    JS操作XMLDTD介绍及使用方法分析

    本文实例讲述了JS操作XMLDTD介绍及使用方法。分享给大家供大家参考,具体如下: 什么是DTD,为什么需要DTD?...有效的xml文档:符合xml语法规则的同时还需要符合DTD文档类型定义。...应用程序可以使用一个标准DTD校验从外部世界接收来的XML数据是否有效。 可以使用DTD校验自己的XML数据。 元素的定义 ? DTD中的修饰符号: ? 这部分符号可以联系正则表达式的符号来记忆。...重点内容 如何生成DTD文档 DTD文档有三种应用形式: 1.内部DTD文档 <!DOCTYPE 根元素[定义内容] 2.外部DTD文档 <!...内部DTD 一个内部DTD的例子: 上半部分是DTD,下面是XML文档,文档要符合DTD。 <?xml version="1.0" encoding="UTF-8"? <!

    1.7K21

    Spring5源码解析_IOC之容器的基本实现

    DTO是一种保证XML文档格式正确的有效方法,可以通过比较XML文档和DTO文件来看文档是否符合规范,元素和标签使用是否正确,一个DTO文档包含:元素的定义规则,元素间关系的定义规则,元素可以使用的属性...,可使用的实体或符合规则。...使用DTO验证模式的时候需要在XML文件的头部声明,以下是在Spring中使用DTO声明方式的代码: <!...XML Schema描述了XML文档的结构,可以用一个指定的XML Schema来验证某个XML文档,以检查该XML文档是否符合其要求,文档设计者可以通过XML Schema指定一个XML文档所允许的结构和内容...那么是如何判断是否是默认空间还是自定义命名空间呢?

    18620

    XML的约束——DTD

    1.什么是DTD?有什么作用? 简单来说:文档类型定义(约束) 规范一点就是:是一套关于标记符的语法规则。它是XML1.0版规格的一部分,是XML文件的验证机制,属于XML文件组成的一部分。...DTD 是一种保证XML文档格式正确的有效方法,可通过比较XML文档和DTD文件来看文档是否符合规范,元素和标签使用是否正确。...XML文件提供应用程序一个数据交换的格式,DTD正是让XML文件能成为数据交换标准,因为不同的公司只需定义好标准DTD,各公司都能依DTD建立XML文件,并且进行验证,如此就可以轻易的建立标准和交换数据...DTD文件是一个ASCII文本文件,后缀名为.dtd。 2.那么什么是XML?...DOCTYPE pers SYSTEM "test.dtd">——在下面XML中这句代码DOCTYPE要在XML首句) DTD Schema (简单解释一下下:a: 两种形式 dtd schema,b

    52130

    XML基础知识概念

    DTD(文档类型定义)包含在XML文档或外部文件中的一系列文本指令。 它定义了可以在文档中使用的所有有效元素和属性。 dtd本身不使用XML语法。...处理指令(PI)一种指令(在序言中),旨在告诉应用程序如何使用XML文档或如何处理它。 一个例子; 这将样式表与文档关联起来。<?...序言以XML声明(指示使用XML版本)开始,然后可能包括DTD声明或模式声明以及处理指令。 (从技术上讲,不需要DTD或模式。 此外,从技术上讲,可以将两者放在同一个文件中。)...在InterSystems IRIS XML支持中,使用类参数来指定元素是否限定。schema一种为一组XML文档指定元信息的文档,可作为DTD的替代。...与DTD一样,可以使用模式来验证特定XML文档的内容。 对于某些应用程序,XML模式提供了与dtd相比的几个优势,包括:XML模式是有效的XML文档,因此更容易开发操作模式的工具。

    93420

    XML是历史前进中的怪胎

    而HTML是从SGML演进而来的,SGML最初是从出版业发展而来的(就像最初的DocBook是一种SGML语言一样),并且具有灵活的解析器功能,因此不太深入技术的编写者可以在不了解它标签如何进行工作的情况之下使用它们...因为严格性是XML被创造出来解决的目标,Postel定律不适用,并且有大量的XML验证器,每一个都比它的父验证器更严格,每次运行时从Internet静默下载DTD,导致你在Debug可以运行任意代码,如果远程...你可以获取XML解析器,编写DTD,并自动生成几乎所有内容的代码,使用XSL,可将自动解析的XML文件自动生成输出文件。如果有需要,你甚至可以通过XML输出更多的XML,并且可以永远的持续下去。...最重要的是,你不需要与你的供应商去争论他们的数据文件是否有效,因为符合标准的XML验证工具会告诉你。所有送到你手上的文件,都会在这之前运行验证程序,你永远不会收到无效的文件,生活将会是完美的。...在现在的新时代,我们可以轻松地使用JSON(如果它存在)或CVS或其他任何东西交换数据,XML已经是一种落后的时尚,我不敢保证是否会出现一种能够完全替代它的新的标记语言,但至少现在来说,它确实仍然做着那

    50100
    领券