如何为以下XML需求编写xsd

如何为以下XML需求编写xsd,xml,xsd,xsd-validation,Xml,Xsd,Xsd Validation,我有以下需要XSD的xml <?xml version="1.0" encoding="UTF-8"?> <Metadata> <Field Name="Claim Number">100</Field> <Field Name="Audit Year">2010</Field> <Field Name="Auditor Name">ABC PQR</Field> </Metada

我有以下需要XSD的xml

<?xml version="1.0" encoding="UTF-8"?>
 <Metadata>
  <Field Name="Claim Number">100</Field>
  <Field Name="Audit Year">2010</Field>
  <Field Name="Auditor Name">ABC PQR</Field>
</Metadata>

100
2010
ABC PQR
在上面的xml中,如果我删除
2010
这一行,那么它必须说“审计年”在给定的xml中不存在

下面是当前的XSD,但它不是一种正确的方法

<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
<xs:simpleType name="temp" >
<xs:restriction base="xs:string">
  <xs:enumeration value="Audit Year" />
</xs:restriction>


最简单的解决方案是将每个
字段名=“X”
元素重命名为
X
,这样您的XML

<Metadata>
  <ClaimNumber>100</ClaimNumber>
  <AuditYear>2010</AuditYear>
  <Auditor>ABC PQR</Auditor>
</Metadata>

100
2010
ABC PQR

现在任务很简单。

你忘了给我们看你目前拥有的XSD。@Mathias Müller感谢你对我的问题表现出兴趣。我已经添加了我当前的XSD。请帮助我。你可以发布你的整个XSD吗?这里肯定有一些缺少的标签。@DanField我已经发布了整个XSD,没有缺少的标签。它工作正常,但我用什么方法来创建XSD可能是错误的。因此,任何建议都更可取。
<Metadata>
  <ClaimNumber>100</ClaimNumber>
  <AuditYear>2010</AuditYear>
  <Auditor>ABC PQR</Auditor>
</Metadata>