具有相同元素名称但属性值不同的XML的XSD架构[关闭]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了具有相同元素名称但属性值不同的XML的XSD架构[关闭]相关的知识,希望对你有一定的参考价值。

我以前从未在XSD上工作过。今天我需要在数据库中验证1000万个XMLS。在通过不同的技术进行验证之后,我决定使用c#中的XSD和xml方法来验证xmls。我需要帮助为我的xml结构创建XSD。游戏场以不同的xmls重复任意一次。

<PlayAttributes>
  <PlayFields>
    <PlayField ID="XInfo.XInfo_QBAtPass" TS="">P</PlayField>
    <PlayField ID="XInfo.XInfo_Huddle" TS="">F</PlayField>
    <PlayField ID="XInfo.XInfo_DefScoreAfter" TS="">30</PlayField>
    <PlayField ID="Play.Offense.Off_Text_21" TS="2013-11-15 13:55:54">MWMUG</PlayField>
    <PlayField ID="Play.Shared.playResult" TS="2013-10-21 07:46:57">0</PlayField>
    <PlayField ID="Play.Migration.repTime" TS="2013-10-21 07:46:57">123</PlayField>
    <PlayField ID="Play.Migration.offensiveTeam" TS="2013-10-21 07:46:57">CAR</PlayField>
    <PlayField ID="Play.Offense.Off_Front" TS="2013-11-15 13:55:50">N42ELX</PlayField>
    <PlayField ID="XInfo.XInfo_LateralSeq" TS="">F</PlayField>
    <PlayField ID="Play.Offense.Off_Slot_Route" TS="2013-11-15 13:09:41">TREY</PlayField>
    <PlayField ID="Play.Offense.Off_Text_24" TS="2013-11-15 13:09:37">G FR</PlayField>
    <PlayField ID="XInfo.XInfo_EventCode" TS="">Incomplete Pass</PlayField>
    <PlayField ID="XInfo.XInfo_PlayersRushed" TS="">4</PlayField>
    <PlayField ID="XInfo.XInfo_YdGained" TS="">0</PlayField>
    <PlayField ID="XInfo.XInfo_Receiver" TS="">Quick, Brian (390159)</PlayField>
    <PlayField ID="XInfo.XInfo_Location" TS="">L</PlayField>
    <PlayField ID="Play.Shared.Field_2_Minute" TS="2013-11-15 13:08:07">2</PlayField>
    <PlayField ID="XInfo.XInfo_DriveStart" TS="">692</PlayField>
    <PlayField ID="Football.FrontTypeNew" TS="2013-11-15 13:55:48">E</PlayField>
    <PlayField ID="XInfo.XInfo_OffRole1" TS="">NO-No Data</PlayField>
    <PlayField ID="XInfo.XInfo_OffRole2" TS="">NO-No Data</PlayField>
    <PlayField ID="XInfo.XInfo_Unit" TS="">Offense</PlayField>
  </PlayFields>
</PlayAttributes>
答案

可能值得一看XML Schema Definition Tool (xsd),尤其是关于example usage的部分:

以下命令从myFile.xml生成XML架构并将其保存到指定目录。

xsd myFile.xml /outputdir:myOutputDir

以上是关于具有相同元素名称但属性值不同的XML的XSD架构[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

使用 SAX 解析器,如何解析具有相同名称标签但元素不同的 xml 文件?

在 PySpark 中使用 XSD

有没有办法限制根 xml 元素名称应该与 XSD 文件中的相同?

SimpleXML:选择具有特定属性值的元素

为具有不同名称和不同@class 属性值的多个元素创建一个包装器元素

XML 和 XSD 验证失败:元素同时具有“类型”属性和“匿名类型”子项