如何从XSD定义生成“HTML选择”

如何从XSD定义生成“HTML选择”,xsd,Xsd,我尝试从XSD生成HTML代码,并计划使用定义的值生成一个选择。 我可以在XSD中使用限制,但我也需要选项的值 <select name="Pizza" size="5"> <option value="P101">Pizza Napoli</option> <option value="P102">Pizza Funghi</option> </select> 使用什么样的XSD来定义带有选项和值

我尝试从XSD生成HTML代码,并计划使用定义的值生成一个选择。 我可以在XSD中使用限制,但我也需要选项的值

<select name="Pizza" size="5">
      <option value="P101">Pizza Napoli</option>
      <option value="P102">Pizza Funghi</option>
</select>
使用什么样的XSD来定义带有选项和值的HTML select?

标准的xs:restriction将允许您标记值,但对于描述,我只在模式顶部使用自定义名称空间。像这样的东西可以做到:

 <xs:element name="Pizza" xmlns:pizza="http://my.custom.namespace/pizza">
   <xs:simpleType>
     <xs:restriction base="xs:string">
       <xs:enumeration value="P101" pizza:description="Pizza Napoli"/>
       <xs:enumeration value="P102" pizza:description="Pizza Funghi"/>
     </xs:restriction>
   </xs:simpleType>
 </xs:element> 
XML是可扩展的,因此XML模式也是可扩展的

这种方法的好处是,您仍然可以轻松地根据模式验证数据。验证器只需忽略自定义名称空间,但在转换为HTML时,您可以按照自己的方式写出选项