| <?xml version="1.0" encoding="UTF-8"?> |
| <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> |
| <xs:element name="effects_model"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element minOccurs="0" ref="templates"/> |
| <xs:element ref="values"/> |
| <xs:element ref="effect"/> |
| <xs:element ref="raw"/> |
| </xs:sequence> |
| <xs:attribute name="name" use="required" type="xs:NCName"/> |
| </xs:complexType> |
| </xs:element> |
| |
| |
| <xs:element name="templates"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element ref="template"/> |
| </xs:sequence> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="template"> |
| <xs:complexType mixed="true"> |
| <xs:attribute name="name" use="required" type="xs:NCName"/> |
| <xs:attribute name="type" use="required" type="xs:NCName"/> |
| </xs:complexType> |
| </xs:element> |
| |
| |
| <xs:element name="values"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element minOccurs="0" maxOccurs="unbounded" ref="input"/> |
| <xs:element maxOccurs="unbounded" ref="output"/> |
| </xs:sequence> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="input"> |
| <xs:complexType> |
| <xs:attribute name="desc" use="required"/> |
| <xs:attribute name="name" type="xs:NCName"/> |
| <xs:attribute name="reads" type="xs:NCName"/> |
| <xs:attribute name="type" use="required" type="xs:NCName"/> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="output"> |
| <xs:complexType> |
| <xs:attribute name="desc" use="required"/> |
| <xs:attribute name="name" type="xs:NCName"/> |
| <xs:attribute name="reads" type="xs:NCName"/> |
| <xs:attribute name="writes" type="xs:NCName"/> |
| </xs:complexType> |
| </xs:element> |
| |
| <xs:element name="effect"> |
| <xs:complexType> |
| <xs:sequence> |
| <xs:element ref="entering"/> |
| <xs:element ref="during"/> |
| </xs:sequence> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="entering"> |
| <xs:complexType> |
| <xs:simpleContent> |
| <xs:extension base="xs:NCName"> |
| <xs:attribute name="local" use="required" type="xs:boolean"/> |
| <xs:attribute name="type" use="required" type="xs:NCName"/> |
| </xs:extension> |
| </xs:simpleContent> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="during"> |
| <xs:complexType> |
| <xs:simpleContent> |
| <xs:extension base="xs:NCName"> |
| <xs:attribute name="local" use="required" type="xs:boolean"/> |
| <xs:attribute name="type" use="required" type="xs:NCName"/> |
| </xs:extension> |
| </xs:simpleContent> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="raw"> |
| <xs:complexType mixed="true"> |
| <xs:attribute name="local" type="xs:boolean"/> |
| <xs:attribute name="type" type="xs:NCName"/> |
| </xs:complexType> |
| </xs:element> |
| </xs:schema> |