xml/schema/lib/elements/ipxe.xsd
2020-09-03 20:11:31 -04:00

63 lines
2.3 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:include schemaLocation="../types/unix.xsd"/>
<xs:include schemaLocation="../types/ipxe.xsd"/>
<xs:include schemaLocation="../types/git.xsd"/>
<xs:complexType name="e_ipxe_extratargets">
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element name="target" type="t_ipxe_extratarget" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="e_ipxe_opts">
<xs:choice minOccurs="1" maxOccurs="2">
<xs:element name="enable" maxOccurs="1">
<xs:complexType>
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element name="opt" minOccurs="1" type="t_ipxe_patchopt"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="disable" maxOccurs="1">
<xs:complexType>
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element name="opt" minOccurs="1" type="t_ipxe_patchopt"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
<xs:attribute name="file" type="t_unix_relfilepath" use="required"/>
</xs:complexType>
<xs:complexType name="e_ipxe_optswitch">
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element name="opts" minOccurs="1" maxOccurs="unbounded" type="e_ipxe_opts"/>
</xs:sequence>
<xs:attribute name="subDir" type="t_unix_reldirpath" use="optional"/>
</xs:complexType>
<xs:complexType name="e_ipxe_scripts">
<xs:sequence minOccurs="1" maxOccurs="unbounded">
<xs:element name="script" minOccurs="1" maxOccurs="unbounded" type="t_ipxe_script"/>
</xs:sequence>
<xs:attribute name="srcDir" type="t_unix_anydir" use="optional"/>
</xs:complexType>
<xs:complexType name="e_ipxe_upstream">
<xs:sequence>
<xs:choice minOccurs="1" maxOccurs="2">
<xs:element name="dest" minOccurs="1" maxOccurs="1" type="t_unix_dirpath"/>
<xs:choice minOccurs="1" maxOccurs="1">
<xs:element name="git" minOccurs="0" type="t_git_remote"/>
<xs:element name="archive" minOccurs="0" type="t_ipxe_arcfile"/>
</xs:choice>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:schema>