ACC SHELL

Path : /usr/share/YaST2/control/
File Upload :
Current File : //usr/share/YaST2/control/control.rng

<?xml version="1.0" encoding="UTF-8"?>
<grammar ns="http://www.suse.com/1.0/yast2ns" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:config="http://www.suse.com/1.0/configns" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
  <define name="BOOLEAN">
    <a:documentation>Defined data-types</a:documentation>
    <attribute name="config:type">
      <value>boolean</value>
    </attribute>
    <choice>
      <value>true</value>
      <value>false</value>
    </choice>
  </define>
  <define name="INTEGER">
    <attribute name="config:type">
      <value>integer</value>
    </attribute>
    <data type="integer"/>
  </define>
  <define name="SYMBOL">
    <attribute name="config:type">
      <value>symbol</value>
    </attribute>
    <text/>
  </define>
  <define name="LIST">
    <attribute name="config:type">
      <value>list</value>
    </attribute>
  </define>
  <define name="ANY">
    <choice>
      <ref name="BOOLEAN"/>
      <ref name="INTEGER"/>
      <ref name="SYMBOL"/>
      <ref name="LIST"/>
      <text/>
    </choice>
  </define>
  <define name="YES_NO">
    <choice>
      <value>yes</value>
      <value>no</value>
    </choice>
  </define>
  <!-- types -->
  <define name="textdomain">
    <element name="textdomain">
      <text/>
    </element>
  </define>
  <!-- globals -->
  <define name="globals_elements">
    <choice>
      <ref name="incomplete_translation_treshold"/>
      <ref name="additional_kernel_parameters"/>
      <ref name="ui_mode"/>
      <ref name="base_product_license_directory"/>
      <ref name="enable_autologin"/>
      <ref name="enable_firewall"/>
      <ref name="firewall_enable_ssh"/>
      <ref name="firewall_enable_ssh"/>
      <ref name="write_hostname_to_hosts"/>
      <ref name="run_init_scripts_in_parallel"/>
      <ref name="inform_about_suboptimal_distribution"/>
      <ref name="skip_language_dialog"/>
      <ref name="enable_clone"/>
      <ref name="enable_register_hwdata"/>
      <ref name="enable_register_optional"/>
      <ref name="display_register_forcereg"/>
      <ref name="disable_register_w3m"/>
      <ref name="register_monthly"/>
      <ref name="manual_online_update"/>
      <ref name="root_password_as_first_user"/>
      <ref name="root_password_ca_check"/>
      <ref name="show_online_repositories"/>
      <ref name="online_repositories_default"/>
      <ref name="show_addons"/>
      <ref name="addons_default"/>
      <ref name="enable_autoconfiguration"/>
      <ref name="autoconfiguration_default"/>
      <ref name="kexec_reboot"/>
      <ref name="rle_offer_rulevel_4"/>
      <ref name="default_ntp_setup"/>
      <ref name="save_instsys_content"/>
      <ref name="copy_to_system"/>
      <ref name="autoconfiguration_enabled_modules"/>
      <ref name="automatic_configuration"/>
      <ref name="displaymanager_shutdown"/>
      <ref name="enable_kdump"/>
      <ref name="polkit_default_privs"/>
      <ref name="debug_workflow"/>
      <ref name="subworkflows"/>
      <ref name="default_subworkflow"/>
      <ref name="language"/>
      <ref name="timezone"/>
      <ref name="enable_autologin"/>
      <ref name="runlevel"/>
      <ref name="require_registration"/>
      <ref name="services_proposal"/>
      <ref name="ac_redraw_and_ignore"/>
      <ref name="debug_deploying"/>
    </choice>
  </define>
  <define name="additional_kernel_parameters">
    <a:documentation>Default kernel parameters proposed by bootloader</a:documentation>
    <element name="additional_kernel_parameters">
      <text/>
    </element>
  </define>
  <define name="incomplete_translation_treshold">
    <a:documentation>How much per cent is the minimum coverage of translations to consider
it being 'complete'. Less are reported if user tries to switch to such
language during installation / upgrade.</a:documentation>
    <element name="incomplete_translation_treshold">
      <text/>
    </element>
  </define>
  <define name="base_product_license_directory">
    <a:documentation>Directory where the base-product (e.g., SLES) license files are stored</a:documentation>
    <element name="base_product_license_directory">
      <text/>
    </element>
  </define>
  <define name="ui_mode">
    <a:documentation>Defines an UI mode used in some modules to differentiate between
'simple' and 'expert' (obsolete).</a:documentation>
    <element name="ui_mode">
      <choice>
        <value>expert</value>
        <value>simple</value>
      </choice>
    </element>
  </define>
  <define name="displaymanager_shutdown">
    <a:documentation>Writes DISPLAYMANAGER_SHUTDOWN to /etc/sysconfig/displaymanager
