我的任务是替换特定解决方案的xsd。但是,我不断得到“在这种情况下不支持元素。”
这是原始的xsd:
public const string Xsd = @"
<xs:schema attributeFormDefault='unqualified' elementFormDefault='qualified' xmlns:xs='http://www.w3.org/2001/XMLSchema'>
<xs:element name='DataRow'>
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs='unbounded' name='Data'>
<xs:complexType>
<xs:attribute name='Site' type='xs:string' use='required' />
<xs:attribute name='Month_Num' type='xs:unsignedShort' use='required' />
<xs:attribute name='Numerator' type='xs:unsignedByte' use='required' />
<xs:attribute name='Data_Indicator' type='xs:string' use='required' />
<xs:attribute name='Budgeted' type='xs:unsignedByte' use='required' />
<xs:attribute name='Executive_Comments' type='xs:string' use='required' />
<xs:attribute name='Fleet_Executive_Comments' type='xs:string' use='required' />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>";
以下是我应该用以下内容替换它:
<xs:schema attributeFormDefault='unqualified' elementFormDefault='qualified' xmlns:xs='http://www.w3.org/2001/XMLSchema'>
<MonthlyValues>
<MonthlyValue IndicatorName='name' LocationName='name' GroupingName='name' Year='MonthNum.Value.Year' Month='MonthNum.Value.Month' Numerator='Numerator' Budget='Budget'>
</MonthlyValue>
</MonthlyValues>
</xs:schema>
架构是由其他人制作的,我原本应该能够替换它。不幸的是,它并没有这样做,我对此知之甚少。
我应该改变
<MonthlyValues>
到
<xs:element name='MonthlyValues> and keep the
<xs:sequence>
<xs:element maxOccurs='unbounded' name='MonthlyValues'>
<xs:complexType>
并添加
<MonthlyValue IndicatorName='name' LocationName='name' GroupingName='name' Year='MonthNum.Value.Year' Month='MonthNum.Value.Month' Numerator='Numerator' Budget='Budget'>
</MonthlyValue>
之后?实际上,我试过了它并没有用,但是我有什么类似的东西吗?
答案 0 :(得分:1)
XSD是其他的东西......你似乎对XSD来说是新手,所以最快的方法就是从你的示例XML生成XSD。调整生成的以匹配XML。使用下面的XSD作为起点。
<?xml version="1.0" encoding="utf-8"?>
<!--XML Schema generated by QTAssistant/XML Schema Refactoring (XSR) Module (http://www.paschidev.com)-->
<xsd:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="MonthlyValues">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="MonthlyValue">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="IndicatorName" type="xsd:string" use="required" />
<xsd:attribute name="LocationName" type="xsd:string" use="required" />
<xsd:attribute name="GroupingName" type="xsd:string" use="required" />
<xsd:attribute name="Year" type="xsd:string" use="required" />
<xsd:attribute name="Month" type="xsd:string" use="required" />
<xsd:attribute name="Numerator" type="xsd:string" use="required" />
<xsd:attribute name="Budget" type="xsd:string" use="required" />
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
你应该依靠编辑来帮助你完成学习...... Eclipse,Netbeans等都有不错的编辑,而且是免费的。