xml/schema/projects/ipxe/build.xsd

57 lines
2.7 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<xs:schema targetNamespace="https://router.r00t2.io/boootbox/ipxe/build/"
xmlns="https://router.r00t2.io/boootbox/ipxe/build/"
xmlns:ipxe="https://router.r00t2.io/boootbox/ipxe/build/"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:include schemaLocation="../../lib/types/unix.xsd"/>
<xs:include schemaLocation="../../lib/types/ipxe.xsd"/>
<xs:include schemaLocation="../../lib/elements/ipxe.xsd"/>
<xs:element name="ipxe">
<xs:complexType>
<xs:all minOccurs="1">
<xs:element name="source">
<xs:complexType>
<xs:sequence minOccurs="0">
<xs:choice minOccurs="1" maxOccurs="unbounded">
<xs:element name="patchSet" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence minOccurs="1" maxOccurs="2">
<xs:element name="switchOpts" maxOccurs="1" type="e_ipxe_optswitch"/>
<xs:element name="patch" maxOccurs="1" type="t_ipxe_patch"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="upstream" minOccurs="1" maxOccurs="1" type="e_ipxe_upstream"/>
</xs:choice>
</xs:sequence>
<xs:attribute name="srcDir" type="t_unix_dirpath" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="build">
<xs:complexType>
<xs:sequence minOccurs="1" maxOccurs="4">
<xs:choice minOccurs="1" maxOccurs="4">
<xs:element name="dest" minOccurs="1" maxOccurs="1" type="t_unix_dirpath"/>
<xs:element name="scripts" minOccurs="1" maxOccurs="1" type="e_ipxe_scripts"/>
<xs:element name="roms" minOccurs="1" maxOccurs="1" type="t_ipxe_roms"/>
<xs:element name="extraTargets" minOccurs="0" maxOccurs="1" type="e_ipxe_extratargets"/>
</xs:choice>
</xs:sequence>
<xs:attribute name="iso" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="usb" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="floppy" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="mbr" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="pxe" type="xs:boolean" use="optional" default="false"/>
<xs:attribute name="undi" type="xs:boolean" use="optional" default="false"/>
</xs:complexType>
</xs:element>
</xs:all>
</xs:complexType>
</xs:element>
</xs:schema>