草庐IT

xml - 如何在 XSD 中定义互斥属性?

###首先是代码片段...###我想做什么...我可以在我的XSD中放入什么,以便@abc和@def不能作为同一元素上的属性共存?所以如果它们共存于同一元素上,验证将失败? 最佳答案 XSD1.0可以使用xs:key巧妙地完成。参见@Kachna'sanswer.请注意,如果某些解析器无法针对xs:key中的多个选定值失败,则它们可能会允许这两个属性。至少有oneknowncase过去发生过这种情况。XSD1.1可以使用xs:assert完成: 关于xml-如何在XSD中定义互斥属性?,

xml - XSD 元素替换组示例?

我希望能够为多个扩展类型指定单一选择类型。比如说我们有海,海里有很多种鱼。所以在XML中我会写:XSD不幸的是,这是无效的,因为我只能添加类型Fish本身,而不是它的扩展类型。 最佳答案 使用elementsubstitutiongroup...XSDXML 关于xml-XSD元素替换组示例?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/39868769/

xml - 具有属性和文本的简单内容的 XSD

如何验证具有属性的元素的文本长度。例如:Football现在我需要限制代码属性的可能值(如“FB”、“BB”、“TT”)而且我还需要限制文本(“Football”、“BasketBall”、“TableTennis”)的可能值和长度以及这些文本(“Football”、“BasketBall”、“TableTennis”)的最大长度可以是20.我试过但我无法验证文本“Foolball”的长度(以及可能的值)你能帮忙看看如何验证代码和文本吗?谢谢 最佳答案 我有这个相同的问题,当我看到有一个被接受的答案时充满希望。但是,这个答案正是我尝

xml - XSD 错误 : Character content is not allowed, 因为内容类型为空

我从以下XSD收到验证错误:使用以下XML进行验证时:anicepersonaverynicepersonthenicestpersonintheworld返回以下错误:lxml.etree.XMLSyntaxError:Element'Person':Charactercontentisnotallowed,becausethecontenttypeisempty.我错过了什么? 最佳答案 意思是“Person”不能包含字符串。对于要使用该xsd验证的xml,请使用:尝试使用xsd进行验证:

xml - 你总是必须有一个带有 xml/xsd 的根节点吗?

一直在看一个教程,它有以下xml和xsd。:我想知道在这个例子中你必须使用根节点吗?似乎没有指向“employeeS”节点的任何xsd类型定义。你总是必须在xml中有一个根节点还是你可以有 最佳答案 来自http://www.w3.org/TR/REC-xml/的XML规范(第五版)第2章这是说“每个XML文档都有逻辑和物理结构。在物理上,文档由称为实体的单元组成。一个实体可以引用其他实体以使其包含在文档中。文档从“根”开始或文档实体。”[定义:只有一个元素,称为根元素或文档元素,其任何部分都不会出现在任何其他元素的内容中。]对于所

c# - 针对 XSD 验证 XML 的最高效方法

我得到一个带有XML的字符串变量,并且有一个XSD文件。我必须根据XSD文件验证字符串中的XML,并且知道有不止一种方法(XmlDocument、XmlReader、...?)。验证后我只需要存储XML,所以我不需要它在XDocument或XmlDocument中。如果我想要最快的性能,该怎么做? 最佳答案 其他人已经提到了用于执行验证的XmlReader类,我将不再详细说明。您的问题没有指定太多上下文。您将对多个xml文档重复执行此验证,还是只执行一次?我正在阅读一个场景,其中您只是验证大量xml文档(来自第三方系统?)并存储它们

c# - 从 XML 文件推断出的 XmlSchema - 如何遍历 XSD 中的所有元素?

我有一个XML文件,我在运行时使用XmlSchemaInference类推断其XSD架构。示例文件:102550它确实有效——它很好地推断了模式:问题是:我如何(递归地?)遍历此模式中的所有元素?XmlSchemaSet类如何存储它们?我需要将它们呈现给用户,以便他们可以进行一些映射。我正在从XmlSchemaSet.Schemas属性中检索一个XmlSchema,然后呢?XmlSchema.Elements只包含一个项目(products),我找不到任何方法来查找它的子元素是什么。 最佳答案 好的!没有答案,也没有太大兴趣-我自己

xml - XSD:默认整数值范围

在XSD文件中定义特定数据类型的元素时是否有隐含的默认值范围?例如,如果我定义一个整数类型的元素:这是否有一个隐含的最小值和最大值来验证?我知道我可以像这样明确定义有效范围:但是如果我在验证XML文件时不这样做,它会默认为一系列有效值吗?我一直在研究XSD文档,但还没有找到答案。 最佳答案 嗯,这取决于数据类型......如果您查看definitionofintegeratw3:Thevaluespaceofintegeristheinfiniteset{...,-2,-1,0,1,2,...}本质上,这意味着对于整数,默认情况下没

c# - Xsd.exe 或 Svcutil.exe 将 XSD 架构转换为类

是否推荐使用svcutil工具而不是xsd工具?我不认为这是一个确认的声明,但它看起来确实如此。我对此感到困惑的原因是我使用这两种工具生成了一个类。但是,我使用xsd获得了更好的类(class)。XSD架构仅包含DataContracts。我对svcutil使用了以下命令:svcutilpath-to\xyz.xsd/language:C#/dataContractOnly/importxmltypes/out:path-to\class.cs这生成了所需的类。但是,它只包含字段的XmlNode[]对象。然后,我对xsd使用了以下命令:xsd.exe/cpath-to\xyz.xsd/

c# - 如何使用 Xsd2Code 生成的类

我是XML编码的新手。我有一个XML文件,使用XSD工具生成架构文件,然后使用Xsd2Code工具生成类文件。现在我有一个名为Timesheet.Designer.cs的文件,其中包含所有类信息和序列化方法。我能否在项目中使用相同的文件或将其保留为基类并使用Timesheet.cs生成单独的文件以访问此类和修改?谁能给我一个很好的教程或示例,说明如何在我的应用程序中使用它来读取和写入XML文件?我在XML文件中有许多complexType元素。因此,该工具也为所有这些ComplexType生成了不同的类。如果有人已经有一些代码,请在此处发布。 最佳答案