Spark 3 Oozie action schema

Refer to the following for the schema of a Spark 3 Oozie action.

<xs:schema elementFormDefault="qualified"
           targetNamespace="uri:oozie:spark3-action:1.0"
           xmlns:spark3="uri:oozie:spark3-action:1.0"
           xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:include schemaLocation="oozie-common-1.0.xsd"/>
    <xs:element name="spark3" type="spark3:ACTION"/>
    <xs:complexType name="ACTION">
        <xs:sequence>
            <xs:element maxOccurs="1" minOccurs="1" name="resource-manager" type="xs:string"/>
            <xs:element maxOccurs="1" minOccurs="0" name="name-node" type="xs:string"/>
            <xs:element maxOccurs="1" minOccurs="0" name="prepare" type="spark3:PREPARE"/>
            <xs:element maxOccurs="1" minOccurs="0" name="launcher" type="spark3:LAUNCHER"/>
            <xs:element maxOccurs="unbounded" minOccurs="0" name="job-xml" type="xs:string"/>
            <xs:element maxOccurs="1" minOccurs="0" name="configuration" type="spark3:CONFIGURATION"/>
            <xs:element maxOccurs="1" minOccurs="1" name="master" type="xs:string"/>
            <xs:element maxOccurs="1" minOccurs="0" name="mode" type="xs:string"/>
            <xs:element maxOccurs="1" minOccurs="1" name="name" type="xs:string"/>
            <xs:element maxOccurs="1" minOccurs="0" name="class" type="xs:string"/>
            <xs:element maxOccurs="1" minOccurs="1" name="jar" type="xs:string"/>
            <xs:element maxOccurs="1" minOccurs="0" name="spark-opts" type="xs:string"/>
            <xs:element maxOccurs="unbounded" minOccurs="0" name="arg" type="xs:string"/>
            <xs:element maxOccurs="unbounded" minOccurs="0" name="file" type="xs:string"/>
            <xs:element maxOccurs="unbounded" minOccurs="0" name="archive" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>
</xs:schema>