Enclosing element for the definition of all services
]]></xsd:documentation>
</xsd:annotation>
- <xsd:choice minOccurs="1" maxOccurs="unbounded">
- <xsd:element name="service" type="service" />
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="service" type="service" minOccurs="1" />
+ <xsd:element name="prototype" type="prototype" minOccurs="0" />
+ <xsd:element name="defaults" type="defaults" minOccurs="0" maxOccurs="1" />
+ <xsd:element name="instanceof" type="instanceof" minOccurs="0" />
</xsd:choice>
</xsd:complexType>
</xsd:annotation>
<xsd:attribute name="resource" type="xsd:string" use="required" />
<xsd:attribute name="ignore-errors" type="boolean" />
+ <xsd:attribute name="type" type="xsd:string" />
</xsd:complexType>
<xsd:complexType name="callable">
<xsd:choice minOccurs="0" maxOccurs="1">
<xsd:element name="service" type="service" minOccurs="0" maxOccurs="1" />
</xsd:choice>
- <xsd:attribute name="id" type="xsd:string" />
<xsd:attribute name="service" type="xsd:string" />
<xsd:attribute name="class" type="xsd:string" />
<xsd:attribute name="method" type="xsd:string" />
<xsd:attribute name="function" type="xsd:string" />
</xsd:complexType>
+ <xsd:complexType name="defaults">
+ <xsd:annotation>
+ <xsd:documentation><![CDATA[
+ Enclosing element for the service definitions' defaults for the current file
+ ]]></xsd:documentation>
+ </xsd:annotation>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="tag" type="tag" minOccurs="0" maxOccurs="unbounded" />
+ <xsd:element name="bind" type="bind" minOccurs="0" maxOccurs="unbounded" />
+ </xsd:choice>
+ <xsd:attribute name="public" type="boolean" />
+ <xsd:attribute name="autowire" type="boolean" />
+ <xsd:attribute name="autoconfigure" type="boolean" />
+ </xsd:complexType>
+
<xsd:complexType name="service">
<xsd:choice maxOccurs="unbounded">
<xsd:element name="file" type="xsd:string" minOccurs="0" maxOccurs="1" />
<xsd:element name="tag" type="tag" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="property" type="property" minOccurs="0" maxOccurs="unbounded" />
<xsd:element name="autowiring-type" type="xsd:string" minOccurs="0" maxOccurs="unbounded" />
+ <xsd:element name="bind" type="bind" minOccurs="0" maxOccurs="unbounded" />
</xsd:choice>
<xsd:attribute name="id" type="xsd:string" />
<xsd:attribute name="class" type="xsd:string" />
<xsd:attribute name="decoration-inner-name" type="xsd:string" />
<xsd:attribute name="decoration-priority" type="xsd:integer" />
<xsd:attribute name="autowire" type="boolean" />
+ <xsd:attribute name="autoconfigure" type="boolean" />
+ </xsd:complexType>
+
+ <xsd:complexType name="instanceof">
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="configurator" type="callable" minOccurs="0" maxOccurs="1" />
+ <xsd:element name="call" type="call" minOccurs="0" maxOccurs="unbounded" />
+ <xsd:element name="tag" type="tag" minOccurs="0" maxOccurs="unbounded" />
+ <xsd:element name="property" type="property" minOccurs="0" maxOccurs="unbounded" />
+ </xsd:choice>
+ <xsd:attribute name="id" type="xsd:string" use="required" />
+ <xsd:attribute name="shared" type="boolean" />
+ <xsd:attribute name="public" type="boolean" />
+ <xsd:attribute name="lazy" type="boolean" />
+ <xsd:attribute name="autowire" type="boolean" />
+ <xsd:attribute name="autoconfigure" type="boolean" />
+ </xsd:complexType>
+
+ <xsd:complexType name="prototype">
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="argument" type="argument" minOccurs="0" maxOccurs="unbounded" />
+ <xsd:element name="configurator" type="callable" minOccurs="0" maxOccurs="1" />
+ <xsd:element name="factory" type="callable" minOccurs="0" maxOccurs="1" />
+ <xsd:element name="deprecated" type="xsd:string" minOccurs="0" maxOccurs="1" />
+ <xsd:element name="call" type="call" minOccurs="0" maxOccurs="unbounded" />
+ <xsd:element name="tag" type="tag" minOccurs="0" maxOccurs="unbounded" />
+ <xsd:element name="property" type="property" minOccurs="0" maxOccurs="unbounded" />
+ <xsd:element name="bind" type="bind" minOccurs="0" maxOccurs="unbounded" />
+ </xsd:choice>
+ <xsd:attribute name="namespace" type="xsd:string" use="required" />
+ <xsd:attribute name="resource" type="xsd:string" use="required" />
+ <xsd:attribute name="exclude" type="xsd:string" />
+ <xsd:attribute name="shared" type="boolean" />
+ <xsd:attribute name="public" type="boolean" />
+ <xsd:attribute name="lazy" type="boolean" />
+ <xsd:attribute name="abstract" type="boolean" />
+ <xsd:attribute name="parent" type="xsd:string" />
+ <xsd:attribute name="autowire" type="boolean" />
+ <xsd:attribute name="autoconfigure" type="boolean" />
</xsd:complexType>
<xsd:complexType name="tag">
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="on-invalid" type="invalid_sequence" />
<xsd:attribute name="strict" type="boolean" />
+ <xsd:attribute name="tag" type="xsd:string" />
+ </xsd:complexType>
+
+ <xsd:complexType name="bind" mixed="true">
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="bind" type="argument" minOccurs="0" maxOccurs="unbounded" />
+ <xsd:element name="service" type="service" />
+ </xsd:choice>
+ <xsd:attribute name="type" type="argument_type" />
+ <xsd:attribute name="id" type="xsd:string" />
+ <xsd:attribute name="key" type="xsd:string" use="required" />
+ <xsd:attribute name="on-invalid" type="invalid_sequence" />
+ <xsd:attribute name="method" type="xsd:string" />
</xsd:complexType>
<xsd:complexType name="argument" mixed="true">
<xsd:attribute name="index" type="xsd:integer" />
<xsd:attribute name="on-invalid" type="invalid_sequence" />
<xsd:attribute name="strict" type="boolean" />
+ <xsd:attribute name="tag" type="xsd:string" />
</xsd:complexType>
<xsd:complexType name="call">
<xsd:enumeration value="expression" />
<xsd:enumeration value="string" />
<xsd:enumeration value="constant" />
+ <xsd:enumeration value="iterator" />
+ <xsd:enumeration value="tagged" />
</xsd:restriction>
</xsd:simpleType>
<xsd:enumeration value="null" />
<xsd:enumeration value="ignore" />
<xsd:enumeration value="exception" />
+ <xsd:enumeration value="ignore_uninitialized" />
</xsd:restriction>
</xsd:simpleType>