X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/blast.git/blobdiff_plain/abbc64cf04a35ab3549d5c516f44c7c5921baa63..756baf5c8eaf003e8271dab9c395de2b0e704857:/projectfile.xsd diff --git a/projectfile.xsd b/projectfile.xsd index 36fe54e..02ba8fd 100644 --- a/projectfile.xsd +++ b/projectfile.xsd @@ -2,332 +2,472 @@ <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> - <!-- déclaration des groupes d'attributs --> - - <xs:attributeGroup name="group_itemAttrGroup"> - <xs:attribute ref="id"/> - <xs:attribute ref="name"/> - <xs:attribute ref="upper_group"/> - <xs:attribute ref="upper_item"/> - <xs:attribute ref="position"/> - <xs:attribute ref="dimension"/> - </xs:attributeGroup> - - <xs:attributeGroup name="group_ifaceAttrGroup"> - <xs:attribute ref="id"/> - <xs:attribute ref="name"/> - <xs:attribute ref="level"/> - <xs:attribute ref="direction"/> - <xs:attribute ref="orientation"/> - <xs:attribute ref="position"/> - </xs:attributeGroup> - - <xs:attributeGroup name="block_itemsAttrGroup"> - <xs:attribute ref="functional_count" /> - <xs:attribute ref="group_count" /> - </xs:attributeGroup> - - <xs:attributeGroup name="bi_functionalAttrGroup"> - <xs:attribute ref="id" /> - <xs:attribute ref="ref_xml" /> - <xs:attribute ref="ref_md5" /> - <xs:attribute ref="name" /> - <xs:attribute ref="position" /> - <xs:attribute ref="dimension" /> - </xs:attributeGroup> - - <xs:attributeGroup name="bif_parameterAttrGroup"> - <xs:attribute ref="name" /> - <xs:attribute ref="value" /> - <xs:attribute ref="context" /> - <xs:attribute ref="type" /> - - </xs:attributeGroup> - - <xs:attributeGroup name="bif_ifaceAttrGroup"> - <xs:attribute ref="id" /> - <xs:attribute ref="name" /> - <xs:attribute ref="ref_name" /> - <xs:attribute ref="orientation" /> - <xs:attribute ref="position" /> - </xs:attributeGroup> - - <xs:attributeGroup name="bi_groupAttrGroup"> - <xs:attribute ref="id" /> - <xs:attribute ref="inside_group" /> - <xs:attribute ref="position" /> - <xs:attribute ref="dimension" /> - </xs:attributeGroup> - - <xs:attributeGroup name="big_ifaceAttrGroup"> - <xs:attribute ref="id" /> - <xs:attribute ref="ref_name" /> - <xs:attribute ref="orientation" /> - <xs:attribute ref="position" /> - </xs:attributeGroup> - - <xs:attributeGroup name="connectionAttrGroup"> - <xs:attribute ref="from" /> - <xs:attribute ref="to" /> - </xs:attributeGroup> - - - <!-- déclaration des attributs --> - - <xs:attribute name="count"> - <xs:simpleType> - <xs:restriction base="xs:nonNegativeInteger"> - <xs:minInclusive value="0"/> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - - <xs:attribute name="id"> - <xs:simpleType> - <xs:restriction base="xs:nonNegativeInteger"> - <xs:minInclusive value="0"/> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - - <xs:attribute name="upper_group"> - <xs:simpleType> - <xs:restriction base="xs:integer"> - <xs:minInclusive value="-1"/> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - - <xs:attribute name="upper_item"> - <xs:simpleType> - <xs:restriction base="xs:integer"> - <xs:minInclusive value="-1"/> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - - <xs:attribute name="inside_group"> - <xs:simpleType> - <xs:restriction base="xs:nonNegativeInteger"> - <xs:minInclusive value="0"/> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - - <xs:attribute name="functional_count"> - <xs:simpleType> - <xs:restriction base="xs:nonNegativeInteger"> - <xs:minInclusive value="0"/> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - - <xs:attribute name="group_count"> - <xs:simpleType> - <xs:restriction base="xs:nonNegativeInteger"> - <xs:minInclusive value="0"/> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - - <xs:attribute name="value"> - <xs:simpleType> - <xs:restriction base="xs:nonNegativeInteger"> - <xs:minInclusive value="0"/> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - - <xs:attribute name="from"> - <xs:simpleType> - <xs:restriction base="xs:nonNegativeInteger"> - <xs:minInclusive value="0"/> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - - <xs:attribute name="to"> - <xs:simpleType> - <xs:restriction base="xs:nonNegativeInteger"> - <xs:minInclusive value="0"/> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - - <xs:attribute name="position" type="xs:string"/> - <xs:attribute name="dimension" type="xs:string"/> - <xs:attribute name="level" type="xs:string"/> - <xs:attribute name="direction" type="xs:string"/> - <xs:attribute name="orientation" type="xs:string"/> - <xs:attribute name="name" type="xs:string"/> - <xs:attribute name="ref_name" type="xs:string"/> - <xs:attribute name="ref_xml" type="xs:string"/> - <xs:attribute name="ref_md5" type="xs:string"/> - <xs:attribute name="context" type="xs:string"/> - <xs:attribute name="type" type="xs:string"/> - - - <!-- déclaration des groupes d'éléments --> - - <xs:group name="rootElmtGroup"> - <xs:sequence> - <xs:element ref="scenes"/> - <xs:element ref="connections"/> - </xs:sequence> - </xs:group> - - <xs:group name="sceneElmtGroup"> - <xs:sequence> - <xs:element ref="group_item"/> - <xs:element ref="block_items"/> - </xs:sequence> - </xs:group> - - <xs:group name="block_itemsElmtGroup"> - <xs:sequence> - <xs:element ref="bi_functional" minOccurs="0" maxOccurs="unbounded"/> - <xs:element ref="bi_group" minOccurs="0"/> - </xs:sequence> - </xs:group> - - <xs:group name="bi_functionalElmtGroup"> - <xs:sequence> - <xs:element ref="bif_parameters"/> - <xs:element ref="bif_ifaces"/> - </xs:sequence> - </xs:group> - - - <!-- déclaration des éléments --> - - <xs:element name="scenes"> - <xs:complexType> - <xs:sequence> - <xs:element ref="scene" maxOccurs="unbounded" /> - </xs:sequence> - <xs:attribute ref="count"/> - </xs:complexType> - </xs:element> - - <xs:element name="scene"> - <xs:complexType> - <xs:group ref="sceneElmtGroup"/> - <xs:attribute ref="id"/> - </xs:complexType> - </xs:element> - - <xs:element name="group_item"> - <xs:complexType> - <xs:sequence> - <xs:element ref="group_ifaces" maxOccurs="unbounded" /> - </xs:sequence> - <xs:attributeGroup ref="group_itemAttrGroup"/> - </xs:complexType> - </xs:element> - - <xs:element name="group_ifaces"> - <xs:complexType> - <xs:sequence> - <xs:element ref="group_iface" minOccurs="0" maxOccurs="unbounded"/> - </xs:sequence> - <xs:attribute ref="count"/> - </xs:complexType> - </xs:element> - - <xs:element name="group_iface"> - <xs:complexType> - <xs:attributeGroup ref="group_ifaceAttrGroup"/> - </xs:complexType> - </xs:element> - - <xs:element name="block_items"> - <xs:complexType> - <xs:group ref="block_itemsElmtGroup"/> - <xs:attributeGroup ref="block_itemsAttrGroup"/> - </xs:complexType> - </xs:element> - - <xs:element name="bi_functional"> - <xs:complexType> - <xs:group ref="bi_functionalElmtGroup"/> - <xs:attributeGroup ref="bi_functionalAttrGroup"/> - </xs:complexType> - </xs:element> - - <xs:element name="bif_parameters"> - <xs:complexType> - <xs:sequence> - <xs:element ref="bif_parameter" minOccurs="0" maxOccurs="unbounded" /> - </xs:sequence> - </xs:complexType> - </xs:element> - - <xs:element name="bif_parameter"> - <xs:complexType> - <xs:attributeGroup ref="bif_parameterAttrGroup"/> - </xs:complexType> - </xs:element> - - <xs:element name="bif_ifaces"> - <xs:complexType> - <xs:sequence> - <xs:element ref="bif_iface" minOccurs="0" maxOccurs="unbounded" /> - </xs:sequence> - <xs:attribute ref="count"/> - </xs:complexType> - </xs:element> - - <xs:element name="bif_iface"> - <xs:complexType> - <xs:attributeGroup ref="bif_ifaceAttrGroup"/> - </xs:complexType> - </xs:element> - - <xs:element name="bi_group"> - <xs:complexType> - <xs:sequence> - <xs:element ref="big_ifaces"/> - </xs:sequence> - <xs:attributeGroup ref="bi_groupAttrGroup"/> - </xs:complexType> - </xs:element> - - <xs:element name="big_ifaces"> - <xs:complexType> - <xs:sequence> - <xs:element ref="big_iface" minOccurs="0" maxOccurs="unbounded" /> - </xs:sequence> - <xs:attribute ref="count" /> - </xs:complexType> - </xs:element> - - <xs:element name="big_iface"> - <xs:complexType> - <xs:attributeGroup ref="big_ifaceAttrGroup" /> - </xs:complexType> - </xs:element> - - <xs:element name="connections"> - <xs:complexType> - <xs:sequence> - <xs:element ref="connection" minOccurs="0" maxOccurs="unbounded"/> - </xs:sequence> - <xs:attribute ref="count" /> - </xs:complexType> - </xs:element> - - <xs:element name="connection"> - <xs:complexType> - <xs:attributeGroup ref="connectionAttrGroup"/> - </xs:complexType> - </xs:element> - - <!-- racine du document --> - - <xs:element name="blast_project"> - <xs:complexType> - <xs:group ref="rootElmtGroup"/> - </xs:complexType> - </xs:element> + <!-- déclaration des groupes d'attributs --> + + <xs:attributeGroup name="group_itemAttrGroup"> + <xs:attribute ref="id"/> + <xs:attribute ref="name"/> + <xs:attribute ref="upper_group"/> + <xs:attribute ref="upper_item"/> + <xs:attribute ref="position"/> + <xs:attribute ref="dimension"/> + </xs:attributeGroup> + + <xs:attributeGroup name="group_ifaceAttrGroup"> + <xs:attribute ref="id"/> + <xs:attribute ref="name"/> + <xs:attribute ref="purpose"/> + <xs:attribute ref="direction"/> + <xs:attribute ref="orientation"/> + <xs:attribute ref="position"/> + </xs:attributeGroup> + + <xs:attributeGroup name="source_itemsAttrGroup"> + <xs:attribute ref="count" /> + </xs:attributeGroup> + + <xs:attributeGroup name="block_itemsAttrGroup"> + <xs:attribute ref="functional_count" /> + <xs:attribute ref="group_count" /> + </xs:attributeGroup> + + <xs:attributeGroup name="source_itemAttrGroup"> + <xs:attribute ref="id" /> + <xs:attribute ref="ref_xml" /> + <xs:attribute ref="ref_md5" /> + <xs:attribute ref="name" /> + <xs:attribute ref="position" /> + <xs:attribute ref="dimension" /> + </xs:attributeGroup> + + <xs:attributeGroup name="bi_functionalAttrGroup"> + <xs:attribute ref="id" /> + <xs:attribute ref="ref_xml" /> + <xs:attribute ref="ref_md5" /> + <xs:attribute ref="name" /> + <xs:attribute ref="position" /> + <xs:attribute ref="dimension" /> + </xs:attributeGroup> + + <xs:attributeGroup name="source_parameterAttrGroup"> + <xs:attribute ref="name" /> + <xs:attribute ref="value" /> + <xs:attribute ref="context" /> + <xs:attribute ref="type" /> + </xs:attributeGroup> + + <xs:attributeGroup name="bif_parameterAttrGroup"> + <xs:attribute ref="name" /> + <xs:attribute ref="value" /> + <xs:attribute ref="context" /> + <xs:attribute ref="type" /> + </xs:attributeGroup> + + <xs:attributeGroup name="source_ifaceAttrGroup"> + <xs:attribute ref="id" /> + <xs:attribute ref="name" /> + <xs:attribute ref="ref_name" /> + <xs:attribute ref="orientation" /> + <xs:attribute ref="position" /> + </xs:attributeGroup> + + <xs:attributeGroup name="bif_ifaceAttrGroup"> + <xs:attribute ref="id" /> + <xs:attribute ref="name" /> + <xs:attribute ref="ref_name" /> + <xs:attribute ref="orientation" /> + <xs:attribute ref="position" /> + </xs:attributeGroup> + + <xs:attributeGroup name="bi_groupAttrGroup"> + <xs:attribute ref="id" /> + <xs:attribute ref="inside_group" /> + <xs:attribute ref="position" /> + <xs:attribute ref="dimension" /> + </xs:attributeGroup> + + <xs:attributeGroup name="big_ifaceAttrGroup"> + <xs:attribute ref="id" /> + <xs:attribute ref="ref_name" /> + <xs:attribute ref="orientation" /> + <xs:attribute ref="position" /> + </xs:attributeGroup> + + <xs:attributeGroup name="connectionAttrGroup"> + <xs:attribute ref="from" /> + <xs:attribute ref="to" /> + </xs:attributeGroup> + + <xs:attributeGroup name="modifierAttrGroup"> + <xs:attribute ref="id" /> + <xs:attribute ref="type" /> + <xs:attribute ref="params" /> + </xs:attributeGroup> + + + <!-- déclaration des attributs --> + + <xs:attribute name="count"> + <xs:simpleType> + <xs:restriction base="xs:nonNegativeInteger"> + <xs:minInclusive value="0"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="id"> + <xs:simpleType> + <xs:restriction base="xs:nonNegativeInteger"> + <xs:minInclusive value="0"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="upper_scene"> + <xs:simpleType> + <xs:restriction base="xs:integer"> + <xs:minInclusive value="-1"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="upper_group"> + <xs:simpleType> + <xs:restriction base="xs:integer"> + <xs:minInclusive value="-1"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="upper_item"> + <xs:simpleType> + <xs:restriction base="xs:integer"> + <xs:minInclusive value="-1"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="inside_group"> + <xs:simpleType> + <xs:restriction base="xs:nonNegativeInteger"> + <xs:minInclusive value="0"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="functional_count"> + <xs:simpleType> + <xs:restriction base="xs:nonNegativeInteger"> + <xs:minInclusive value="0"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="group_count"> + <xs:simpleType> + <xs:restriction base="xs:nonNegativeInteger"> + <xs:minInclusive value="0"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="value" type="xs:string"/> + + <xs:attribute name="from"> + <xs:simpleType> + <xs:restriction base="xs:nonNegativeInteger"> + <xs:minInclusive value="0"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="to"> + <xs:simpleType> + <xs:restriction base="xs:nonNegativeInteger"> + <xs:minInclusive value="0"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="purpose"> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="data"/> + <xs:enumeration value="clock"/> + <xs:enumeration value="reset"/> + <xs:enumeration value="wishbone"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="direction"> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="input"/> + <xs:enumeration value="output"/> + <xs:enumeration value="inout"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="orientation"> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="west"/> + <xs:enumeration value="east"/> + <xs:enumeration value="north"/> + <xs:enumeration value="south"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + + <xs:attribute name="position" type="xs:string"/> + <xs:attribute name="dimension" type="xs:string"/> + <xs:attribute name="name" type="xs:string"/> + <xs:attribute name="ref_name" type="xs:string"/> + <xs:attribute name="ref_xml" type="xs:string"/> + <xs:attribute name="ref_md5" type="xs:string"/> + <xs:attribute name="context" type="xs:string"/> + <xs:attribute name="type" type="xs:string"/> + <xs:attribute name="params" type="xs:string"/> + <xs:attribute name="project_path" type="xs:string"/> + + + <!-- déclaration des groupes d'éléments --> + + <xs:group name="rootElmtGroup"> + <xs:sequence> + <xs:element ref="scenes"/> + <xs:element ref="connections"/> + <xs:element ref="modifiers"/> + </xs:sequence> + </xs:group> + + <xs:group name="sceneElmtGroup"> + <xs:sequence> + <xs:element ref="group_item"/> + <xs:element ref="source_items" minOccurs="0" maxOccurs="unbounded"/> + <xs:element ref="block_items"/> + </xs:sequence> + </xs:group> + + <xs:group name="source_itemsElmtGroup"> + <xs:sequence> + <xs:element ref="source_item" minOccurs="0" maxOccurs="unbounded"/> + </xs:sequence> + </xs:group> + + <xs:group name="block_itemsElmtGroup"> + <xs:sequence> + <xs:element ref="bi_functional" minOccurs="0" maxOccurs="unbounded"/> + <xs:element ref="bi_group" minOccurs="0" maxOccurs="unbounded"/> + </xs:sequence> + </xs:group> + + <xs:group name="source_itemElmtGroup"> + <xs:sequence> + <xs:element ref="source_parameters"/> + <xs:element ref="source_ifaces"/> + </xs:sequence> + </xs:group> + + <xs:group name="bi_functionalElmtGroup"> + <xs:sequence> + <xs:element ref="bif_parameters"/> + <xs:element ref="bif_ifaces"/> + </xs:sequence> + </xs:group> + + + <!-- déclaration des éléments --> + + <xs:element name="scenes"> + <xs:complexType> + <xs:sequence> + <xs:element ref="scene" maxOccurs="unbounded" /> + </xs:sequence> + <xs:attribute ref="count"/> + </xs:complexType> + </xs:element> + + <xs:element name="scene"> + <xs:complexType> + <xs:group ref="sceneElmtGroup"/> + <xs:attribute ref="id"/> + <xs:attribute ref="upper_scene"/> + </xs:complexType> + </xs:element> + + <xs:element name="group_item"> + <xs:complexType> + <xs:sequence> + <xs:element ref="group_ifaces" maxOccurs="unbounded" /> + </xs:sequence> + <xs:attributeGroup ref="group_itemAttrGroup"/> + </xs:complexType> + </xs:element> + + <xs:element name="group_ifaces"> + <xs:complexType> + <xs:sequence> + <xs:element ref="group_iface" minOccurs="0" maxOccurs="unbounded"/> + </xs:sequence> + <xs:attribute ref="count"/> + </xs:complexType> + </xs:element> + + <xs:element name="group_iface"> + <xs:complexType> + <xs:attributeGroup ref="group_ifaceAttrGroup"/> + </xs:complexType> + </xs:element> + + <xs:element name="source_items"> + <xs:complexType> + <xs:group ref="source_itemsElmtGroup"/> + <xs:attributeGroup ref="source_itemsAttrGroup"/> + </xs:complexType> + </xs:element> + + <xs:element name="block_items"> + <xs:complexType> + <xs:group ref="block_itemsElmtGroup"/> + <xs:attributeGroup ref="block_itemsAttrGroup"/> + </xs:complexType> + </xs:element> + + <xs:element name="source_item"> + <xs:complexType> + <xs:group ref="source_itemElmtGroup"/> + <xs:attributeGroup ref="source_itemAttrGroup"/> + </xs:complexType> + </xs:element> + + <xs:element name="bi_functional"> + <xs:complexType> + <xs:group ref="bi_functionalElmtGroup"/> + <xs:attributeGroup ref="bi_functionalAttrGroup"/> + </xs:complexType> + </xs:element> + + <xs:element name="source_parameters"> + <xs:complexType> + <xs:sequence> + <xs:element ref="source_parameter" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + </xs:element> + + <xs:element name="source_parameter"> + <xs:complexType> + <xs:attributeGroup ref="source_parameterAttrGroup"/> + </xs:complexType> + </xs:element> + + <xs:element name="bif_parameters"> + <xs:complexType> + <xs:sequence> + <xs:element ref="bif_parameter" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + </xs:element> + + <xs:element name="bif_parameter"> + <xs:complexType> + <xs:attributeGroup ref="bif_parameterAttrGroup"/> + </xs:complexType> + </xs:element> + + <xs:element name="source_ifaces"> + <xs:complexType> + <xs:sequence> + <xs:element ref="source_iface" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + <xs:attribute ref="count"/> + </xs:complexType> + </xs:element> + + <xs:element name="source_iface"> + <xs:complexType> + <xs:attributeGroup ref="source_ifaceAttrGroup"/> + </xs:complexType> + </xs:element> + + <xs:element name="bif_ifaces"> + <xs:complexType> + <xs:sequence> + <xs:element ref="bif_iface" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + <xs:attribute ref="count"/> + </xs:complexType> + </xs:element> + + <xs:element name="bif_iface"> + <xs:complexType> + <xs:attributeGroup ref="bif_ifaceAttrGroup"/> + </xs:complexType> + </xs:element> + + <xs:element name="bi_group"> + <xs:complexType> + <xs:sequence> + <xs:element ref="big_ifaces"/> + </xs:sequence> + <xs:attributeGroup ref="bi_groupAttrGroup"/> + </xs:complexType> + </xs:element> + + <xs:element name="big_ifaces"> + <xs:complexType> + <xs:sequence> + <xs:element ref="big_iface" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + <xs:attribute ref="count" /> + </xs:complexType> + </xs:element> + + <xs:element name="big_iface"> + <xs:complexType> + <xs:attributeGroup ref="big_ifaceAttrGroup" /> + </xs:complexType> + </xs:element> + + <xs:element name="connections"> + <xs:complexType> + <xs:sequence> + <xs:element ref="connection" minOccurs="0" maxOccurs="unbounded"/> + </xs:sequence> + <xs:attribute ref="count" /> + </xs:complexType> + </xs:element> + + <xs:element name="connection"> + <xs:complexType> + <xs:attributeGroup ref="connectionAttrGroup"/> + </xs:complexType> + </xs:element> + + <xs:element name="modifiers"> + <xs:complexType> + <xs:sequence> + <xs:element ref="modifier" minOccurs="0" maxOccurs="unbounded"/> + </xs:sequence> + </xs:complexType> + </xs:element> + + <xs:element name="modifier"> + <xs:complexType> + <xs:attributeGroup ref="modifierAttrGroup"/> + </xs:complexType> + </xs:element> + + <!-- racine du document --> + + <xs:element name="blast_project"> + <xs:complexType> + <xs:group ref="rootElmtGroup"/> + <xs:attribute ref="project_path" /> + </xs:complexType> + </xs:element> </xs:schema>