if set</a:documentation>
    <element name="displaymanager_shutdown">
      <text/>
    </element>
  </define>
  <define name="polkit_default_privs">
    <a:documentation>Writes POLKIT_DEFAULT_PRIVS to /etc/sysconfig/security
if set</a:documentation>
    <element name="polkit_default_privs">
      <text/>
    </element>
  </define>
  <define name="default_subworkflow">
    <a:documentation>Defines the default subworkflow name (smaller subworkflow
created from another workflow).
Used by Wagon.</a:documentation>
    <element name="default_subworkflow">
      <text/>
    </element>
  </define>
  <define name="language">
    <a:documentation>Default language</a:documentation>
    <element name="language">
      <text/>
    </element>
  </define>
  <define name="timezone">
    <a:documentation>Default timezone</a:documentation>
    <element name="timezone">
      <text/>
    </element>
  </define>
  <define name="runlevel">
    <a:documentation>Default runlevel</a:documentation>
    <element name="runlevel">
      <text/>
    </element>
  </define>
  <define name="debug_workflow">
    <a:documentation>Debugging feature, makes workflow manaher to write
more detailed log entries</a:documentation>
    <element name="debug_workflow">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="enable_autologin">
    <a:documentation>Default value for autologin</a:documentation>
    <element name="enable_autologin">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="enable_firewall">
    <a:documentation>Default value for firewall</a:documentation>
    <element name="enable_firewall">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="firewall_enable_ssh">
    <a:documentation>Default value for SSHD in firewall (open port)</a:documentation>
    <element name="firewall_enable_ssh">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="write_hostname_to_hosts">
    <a:documentation>Default value whether to write a system hostname to /etc/hosts</a:documentation>
    <element name="write_hostname_to_hosts">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="run_init_scripts_in_parallel">
    <a:documentation>Defines whether startup scripts should run in a parallel mode.
This speeds the starting up but it is worse for debugging.</a:documentation>
    <element name="run_init_scripts_in_parallel">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="inform_about_suboptimal_distribution">
    <element name="inform_about_suboptimal_distribution">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="skip_language_dialog">
    <element name="skip_language_dialog">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="enable_clone">
    <a:documentation>Defines whether an AytoYaST cloning feature should be enabled</a:documentation>
    <element name="enable_clone">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="enable_register_hwdata">
    <a:documentation>Default value for 'send hardware data' with registration</a:documentation>
    <element name="enable_register_hwdata">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="enable_register_optional">
    <a:documentation>Default value for 'send optional system data' with registration</a:documentation>
    <element name="enable_register_optional">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="display_register_forcereg">
    <element name="display_register_forcereg">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="disable_register_w3m">
    <element name="disable_register_w3m">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="register_monthly">
    <element name="register_monthly">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="manual_online_update">
    <element name="manual_online_update">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="root_password_as_first_user">
    <element name="root_password_as_first_user">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="root_password_ca_check">
    <element name="root_password_ca_check">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="show_online_repositories">
    <element name="show_online_repositories">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="online_repositories_default">
    <element name="online_repositories_default">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="show_addons">
    <element name="show_addons">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="addons_default">
    <element name="addons_default">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="enable_autoconfiguration">
    <element name="enable_autoconfiguration">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="autoconfiguration_default">
    <element name="autoconfiguration_default">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="kexec_reboot">
    <a:documentation>Defines whether kexec is the preferred mode instead of rebooting
between the first and the second stage of installation</a:documentation>
    <element name="kexec_reboot">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="rle_offer_rulevel_4">
    <a:documentation>Defines whether a special runlevel 4 should be offered</a:documentation>
    <element name="rle_offer_rulevel_4">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="default_ntp_setup">
    <element name="default_ntp_setup">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="enable_kdump">
    <a:documentation>Defines whether kdump is enabled by default</a:documentation>
    <element name="enable_kdump">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="require_registration">
    <element name="require_registration">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="save_instsys_content">
    <a:documentation>Defines which pieces of installation system should be copied to
the installed system before rebooting to second stage.</a:documentation>
    <element name="save_instsys_content">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="save_instsys_item">
          <interleave>
            <element name="system_directory">
              <a:documentation>Where to copy the installation-system file or directory
Absolut path is required.</a:documentation>
              <text/>
            </element>
            <element name="instsys_directory">
              <a:documentation>Which file or directory to copy to installed system
Absolut path is required.</a:documentation>
              <text/>
            </element>
          </interleave>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="copy_to_system">
    <element name="copy_to_system">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="copy_to_system_item">
          <interleave>
            <element name="copy_to_dir">
              <text/>
            </element>
            <oneOrMore>
              <element name="mandatory_files">
                <ref name="LIST"/>
                <oneOrMore>
                  <element name="file_item">
                    <text/>
                  </element>
                </oneOrMore>
              </element>
            </oneOrMore>
            <zeroOrMore>
              <element name="optional_files">
                <ref name="LIST"/>
                <oneOrMore>
                  <element name="file_item">
                    <text/>
                  </element>
                </oneOrMore>
              </element>
            </zeroOrMore>
          </interleave>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="autoconfiguration_enabled_modules">
    <element name="autoconfiguration_enabled_modules">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="module">
          <text/>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="automatic_configuration">
    <a:documentation>Describes the automatic configuration called in the second stage.
