Don't like ads? PRO users don't see any ads ;-)
Guest

Fuco

By: a guest on Aug 26th, 2010  |  syntax: XML  |  size: 3.50 KB  |  hits: 147  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  3.     <xs:element name="raws">
  4.         <xs:complexType>
  5.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  6.                 <xs:element name="c" type="t_container" minOccurs="0" maxOccurs="unbounded"/>
  7.                 <xs:element name="t" type="t_token" minOccurs="0" maxOccurs="unbounded"/>
  8.                 <xs:element name="f" type="t_flag" minOccurs="0" maxOccurs="unbounded"/>
  9.             </xs:choice>
  10.         </xs:complexType>
  11.     </xs:element>
  12.  
  13.     <xs:complexType name="t_container">
  14.         <xs:sequence>
  15.             <xs:element name="d" type="xs:string" minOccurs="0" maxOccurs="1"/>
  16.             <xs:choice minOccurs="0" maxOccurs="unbounded">
  17.                 <xs:element name="a" type="t_attribute" minOccurs="0" maxOccurs="unbounded"/>
  18.                 <xs:element name="c" type="t_container_inside" minOccurs="0" maxOccurs="unbounded"/>
  19.                 <xs:element name="t" type="t_token_inside" minOccurs="0" maxOccurs="unbounded"/>
  20.                 <xs:element name="f" type="t_flag_inside" minOccurs="0" maxOccurs="unbounded"/>
  21.             </xs:choice>
  22.         </xs:sequence>
  23.         <xs:attribute name="name" type="xs:string" use="required"/>
  24.     </xs:complexType>
  25.  
  26.     <xs:complexType name="t_container_inside">
  27.         <xs:attribute name="name" type="xs:string" use="required"/>
  28.         <xs:attribute name="required" type="xs:string"/>
  29.     </xs:complexType>
  30.  
  31.     <xs:complexType name="t_token">
  32.         <xs:sequence>
  33.             <xs:element name="d" type="xs:string" minOccurs="0" maxOccurs="1"/>
  34.             <xs:element name="a" type="t_attribute" minOccurs="0" maxOccurs="unbounded"/>
  35.         </xs:sequence>
  36.         <xs:attribute name="name" type="xs:string" use="required"/>
  37.     </xs:complexType>
  38.  
  39.     <xs:complexType name="t_token_inside">
  40.         <xs:attribute name="name" type="xs:string" use="required"/>
  41.         <xs:attribute name="required" type="xs:string"/>
  42.     </xs:complexType>
  43.  
  44.     <xs:complexType name="t_flag">
  45.         <xs:sequence>
  46.             <xs:element name="d" type="xs:string" minOccurs="0" maxOccurs="1"/>
  47.         </xs:sequence>
  48.         <xs:attribute name="name" type="xs:string" use="required"/>
  49.     </xs:complexType>
  50.    
  51.     <xs:complexType name="t_flag_inside">
  52.         <xs:attribute name="name" type="xs:string" use="required"/>
  53.         <xs:attribute name="required" type="xs:string"/>
  54.     </xs:complexType>
  55.  
  56.     <xs:complexType name="t_attribute">
  57.         <xs:sequence>
  58.             <xs:element name="d" type="xs:string" minOccurs="0" maxOccurs="1"/>
  59.             <xs:element name="e" type="t_enum_item" minOccurs="0" maxOccurs="unbounded"/>
  60.         </xs:sequence>
  61.         <xs:attribute name="id" type="xs:string"/>
  62.         <xs:attribute name="required" type="xs:string"/>
  63.         <xs:attribute name="min" type="xs:string"/>
  64.         <xs:attribute name="max" type="xs:string"/>
  65.         <xs:attribute name="type" use="required">
  66.             <xs:simpleType>
  67.                 <xs:restriction base="xs:string">
  68.                     <xs:enumeration value="string"/>
  69.                     <xs:enumeration value="int"/>
  70.                     <xs:enumeration value="range"/>
  71.                     <xs:enumeration value="enum"/>
  72.                 </xs:restriction>
  73.             </xs:simpleType>
  74.         </xs:attribute>
  75.     </xs:complexType>
  76.  
  77.     <xs:complexType name="t_enum_item">
  78.         <xs:attribute name="name" type="xs:string" use="required"/>
  79.     </xs:complexType>
  80.  
  81. </xs:schema>