<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<ssi version="0.1">
    <macros scope="common">
        <input name="UI_APP" method="user" value="native/app/ui" />
        <input name="WEB_WIDGET" method="user" value="web/widget" />
    </macros>

    <validator>
        <!-- priority = "0,1,..", default=255 -->
        <!-- unspecified = "true / false", default = "true" -->

        <!-- order = "dc / 0,1,.. / gt / ge / lt / le / n", default = "dc" -->
        <!-- count = "dc / 0,1,.. / gt / ge / lt / le / n", default = "n" -->

        <package name="webapp" type="wgt" priority="0" unspecified="false">
            <include type="web" count="1"/>
            <exclude type="native"/>
        </package>

        <package name="nativeapp" type="tpk" priority="0" unspecified="false">
            <include type="native" count="1"/>
            <exclude type="web"/>
        </package>

        <package name="multi_pack_1" type="multi_pack" unspecified="false">
            <include type="native/app/ui" order="0" count="1"/>
            <!-- group type="or" -->
                <include type="native/app/ui" order="gt 0" count="ge 0"/>
                <include type="native/app/service" order="gt 0" count="ge 0"/>
                <include type="native/app/watch" order="gt 0" count="0"/>
                <include type="native/app/widget" order="gt 0" count="ge 0"/>
                <include type="native/app/ime" order="gt 0" count="0"/>
            <!-- /group -->
            <include type="native/sharedLib" order="gt 0" count="ge 0"/>
            <include type="native/staticLib" order="gt 0" count="ge 0"/>
            <exclude type="web"/>
        </package>

        <package name="multi_pack_2" type="multi_pack" unspecified="false">
            <include type="native/app/watch" order="0" count="1"/>
            <!-- group type="or" -->
                <include type="native/app/ui" order="gt 0" count="0"/>
                <include type="native/app/service" order="gt 0" count="ge 0"/>
                <include type="native/app/watch" order="gt 0" count="0"/>
                <include type="native/app/widget" order="gt 0" count="0"/>
                <include type="native/app/ime" order="gt 0" count="0"/>
            <!-- /group -->
            <include type="native/sharedLib" order="gt 0" count="ge 0"/>
            <include type="native/staticLib" order="gt 0" count="ge 0"/>
            <exclude type="web"/>
        </package>

        <package name="multi_pack_3" type="multi_pack" unspecified="false">
            <include type="native/app/ime" order="0" count="1"/>
            <!-- group type="or" -->
                <include type="native/app/ui" order="gt 0" count="le 1"/>
                <include type="native/app/service" order="gt 0" count="ge 0"/>
                <include type="native/app/watch" order="gt 0" count="0"/>
                <include type="native/app/widget" order="gt 0" count="0"/>
                <include type="native/app/ime" order="gt 0" count="0"/>
            <!-- /group -->
            <include type="native/sharedLib" order="gt 0" count="ge 0"/>
            <include type="native/staticLib" order="gt 0" count="ge 0"/>
            <exclude type="web"/>
        </package>

        <package name="web_multi" type="web_multi" priority="1" unspecified="false">
            <include type="web/app" order="0" count="1"/>
            <!-- group type="or" -->
                <include type="web/app" order="gt 0" count="0"/>
                <include type="web/service" order="gt 0" count="ge 0"/>
                <include type="web/widget" order="gt 0" count="ge 0"/>
            <!-- /group -->
            <exclude type="native"/>
        </package>

        <package name="hybrid" type="hybrid" priority="2" unspecified="false">
            <include type="web/app" order="0" count="1"/>
            <!-- group type="or" -->
                <include type="web/service" order="gt 0" count="ge 0"/>
                <include type="web/widget" order="gt 0" count="ge 0"/>
                <include type="native/app/ui" order="gt 0" count="0"/>
                <include type="native/app/service" order="gt 0" count="ge 0"/>
                <include type="native/app/watch" order="gt 0" count="0"/>
                <include type="native/app/widget" order="gt 0" count="ge 0"/>
                <include type="native/app/ime" order="gt 0" count="0"/>
            <!-- /group -->
        </package>
    </validator>
</ssi>