Proposed values are written to the system without asking user.</a:documentation>
    <element name="automatic_configuration">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="ac_step">
          <a:documentation>One configuration step</a:documentation>
          <interleave>
            <element name="unique_id">
              <a:documentation>Unique ID of the automatic configuration step</a:documentation>
              <text/>
            </element>
            <optional>
              <element name="text_id">
                <a:documentation>ID used in texts</a:documentation>
                <text/>
              </element>
            </optional>
            <optional>
              <element name="icon">
                <a:documentation>Name of the icon file (without suffix)</a:documentation>
                <text/>
              </element>
            </optional>
            <optional>
              <element name="type">
                <a:documentation>Type of a configuration step.
Scripts are called directly.
Proposals are all at first called with 'MakeProposal' and then 'Write' parameters.</a:documentation>
                <choice>
                  <value>scripts</value>
                  <value>proposals</value>
                </choice>
              </element>
            </optional>
            <optional>
              <element name="ac_items">
                <ref name="LIST"/>
                <oneOrMore>
                  <element name="ac_item">
                    <text/>
                  </element>
                </oneOrMore>
              </element>
            </optional>
          </interleave>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="services_proposal">
    <element name="services_proposal">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="service">
          <interleave>
            <optional>
              <element name="label_id">
                <text/>
              </element>
            </optional>
            <element name="service_names">
              <text/>
            </element>
            <optional>
              <element name="firewall_plugins">
                <text/>
              </element>
            </optional>
            <optional>
              <element name="enabled_by_default">
                <ref name="BOOLEAN"/>
              </element>
            </optional>
            <optional>
              <element name="packages">
                <text/>
              </element>
            </optional>
          </interleave>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="subworkflows">
    <element name="subworkflows">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="subworkflow">
          <interleave>
            <element name="name">
              <text/>
            </element>
            <optional>
              <element name="modules">
                <ref name="LIST"/>
                <oneOrMore>
                  <element name="module">
                    <text/>
                  </element>
                </oneOrMore>
              </element>
            </optional>
            <optional>
              <element name="proposals">
                <ref name="LIST"/>
                <oneOrMore>
                  <element name="proposal">
                    <text/>
                  </element>
                </oneOrMore>
              </element>
            </optional>
          </interleave>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="globals">
    <a:documentation>Global variables</a:documentation>
    <element name="globals">
      <zeroOrMore>
        <ref name="globals_elements"/>
      </zeroOrMore>
    </element>
  </define>
  <!-- globals -->
  <!-- software -->
  <define name="software_elements">
    <choice>
      <ref name="delete_old_packages"/>
      <ref name="delete_old_packages_reverse_list"/>
      <ref name="silently_downgrade_packages"/>
      <ref name="silently_downgrade_packages_reverse_list"/>
      <ref name="only_update_selected"/>
      <ref name="only_update_selected_reverse_list"/>
      <ref name="products_supported_for_upgrade"/>
      <ref name="selection_type"/>
      <ref name="system_scenarios"/>
      <ref name="default_system_scenario"/>
      <ref name="supported_desktops"/>
      <ref name="default_desktop"/>
      <ref name="display_support_status"/>
      <ref name="online_repos_preselected"/>
      <ref name="external_sources_link"/>
      <ref name="dropped_packages"/>
      <ref name="extra_urls"/>
      <ref name="base_selection"/>
      <ref name="packages_affecting_pkg_manager"/>
      <ref name="software_base"/>
      <ref name="software_addons"/>
      <ref name="software_packages"/>
      <ref name="kernel_packages"/>
      <ref name="packages_transmogrify"/>
    </choice>
  </define>
  <define name="delete_old_packages">
    <a:documentation>Whether it is allowed to delete a package during upgrade</a:documentation>
    <element name="delete_old_packages">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="selection_type">
    <element name="selection_type">
      <ref name="SYMBOL"/>
    </element>
  </define>
  <define name="default_system_scenario">
    <a:documentation>System scenario selected by default.
Used in inst_scenarios client.</a:documentation>
    <element name="default_system_scenario">
      <text/>
    </element>
  </define>
  <define name="default_desktop">
    <a:documentation>Desktop selected by default</a:documentation>
    <element name="default_desktop">
      <text/>
    </element>
  </define>
  <define name="display_support_status">
    <element name="display_support_status">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="silently_downgrade_packages">
    <element name="silently_downgrade_packages">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="only_update_selected">
    <element name="only_update_selected">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="online_repos_preselected">
    <element name="online_repos_preselected">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="external_sources_link">
    <element name="external_sources_link">
      <text/>
    </element>
  </define>
  <define name="dropped_packages">
    <a:documentation>Packages that should be removed by the upgrade.
