cron_groups.xsd 2.22 KB
Newer Older
Ketan's avatar
Ketan committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
<?xml version="1.0" encoding="UTF-8"?>
<!--
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="config">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="group" type="group" minOccurs="1" maxOccurs="unbounded"/>
            </xs:sequence>
        </xs:complexType>

        <xs:unique name="uniqueGroupId">
            <xs:annotation>
                <xs:documentation>
                    Group id must be unique.
                </xs:documentation>
            </xs:annotation>
            <xs:selector xpath="group"/>
            <xs:field xpath="@id"/>
        </xs:unique>
    </xs:element>

    <xs:complexType name="group">
        <xs:sequence>
            <xs:element name="schedule_generate_every" type="scheduled_every_type" minOccurs="0" maxOccurs="1"/>
            <xs:element name="schedule_ahead_for" type="xs:integer" minOccurs="0" maxOccurs="1"/>
            <xs:element name="schedule_lifetime" type="xs:integer" minOccurs="0" maxOccurs="1"/>
            <xs:element name="history_cleanup_every" type="xs:integer" minOccurs="0" maxOccurs="1"/>
            <xs:element name="history_success_lifetime" type="xs:integer" minOccurs="0" maxOccurs="1"/>
            <xs:element name="history_failure_lifetime" type="xs:integer" minOccurs="0" maxOccurs="1"/>
            <xs:element name="use_separate_process" type="xs:boolean" minOccurs="0" maxOccurs="1"/>
        </xs:sequence>
        <xs:attribute name="id" type="typeId" use="required" />
    </xs:complexType>

    <xs:complexType name="scheduled_every_type">
        <xs:simpleContent>
            <xs:extension base="xs:integer">
                <xs:attribute name="tooltip" type="xs:string" use="optional"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>

    <xs:simpleType name="typeId">
        <xs:annotation>
            <xs:documentation>
                Item id attribute can has only [a-z0-9_].
            </xs:documentation>
        </xs:annotation>

        <xs:restriction base="xs:string">
            <xs:pattern value="[a-z0-9_]+" />
        </xs:restriction>
    </xs:simpleType>
</xs:schema>