<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  
  <xs:element name="root">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="updates" minOccurs="0">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="update" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="operation">
                      <xs:simpleType>
                        <xs:restriction base="xs:string">
                          <xs:enumeration value="ADD_BEFORE"/>
                          <xs:enumeration value="ADD_AFTER"/>
                          <xs:enumeration value="MOVE_BEFORE"/>
                          <xs:enumeration value="MOVE_AFTER"/>
                          <xs:enumeration value="SET_PARAM"/>
                          <xs:enumeration value="ADD_PERSONAS"/>
                          <xs:enumeration value="MODIFY_PERSONAS"/>
                          <xs:enumeration value="DELETE"/>
                        </xs:restriction>
                      </xs:simpleType>
                    </xs:element>
                    <xs:element name="destinationId" type="xs:string" minOccurs="0"/>
                    <xs:element name="destinationParam" type="xs:string" minOccurs="0"/>
                    <xs:element name="sourceId" type="xs:string" minOccurs="0"/>
                    <xs:element name="structure" minOccurs="0">
                      <xs:complexType mixed="true">
                        <xs:sequence>
                          <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="personas" minOccurs="0">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                    <xs:element name="modifications" minOccurs="0">
                      <xs:complexType>
                        <xs:sequence>
                          <xs:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
                        </xs:sequence>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="message" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  
</xs:schema>