Comma and/or space-separated list of packages</a:documentation>
    <element name="dropped_packages">
      <text/>
    </element>
  </define>
  <define name="base_selection">
    <element name="base_selection">
      <text/>
    </element>
  </define>
  <define name="software_base">
    <element name="base">
      <text/>
    </element>
  </define>
  <define name="packages_transmogrify">
    <a:documentation>a client that is called to modifiy the list of selected kernel packages</a:documentation>
    <element name="packages_transmogrify">
      <text/>
    </element>
  </define>
  <define name="software_addons">
    <element name="addons">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="addon">
          <text/>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="software_packages">
    <element name="packages">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="package">
          <text/>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="kernel_packages">
    <element name="kernel_packages">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="package">
          <text/>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="delete_old_packages_reverse_list">
    <element name="delete_old_packages_reverse_list">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="regexp_item">
          <text/>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="system_scenarios">
    <a:documentation>Scenarios supported by inst_scenarios client</a:documentation>
    <element name="system_scenarios">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="system_scenario">
          <a:documentation>One scenario item</a:documentation>
          <interleave>
            <element name="id">
              <a:documentation>Unique id that points to texts</a:documentation>
              <text/>
            </element>
            <element name="patterns">
              <a:documentation>Space or tab-separated list of patterns required by a particular scenario</a:documentation>
              <text/>
            </element>
            <element name="icon">
              <a:documentation>Name of an icon file (without suffix)</a:documentation>
              <text/>
            </element>
          </interleave>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="supported_desktops">
    <element name="supported_desktops">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="one_supported_desktop">
          <interleave>
            <element name="name">
              <text/>
            </element>
            <element name="desktop">
              <text/>
            </element>
            <optional>
              <element name="label_id">
                <text/>
              </element>
            </optional>
            <element name="logon">
              <text/>
            </element>
            <element name="cursor">
              <text/>
            </element>
            <element name="packages">
              <text/>
            </element>
            <optional>
              <element name="order">
                <ref name="INTEGER"/>
              </element>
            </optional>
            <element name="patterns">
              <text/>
            </element>
            <optional>
              <element name="icon">
                <text/>
              </element>
            </optional>
            <optional>
              <element name="description_id">
                <text/>
              </element>
            </optional>
          </interleave>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="only_update_selected_reverse_list">
    <element name="only_update_selected_reverse_list">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="regexp_item">
          <text/>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="products_supported_for_upgrade">
    <a:documentation>List of products supported to be upgraded by this product</a:documentation>
    <element name="products_supported_for_upgrade">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="regexp_item">
          <a:documentation>One regular expression to match a product to upgrade</a:documentation>
          <text/>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="silently_downgrade_packages_reverse_list">
    <element name="silently_downgrade_packages_reverse_list">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="regexp_item">
          <text/>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="extra_urls">
    <element name="extra_urls">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="extra_url">
          <interleave>
            <element name="baseurl">
              <text/>
            </element>
            <optional>
              <element name="name">
                <text/>
              </element>
            </optional>
            <optional>
              <element name="alias">
                <text/>
              </element>
            </optional>
            <optional>
              <element name="prod_dir">
                <text/>
              </element>
            </optional>
            <optional>
              <element name="enabled">
                <ref name="BOOLEAN"/>
              </element>
            </optional>
            <optional>
              <element name="autorefresh">
                <ref name="BOOLEAN"/>
              </element>
            </optional>
            <optional>
              <element name="priority">
                <ref name="INTEGER"/>
              </element>
            </optional>
          </interleave>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="packages_affecting_pkg_manager">
    <element name="packages_affecting_pkg_manager">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="package">
          <text/>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="software">
    <a:documentation>Software / Package-manager related variables</a:documentation>
    <element name="software">
      <zeroOrMore>
        <ref name="software_elements"/>
      </zeroOrMore>
    </element>
  </define>
  <!-- software -->
  <!-- partitioning -->
  <define name="partitioning_elements">
    <choice>
      <ref name="evms_config"/>
      <ref name="try_separate_home"/>
      <ref name="limit_try_home"/>
      <ref name="root_space_percent"/>
      <ref name="root_base_size"/>
      <ref name="root_max_size"/>
      <ref name="proposal_lvm"/>
      <ref name="proposal_evms"/>
      <ref name="vm_desired_size"/>
      <ref name="vm_home_max_size"/>
      <ref name="boot_evms"/>
      <ref name="use_separate_multipath_module"/>
      <ref name="prefer_remove"/>
      <ref name="vm_keep_unpartitioned_region"/>
      <ref name="remove_special_partitions"/>
      <ref name="partitions"/>
    </choice>
  </define>
  <define name="evms_config">
    <element name="evms_config">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="try_separate_home">
    <element name="try_separate_home">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="limit_try_home">
    <element name="limit_try_home">
      <text/>
    </element>
  </define>
  <define name="root_space_percent">
    <element name="root_space_percent">
      <text/>
    </element>
  </define>
  <define name="root_base_size">
    <element name="root_base_size">
      <text/>
    </element>
  </define>
  <define name="root_max_size">
    <element name="root_max_size">
      <text/>
    </element>
  </define>
  <define name="proposal_lvm">
    <element name="proposal_lvm">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="proposal_evms">
    <element name="proposal_evms">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="vm_desired_size">
    <element name="vm_desired_size">
      <text/>
    </element>
  </define>
  <define name="vm_home_max_size">
    <element name="vm_home_max_size">
      <text/>
    </element>
  </define>
  <define name="boot_evms">
    <element name="boot_evms">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="prefer_remove">
    <element name="prefer_remove">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="remove_special_partitions">
    <element name="remove_special_partitions">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="vm_keep_unpartitioned_region">
    <element name="vm_keep_unpartitioned_region">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <!-- used by HASI Add-On -->
  <define name="use_separate_multipath_module">
    <element name="use_separate_multipath_module">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <!-- these have to be defined by Storage -->
  <define name="partitions">
    <element name="partitions">
      <ref name="LIST"/>
      <zeroOrMore>
        <element name="listentry">
          <zeroOrMore>
            <element>
              <anyName/>
              <ref name="ANY"/>
            </element>
          </zeroOrMore>
        </element>
      </zeroOrMore>
      <zeroOrMore>
        <element name="partition">
          <zeroOrMore>
            <element>
              <anyName/>
              <ref name="ANY"/>
            </element>
          </zeroOrMore>
        </element>
      </zeroOrMore>
    </element>
  </define>
  <define name="partitioning">
    <a:documentation>Partitioning-related variables</a:documentation>
    <element name="partitioning">
      <zeroOrMore>
        <ref name="partitioning_elements"/>
      </zeroOrMore>
    </element>
  </define>
  <!-- partitioning -->
  <!-- network -->
  <define name="network_elements">
    <choice>
      <ref name="force_static_ip"/>
      <ref name="network_manager"/>
      <ref name="startmode"/>
    </choice>
  </define>
  <define name="force_static_ip">
    <element name="force_static_ip">
      <ref name="BOOLEAN"/>
    </element>
  </define>
  <define name="network_manager">
    <element name="network_manager">
      <text/>
    </element>
  </define>
  <define name="startmode">
    <element name="startmode">
      <text/>
    </element>
  </define>
  <define name="network">
    <a:documentation>Network configuration-related variables</a:documentation>
    <element name="network">
      <zeroOrMore>
        <ref name="network_elements"/>
      </zeroOrMore>
    </element>
  </define>
  <!-- network -->
  <!-- clone_modules -->
  <define name="clone_modules">
    <a:documentation>List of modules used by AutoYaST for cloning the configuration</a:documentation>
    <element name="clone_modules">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="clone_module">
          <text/>
        </element>
      </oneOrMore>
    </element>
  </define>
  <!-- clone_modules -->
  <!-- texts -->
  <define name="texts">
    <a:documentation>Control-file texts marked for translation</a:documentation>
    <element name="texts">
      <oneOrMore>
        <element>
          <anyName/>
          <element name="label">
            <text/>
          </element>
        </element>
      </oneOrMore>
    </element>
  </define>
  <!-- texts -->
  <!-- proposals -->
  <define name="proposal_module">
    <a:documentation>There are two types of element 'proposal_modules'
 1.) proposal_modules with attributes 'name' and 'presentation_order'
 2.) proposal_modules with inexplicit 'name'</a:documentation>
    <a:documentation>Proposal module with 'name' and 'presentation_order'</a:documentation>
    <element name="proposal_module">
      <interleave>
        <optional>
          <element name="name">
            <a:documentation>Proposal name</a:documentation>
            <text/>
          </element>
        </optional>
        <optional>
          <element name="presentation_order">
            <a:documentation>Presentation order in the current proposal (integer).
