我正在寻找可以从XML文件生成XSD的工具或Java代码或类库/API。(类似于.NETFrameworksdk中的xsd.exe实用程序) 最佳答案 这些工具可以提供一个很好的起点,但它们不能替代思考实际架构约束应该是什么。您有机会犯两种错误:(1)允许不应允许的XML,以及(2)不允许应该没问题的XML。举个例子,假设您想从包含“性别”标签的几千个患者记录中推断出一个XSD(我以前从事医疗记录软件方面的工作)。该工具可能会遇到“M”和“F”作为值,并可能推断出该元素是一个枚举。但是,其他有效(尽管很少使用)值是B(两者)、U(未
我在本地xsd文件中有一些XML和XML架构。XML文档不包含任何架构信息。我想根据Cocoa中的xsd架构文件验证XML文档(这意味着我更喜欢基于NS/CF/libxml的东西,而不是外部库)。我可以跨越xmllint,这可能会奏效,但我一直在寻找一种无需启动外部任务即可执行此操作的方法。 最佳答案 如果您的xml文档没有对xml模式的引用,您应该自己添加它,然后使用NSXMLDocumentvalidateAndReturnError:方法进行验证。这是一个如何调整xml文档以引用xsd的示例。显然,您必须调整此代码以引用您的本
我需要使用PHP提取XSD文件的内容。我不想根据XML验证它;我只需要获取一些节点并检查一些属性。这是我的XSD示例:我不知道这是否可行,所以我只是向StackOverflow方面的专家请教。谢谢!PS:我正在使用CodeIgniter,所以如果有人知道任何扩展或类似的东西,请在此处发布。编辑:问题已解决!这里有一个链接可以帮助和我有同样问题的人:http://www.php.net/manual/en/domdocument.load.php#57911简单地说,有人在使用DOMDocument类之前使用DOMXPath类来浏览XSD读取(就像rik告诉我的那样)。XSD不是空的。我
所以我有大量的XML文件。多年来,它们引起了麻烦,因为编写它们的人是手工编写的,因此自然会出现错误。现在是我们着手验证它们并就尝试使用这些XML文件时出现的问题提供反馈的时候了。我正在使用SAX解析器并获取错误列表。下面是我的代码BookValidationErrorHandlererrorHandler=newBookValidationErrorHandler();SAXParserFactoryfactory=SAXParserFactory.newInstance();factory.setValidating(true);factory.setNamespaceAware(t
这个问题在这里已经有了答案:AnytoolstogenerateanXSDschemafromanXMLinstancedocument?[closed](10个答案)关闭9年前。我需要一个工具来自动从xml文件生成xsd。是否有工具可以做到这一点?它是如何工作的?谢谢!
我有一个元素A,它可以是简单元素,也可以是动态创建的复杂元素。示例xml在这里:johnkathybat我的xsd是这样的:但在这里我遇到了一个异常:元素“A”不能有字符[children],因为该类型的内容类型是纯元素 最佳答案 您需要在类型中指定混合内容:此外,在选项中包含一个序列也有点多余。你要么想要一个序列,要么不想要。希望对您有所帮助。 关于java-元素中的xsd验证抛出内容类型异常,我们在StackOverflow上找到一个类似的问题: http
我使用以下代码根据XSD文件验证XML文件。当发现错误并且XML文件中的xmlns值有效时,它会成功调用验证处理程序。当它无效时,不会调用验证处理程序。privatevoidui_validate_Click(objectsender,EventArgse){try{ui_output.Text="";XmlDocumentxml_document=newXmlDocument();xml_document.LoadXml(ui_XML.Text);xml_document.Schemas.Add(null,XmlReader.Create(newSystem.IO.StringRea
如果这是一个愚蠢的问题,我深表歉意,到目前为止我还没有真正对xml做过任何事情。我希望能够将一些xml反序列化为一个具有object类型属性的类。此属性可以是int、guid或string。在xml中,我希望将此属性定义为属性。我希望我的xsd看起来像这样:但是,visualstudiointellisense没有列出选项“xsd:anySimpleType”。这是智能感知的问题还是我做错了什么? 最佳答案 虽然拥有xs:anySimpleType类型的属性是合法的,但我会避免使用它并改用xs:string。这是因为规范留下了许多关
我是xsd验证的新手,我正在尝试验证一个选择标签是否有一组特定的元素,但也有任意命名的元素。类似于以下内容:......XML:...exampletextexampletextagainexampletext...这在xsd中可能吗?验证新的任意命名节点? 最佳答案 您可以使用xs:any通配符来允许使用任何元素名称,或一组特定命名空间中的任何名称。您不能进一步限制名称(除非在XSD1.1中使用断言)。使用具有内部结构的名称(例如address-line-1、address-line-2、address-line-3)在XML设计
我有一个xml模式(xsd)文件,它位于一个jar文件中,该文件将包含在运行时类路径中。在我的Wsdl中,我需要通过在jar文件中提供位置来导入模式。我尝试使用XML目录,但我使用的服务器(websphere)不解析xml目录引用。 最佳答案 我们遇到了类似的问题,其中包含XSD的JAR被添加到类路径中,我们不得不使用schemaLocation从WSDL引用它。我们的项目是基于maven的,所以我们使用maven-dependency-plugin的unpack目标在编译之前将文件下载到resources文件夹。org.apach