Files
new_install/xml/install_ng.xml
2010-07-30 17:36:54 +08:00

184 lines
3.7 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<grammar xmlns="http://relaxng.org/ns/structure/1.0">
<start>
<element name="install">
<ref name="serial-number"/>
<ref name="partitions"/>
<optional>
<ref name="raids"/>
</optional>
<ref name="mount-points"/>
<ref name="network"/>
<ref name="groups"/>
<optional>
<ref name="services"/>
</optional>
</element>
</start>
<define name="serial-number">
<element name="serial-number">
<text/>
</element>
</define>
<define name="partitions">
<element name='partitions'>
<attribute name='unit'/>
<oneOrMore>
<element name='partition'>
<attribute name='device'/>
<attribute name='start'/>
<attribute name='size'/>
<attribute name='id'/>
</element>
</oneOrMore>
</element>
</define>
<define name="raids">
<element name='raids'>
<oneOrMore>
<element name="raid">
<attribute name="raid-device"/>
<attribute name="raid-type">
<choice>
<value>raid0</value>
<value>raid1</value>
<value>raid5</value>
</choice>
</attribute>
<attribute name="raid-size"/>
<oneOrMore>
<element name="raw-device">
<text/>
</element>
</oneOrMore>
</element>
</oneOrMore>
</element>
</define>
<define name="mount-points">
<element name="mount-points">
<oneOrMore>
<element name="mount-point">
<attribute name="device"/>
<attribute name="directory"/>
<attribute name="file-system"/>
<attribute name="format">
<ref name="mybool"/>
</attribute>
</element>
</oneOrMore>
</element>
</define>
<define name="network">
<element name="network">
<attribute name="hostname"/>
<attribute name="configuration">
<choice>
<value>dynamic</value>
<value>static</value>
</choice>
</attribute>
<optional>
<group>
<attribute name="ip"/>
<attribute name="mask"/>
<attribute name="gateway"/>
<attribute name="primary_dns"/>
<attribute name="secondary_dns"/>
<attribute name="domain"/>
</group>
</optional>
</element>
</define>
<define name="groups">
<element name='groups'>
<oneOrMore>
<element name="group">
<attribute name="name"/>
<attribute name="install">
<choice>
<value>mandatory</value>
<value>yes</value>
<value>no</value>
</choice>
</attribute>
<optional>
<ref name="description"/>
</optional>
<optional>
<element name='mandatory'>
<ref name='packages'/>
</element>
</optional>
<optional>
<element name='optional'>
<attribute name='selection'>
<choice>
<value>all</value>
<value>none</value>
<value>manual</value>
</choice>
</attribute>
<ref name='packages'/>
</element>
</optional>
</element>
</oneOrMore>
</element>
</define>
<define name="description">
<element name="description">
<text/>
</element>
</define>
<define name="packages">
<oneOrMore>
<element name="package">
<attribute name="name"/>
<optional>
<attribute name="install">
<ref name="mybool"/>
</attribute>
</optional>
</element>
</oneOrMore>
</define>
<define name="mybool">
<choice>
<value>yes</value>
<value>no</value>
</choice>
</define>
<define name='services'>
<element name='services'>
<zeroOrMore>
<element name='service'>
<attribute name='name'/>
<attribute name='number'/>
<attribute name='script'/>
<attribute name='start'>
<choice>
<value>disable</value>
<value>yes</value>
<value>no</value>
</choice>
</attribute>
<attribute name='package'/>
</element>
</zeroOrMore>
</element>
</define>
</grammar>