Lower numbers first.</a:documentation>
            <text/>
          </element>
        </optional>
        <optional>
          <text>
            <a:documentation>Inexplicit proposal name if not explicitely defined by 'name' and 'presentation_order'</a:documentation>
          </text>
        </optional>
      </interleave>
    </element>
  </define>
  <define name="proposal">
    <a:documentation>Proposal defines one configuration step with one or more proposal_modules
inside. Proposal modules usually depend on each other so the order does
matter. If you want to list proposal modules in a different order, use
'presentation' order attribute.</a:documentation>
    <element name="proposal">
      <interleave>
        <element name="unique_id">
          <a:documentation>Unique ID of the proposal</a:documentation>
          <text/>
        </element>
        <optional>
          <element name="label">
            <a:documentation/>
            <text/>
          </element>
        </optional>
        <optional>
          <element name="archs">
            <a:documentation>Defines for which architectures is this proposal used.
Comma-separated list of architectures as seen in
/usr/share/YaST2/modules/Arch.ycp
Valid for all architectures if not explicitely defined.
See Arch::arch_short</a:documentation>
            <text/>
          </element>
        </optional>
        <optional>
          <element name="mode">
            <a:documentation>Defines for which mode is this proposal used.
Comma-separated list of modes as seen in
/usr/share/YaST2/modules/Mode.ycp
Valid for all modes if not explicitely defined.</a:documentation>
            <text/>
          </element>
        </optional>
        <element name="stage">
          <a:documentation>Defines for which stage is this proposal used.
