123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- -->
- <xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
- <xs:include schemaLocation="urn:magento:module:Magento_Widget:etc/types.xsd"/>
- <xs:annotation>
- <xs:documentation>Contains widgets.</xs:documentation>
- </xs:annotation>
- <xs:element name="widgets">
- <xs:annotation>
- <xs:documentation>A list of widgets.</xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence maxOccurs="unbounded" minOccurs="0">
- <xs:element name="widget" type="widgetType" />
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:complexType name="widgetType">
- <xs:annotation>
- <xs:documentation>Definition of a widget.</xs:documentation>
- </xs:annotation>
- <xs:all>
- <xs:element name="label" type="translatableType" maxOccurs="1" minOccurs="0" />
- <xs:element name="description" type="translatableType" maxOccurs="1" minOccurs="0" />
- <xs:element name="parameters" type="parametersType" minOccurs="0"/>
- <xs:element name="containers" type="containersType" minOccurs="0"/>
- </xs:all>
- <xs:attribute name="id" type="xs:ID" use="required" />
- <xs:attribute name="class" type="xs:string" />
- <xs:attribute name="is_email_compatible" type="xs:boolean" />
- <xs:attribute name="placeholder_image" type="xs:string" />
- <xs:attribute name="ttl" type="xs:int" />
- </xs:complexType>
- <xs:complexType name="parametersType">
- <xs:sequence>
- <xs:element name="parameter" type="parameterType" maxOccurs="unbounded" minOccurs="1" />
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="containersType">
- <xs:sequence>
- <xs:element name="container" type="containerType" maxOccurs="unbounded" minOccurs="1" />
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="translatableType">
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute name="translate" use="optional" fixed="true" type="xs:boolean"/>
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="parameterType" abstract="true">
- <xs:annotation>
- <xs:documentation>
- Abstract type which is parent of all parameters. Contains attributes
- and elements common across all parameter types.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="label" type="translatableType" minOccurs="0" maxOccurs="1" />
- <xs:element name="description" type="translatableType" minOccurs="0" maxOccurs="1" />
- <xs:element name="depends" type="dependsType" minOccurs="0" maxOccurs="1" />
- </xs:sequence>
- <xs:attribute name="name" type="xs:NMTOKEN" use="required" />
- <xs:attribute name="visible" type="xs:boolean" />
- <xs:attribute name="sort_order" type="xs:int" />
- <xs:attribute name="required" type="xs:string" />
- </xs:complexType>
- <xs:complexType name="dependsParameterType">
- <xs:annotation>
- <xs:documentation>
- The parameter name and the value it must be to satisfy this dependency.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="name" type="xs:NMTOKEN" use="required" />
- <xs:attribute name="value" type="xs:string" use="required" />
- </xs:complexType>
- <xs:complexType name="block">
- <xs:annotation>
- <xs:documentation>Parameter type which supplies a renderer.</xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="parameterType">
- <xs:sequence>
- <xs:element name="block" type="blockType" />
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="conditions">
- <xs:annotation>
- <xs:documentation>Parameter type which provide conditions functionality.</xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="parameterType">
- <xs:attribute name="class" type="xs:string" use="required" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="dataType">
- <xs:annotation>
- <xs:documentation>Data for the renderer.</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="item" type="namedType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="blockType">
- <xs:annotation>
- <xs:documentation>Class and data needed to render the parameter.</xs:documentation>
- </xs:annotation>
- <xs:all>
- <xs:element name="data" minOccurs="0" type="dataType" />
- </xs:all>
- <xs:attribute name="class" type="xs:string" />
- </xs:complexType>
- <xs:complexType name="text">
- <xs:annotation>
- <xs:documentation>Parameter type which is text</xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="parameterType">
- <xs:sequence>
- <xs:element name="value" type="translatableType" minOccurs="0" maxOccurs="1" />
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="select">
- <xs:annotation>
- <xs:documentation>Parameter type which has a list of options.</xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="parameterType">
- <xs:sequence>
- <xs:element name="options" type="optionsType" minOccurs="0"/>
- </xs:sequence>
- <xs:attribute name="source_model" type="xs:string" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="multiselect">
- <xs:annotation>
- <xs:documentation>Display a parameter with a multi-select box.</xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="parameterType">
- <xs:sequence>
- <xs:element name="options" type="optionsType" minOccurs="0"/>
- </xs:sequence>
- <xs:attribute name="source_model" type="xs:string" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="optionsType">
- <xs:sequence>
- <xs:element name="option" type="optionType" maxOccurs="unbounded" minOccurs="1" />
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="optionType">
- <xs:annotation>
- <xs:documentation>An option of a select parameter.</xs:documentation>
- </xs:annotation>
- <xs:all>
- <xs:element name="label" type="translatableType" />
- </xs:all>
- <xs:attribute name="name" type="xs:NMTOKEN" use="required" />
- <xs:attribute name="value" type="xs:string" />
- <xs:attribute name="selected" type="xs:boolean" />
- </xs:complexType>
- <xs:complexType name="containerType">
- <xs:annotation>
- <xs:documentation>Specifies the widget's sections and templates.</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="template" type="templateType" minOccurs="0" maxOccurs="unbounded" />
- </xs:sequence>
- <xs:attribute name="name" type="xs:NMTOKEN" use="required" />
- </xs:complexType>
- <xs:complexType name="templateType">
- <xs:annotation>
- <xs:documentation>Name and value of template</xs:documentation>
- </xs:annotation>
- <xs:attribute name="name" type="xs:NMTOKEN" use="required" />
- <xs:attribute name="value" type="xs:string" use="required"/>
- </xs:complexType>
- <xs:complexType name="dependsType">
- <xs:annotation>
- <xs:documentation>List of parameters this parameter depends on.</xs:documentation>
- </xs:annotation>
- <xs:sequence maxOccurs="unbounded">
- <xs:element name="parameter" type="dependsParameterType" />
- </xs:sequence>
- </xs:complexType>
- </xs:schema>
|