Comma-separated list of stages as seen in
/usr/share/YaST2/modules/Stage.ycp
Valid for all stages if not explicitely defined.</a:documentation>
          <text/>
        </element>
        <optional>
          <element name="name">
            <a:documentation>Proposal name used later to define which proposal to use</a:documentation>
            <text/>
          </element>
        </optional>
        <optional>
          <element name="type">
            <text/>
          </element>
        </optional>
        <optional>
          <element name="enable_skip">
            <a:documentation>Defines whether a proposal can be skipped</a:documentation>
            <ref name="YES_NO"/>
          </element>
        </optional>
        <optional>
          <element name="proposal_modules">
            <a:documentation>List of modules in proposal</a:documentation>
            <ref name="LIST"/>
            <oneOrMore>
              <ref name="proposal_module"/>
            </oneOrMore>
          </element>
        </optional>
        <optional>
          <element name="proposal_tabs">
            <a:documentation>Defines how/whether tabs are used in proposal, e.g.,
Simple tab vs. Expert tab.
If tabs are used, do not define 'proposal_modules' directly
in 'proposal'</a:documentation>
            <ref name="LIST"/>
            <oneOrMore>
              <element name="proposal_tab">
                <a:documentation>Defines one tab in a proposal</a:documentation>
                <interleave>
                  <element name="label">
                    <a:documentation>Label on the tab</a:documentation>
                    <text/>
                  </element>
                  <element name="proposal_modules">
                    <a:documentation>List of proposal modules</a:documentation>
                    <ref name="LIST"/>
                    <oneOrMore>
                      <ref name="proposal_module"/>
                    </oneOrMore>
                  </element>
                </interleave>
              </element>
            </oneOrMore>
          </element>
        </optional>
      </interleave>
    </element>
  </define>
  <!-- List of all proposals in control file -->
  <define name="proposals">
    <element name="proposals">
      <ref name="LIST"/>
      <oneOrMore>
        <ref name="proposal"/>
      </oneOrMore>
    </element>
  </define>
  <!-- proposals -->
  <!-- workflows -->
  <!-- Describes one step in a workflow -->
  <define name="module">
    <element name="module">
      <interleave>
        <optional>
          <element name="name">
            <a:documentation>Name of a step.
Used as an identification for updating, removing etc. of steps.
If 'execute' is not used, 'name' also defines name of a YCP script
called by YaST. In installation or upgrade, all script have to match
inst_(.*) regexp.</a:documentation>
            <text/>
          </element>
        </optional>
        <optional>
          <element name="execute">
            <a:documentation>Defines exact name of a YCP script (without .ycp suffix)</a:documentation>
            <text/>
          </element>
        </optional>
        <optional>
          <element name="label">
            <a:documentation>Defines a configuration step shown in workflow with steps.
If empty, a label defined in closes step before is used.</a:documentation>
            <text/>
          </element>
        </optional>
        <optional>
          <element name="heading">
            <a:documentation>Defines a heading step. Heading usually does not have any client
to run and defines only the major step in workflow.</a:documentation>
            <text/>
          </element>
        </optional>
        <optional>
          <element name="archs">
            <a:documentation>Defines for which architectures is this module used.
Comma-separated list of architectures as seen in
/usr/share/YaST2/modules/Arch.ycp
Valid for all architectures if not explicitely defined.
See Arch::arch_short</a:documentation>
            <text/>
          </element>
        </optional>
        <optional>
          <element name="proposal">
            <a:documentation>Defines which proposal to call in this step.
Proposal 'name' is used.</a:documentation>
            <text/>
          </element>
        </optional>
        <optional>
          <element name="enable_back">
            <a:documentation>Defines whether the [Back] button is enabled by default in this step.</a:documentation>
            <ref name="YES_NO"/>
          </element>
        </optional>
        <optional>
          <element name="enable_next">
            <a:documentation>Defines whether the [Next] button is enabled by default in this step.</a:documentation>
            <ref name="YES_NO"/>
          </element>
        </optional>
        <optional>
          <element name="arguments">
            <a:documentation>Additional module arguments</a:documentation>
            <choice>
              <optional>
                <element name="first_run">
                  <ref name="YES_NO"/>
                </element>
              </optional>
              <zeroOrMore>
                <element>
                  <anyName/>
                  <text/>
                </element>
              </zeroOrMore>
              <!-- used in autoyast -->
              <text/>
            </choice>
          </element>
        </optional>
        <optional>
          <element name="retranslate">
            <a:documentation>Should YaST retranslate the whole screen after this client is called?
Default is 'true'.</a:documentation>
            <ref name="BOOLEAN"/>
          </element>
        </optional>
        <optional>
          <element name="update">
            <ref name="BOOLEAN"/>
          </element>
        </optional>
        <optional>
          <element name="enabled">
            <a:documentation>Defines whether a module is enabled by default.
Default value is 'true'</a:documentation>
            <ref name="BOOLEAN"/>
          </element>
        </optional>
        <optional>
          <element name="prescript">
            <a:documentation>Script body called before the described step</a:documentation>
            <interleave>
              <element name="interpreter">
                <a:documentation>@example
shell</a:documentation>
                <text/>
              </element>
              <element name="source">
                <a:documentation>@example
&lt;![CDATA[#!/bin/sh
echo test &gt; /tmp/test
]]&gt;</a:documentation>
                <text/>
              </element>
            </interleave>
          </element>
        </optional>
        <optional>
          <element name="postscript">
            <a:documentation>Script body called after the described step</a:documentation>
            <interleave>
              <element name="interpreter">
                <text/>
              </element>
              <element name="source">
                <text/>
              </element>
            </interleave>
          </element>
        </optional>
      </interleave>
    </element>
  </define>
  <define name="workflow_defaults">
    <a:documentation>Defines the default workflow settings</a:documentation>
    <element name="defaults">
      <interleave>
        <optional>
          <element name="archs">
            <a:documentation>For which architectures is this default valid</a:documentation>
            <text/>
          </element>
        </optional>
        <optional>
          <element name="arguments">
            <a:documentation>Special patemeters used by AutoYaST</a:documentation>
            <text/>
          </element>
        </optional>
        <optional>
          <element name="enable_back">
            <a:documentation>Is [Back] button enabled by default?
If not set, default values is 'yes'.</a:documentation>
            <ref name="YES_NO"/>
          </element>
        </optional>
        <optional>
          <element name="enable_next">
            <a:documentation>Is [Next] button enabled by default?
If not set, default values is 'yes'.</a:documentation>
            <ref name="YES_NO"/>
          </element>
        </optional>
      </interleave>
    </element>
  </define>
  <define name="workflow">
    <a:documentation>Workflow, defines for instance, 'second stage installation'</a:documentation>
    <element name="workflow">
      <interleave>
        <optional>
          <ref name="workflow_defaults"/>
        </optional>
        <optional>
          <element name="label">
            <a:documentation>Superstep name visible in UI</a:documentation>
            <text/>
          </element>
        </optional>
        <element name="mode">
          <a:documentation>Defines for which mode is this proposal used.
Comma-separated list of modes as seen in
/usr/share/YaST2/modules/Mode.ycp
Valid for all modes if not explicitely defined.</a:documentation>
          <text/>
        </element>
        <element name="stage">
          <a:documentation>Defines for which stage is this workflow used.
Comma-separated list of stages as seen in
/usr/share/YaST2/modules/Stage.ycp
Valid for all stages if not explicitely defined.</a:documentation>
          <text/>
        </element>
        <element name="modules">
          <a:documentation>List of modules in workflow</a:documentation>
          <ref name="LIST"/>
          <oneOrMore>
            <ref name="module"/>
          </oneOrMore>
        </element>
      </interleave>
    </element>
  </define>
  <!-- List of all defined workflows -->
  <define name="workflows">
    <element name="workflows">
      <ref name="LIST"/>
      <oneOrMore>
        <ref name="workflow"/>
      </oneOrMore>
    </element>
  </define>
  <!-- workflows -->
  <!-- inst_finish_stages -->
  <define name="inst_finish_stages">
    <element name="inst_finish_stages">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="inst_finish_stage">
          <interleave>
            <element name="label">
              <text/>
            </element>
            <element name="steps">
              <ref name="LIST"/>
              <oneOrMore>
                <element name="step">
                  <text/>
                </element>
              </oneOrMore>
            </element>
          </interleave>
        </element>
      </oneOrMore>
    </element>
  </define>
  <!-- inst_finish_stages -->
  <!-- update -->
  <define name="update_workflow">
    <element name="workflow">
      <interleave>
        <optional>
          <ref name="workflow_defaults"/>
        </optional>
        <optional>
          <element name="label">
            <text/>
          </element>
        </optional>
        <element name="stage">
          <text/>
        </element>
        <element name="mode">
          <text/>
        </element>
        <optional>
          <element name="insert_modules">
            <ref name="LIST"/>
            <oneOrMore>
              <element name="insert_module">
                <interleave>
                  <element name="before">
                    <text/>
                  </element>
                  <element name="modules">
                    <ref name="LIST"/>
                    <oneOrMore>
                      <ref name="module"/>
                    </oneOrMore>
                  </element>
                </interleave>
              </element>
            </oneOrMore>
          </element>
        </optional>
        <optional>
          <element name="append_modules">
            <ref name="LIST"/>
            <oneOrMore>
              <ref name="module"/>
            </oneOrMore>
          </element>
        </optional>
        <optional>
          <element name="remove_modules">
            <ref name="LIST"/>
            <oneOrMore>
              <element name="remove_module">
                <text/>
              </element>
            </oneOrMore>
          </element>
        </optional>
        <optional>
          <element name="replace_modules">
            <ref name="LIST"/>
            <oneOrMore>
              <element name="replace_module">
                <interleave>
                  <element name="replace">
                    <text/>
                  </element>
                  <element name="modules">
                    <ref name="LIST"/>
                    <oneOrMore>
                      <ref name="module"/>
                    </oneOrMore>
                  </element>
                </interleave>
              </element>
            </oneOrMore>
          </element>
        </optional>
      </interleave>
    </element>
  </define>
  <define name="update_proposal">
    <element name="proposal">
      <interleave>
        <element name="stage">
          <text/>
        </element>
        <element name="mode">
          <text/>
        </element>
        <optional>
          <element name="label">
            <text/>
          </element>
        </optional>
        <element name="name">
          <text/>
        </element>
        <optional>
          <element name="enable_skip">
            <ref name="YES_NO"/>
          </element>
        </optional>
        <optional>
          <element name="append_modules">
            <ref name="LIST"/>
            <oneOrMore>
              <element name="append_module">
                <text/>
              </element>
            </oneOrMore>
          </element>
        </optional>
        <optional>
          <element name="remove_modules">
            <ref name="LIST"/>
            <oneOrMore>
              <element name="remove_module">
                <text/>
              </element>
            </oneOrMore>
          </element>
        </optional>
        <optional>
          <element name="replace_modules">
            <ref name="LIST"/>
            <element name="replace_module">
              <interleave>
                <element name="replace">
                  <text/>
                </element>
                <element name="new_modules">
                  <ref name="LIST"/>
                  <oneOrMore>
                    <element name="new_module">
                      <text/>
                    </element>
                  </oneOrMore>
                </element>
              </interleave>
            </element>
          </element>
        </optional>
      </interleave>
    </element>
  </define>
  <define name="update">
    <element name="update">
      <interleave>
        <optional>
          <element name="proposals">
            <ref name="LIST"/>
            <oneOrMore>
              <ref name="update_proposal"/>
            </oneOrMore>
          </element>
        </optional>
        <optional>
          <element name="workflows">
            <ref name="LIST"/>
            <oneOrMore>
              <ref name="update_workflow"/>
            </oneOrMore>
          </element>
        </optional>
        <optional>
          <element name="inst_finish">
            <interleave>
              <optional>
                <element name="before_chroot">
                  <ref name="LIST"/>
                  <oneOrMore>
                    <element name="module">
                      <text/>
                    </element>
                  </oneOrMore>
                </element>
              </optional>
              <optional>
                <element name="after_chroot">
                  <ref name="LIST"/>
                  <oneOrMore>
                    <element name="module">
                      <text/>
                    </element>
                  </oneOrMore>
                </element>
              </optional>
              <optional>
                <element name="before_umount">
                  <ref name="LIST"/>
                  <oneOrMore>
                    <element name="module">
                      <text/>
                    </element>
                  </oneOrMore>
                </element>
              </optional>
            </interleave>
          </element>
        </optional>
      </interleave>
    </element>
  </define>
  <!-- update -->
  <define name="productDefines_elements">
    <choice>
      <ref name="textdomain"/>
      <ref name="globals"/>
      <ref name="software"/>
      <ref name="partitioning"/>
      <ref name="network"/>
      <ref name="proposals"/>
      <ref name="workflows"/>
      <ref name="clone_modules"/>
      <ref name="texts"/>
      <ref name="inst_finish_stages"/>
      <ref name="update"/>
    </choice>
  </define>
  <start>
    <element name="productDefines">
      <zeroOrMore>
        <ref name="productDefines_elements"/>
      </zeroOrMore>
    </element>
  </start>
  <define name="ac_redraw_and_ignore">
    <element name="ac_redraw_and_ignore">
      <ref name="LIST"/>
      <oneOrMore>
        <element name="ac_item">
          <text/>
        </element>
      </oneOrMore>
    </element>
  </define>
  <define name="debug_deploying">
    <element name="debug_deploying">
      <ref name="BOOLEAN"/>
    </element>
  </define>
</grammar>

ACC SHELL 2018