spirits-1.0.xml 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <xs:schema targetNamespace="urn:ietf:params:xml:ns:spirits-1.0"
  3. xmlns:tns="urn:ietf:params:xml:ns:spirits-1.0"
  4. xmlns:xs="http://www.w3.org/2001/XMLSchema"
  5. elementFormDefault="qualified"
  6. attributeFormDefault="unqualified">
  7. <!-- This import brings in the XML language attribute xml:lang-->
  8. <xs:import namespace="http://www.w3.org/XML/1998/namespace"
  9. schemaLocation="http://www.w3.org/2001/xml.xsd"/>
  10. <xs:annotation>
  11. <xs:documentation xml:lang="en">
  12. Describes SPIRITS events.
  13. </xs:documentation>
  14. </xs:annotation>
  15. <xs:element name="spirits-event" type="tns:SpiritsEventType"/>
  16. <xs:complexType name="SpiritsEventType">
  17. <xs:sequence>
  18. <xs:element name="Event" type="tns:EventType" minOccurs="1"
  19. maxOccurs="unbounded"/>
  20. <xs:any namespace="##other" processContents="lax"
  21. maxOccurs="unbounded"/>
  22. </xs:sequence>
  23. </xs:complexType>
  24. <xs:complexType name="EventType">
  25. <xs:sequence>
  26. <xs:element name="CalledPartyNumber" type="xs:token"
  27. minOccurs="0" maxOccurs="1"/>
  28. <xs:element name="CallingPartyNumber" type="xs:token"
  29. minOccurs="0" maxOccurs="1"/>
  30. <xs:element name="DialledDigits" type="xs:token"
  31. minOccurs="0" maxOccurs="1"/>
  32. <xs:element name="Cell-ID" type="xs:token"
  33. minOccurs="0" maxOccurs="1"/>
  34. <xs:element name="Cause" type="tns:CauseType"
  35. minOccurs="0" maxOccurs="1"/>
  36. </xs:sequence>
  37. <xs:attribute name="type" type="tns:PayloadType"
  38. use="required"/>
  39. <xs:attribute name="name" type="tns:EventNameType"
  40. use="required"/>
  41. <xs:attribute name="mode" type="tns:ModeType"
  42. use="optional" default="N"/>
  43. </xs:complexType>
  44. <xs:simpleType name="PayloadType">
  45. <!-- The <spirits-event> will contain either a list of -->
  46. <!-- INDPs events or a list of userprof events -->
  47. <xs:restriction base="xs:string">
  48. <xs:enumeration value="INDPs"/>
  49. <xs:enumeration value="userprof"/>
  50. </xs:restriction>
  51. </xs:simpleType>
  52. <xs:simpleType name="EventNameType">
  53. <xs:restriction base="xs:string">
  54. <!-- These are the call related events (DPs). If the -->
  55. <!-- PaylaodType is "INDPs", then the value of the "name" -->
  56. <!-- attribute is one of these; example -->
  57. <!-- <spirits-event type="INDPs" name="OCI"> -->
  58. <xs:enumeration value="OAA"/>
  59. <xs:enumeration value="OCI"/>
  60. <xs:enumeration value="OAI"/>
  61. <xs:enumeration value="OA"/>
  62. <xs:enumeration value="OTS"/>
  63. <xs:enumeration value="ONA"/>
  64. <xs:enumeration value="OCPB"/>
  65. <xs:enumeration value="ORSF"/>
  66. <xs:enumeration value="OMC"/>
  67. <xs:enumeration value="OAB"/>
  68. <xs:enumeration value="OD"/>
  69. <xs:enumeration value="TA"/>
  70. <xs:enumeration value="TMC"/>
  71. <xs:enumeration value="TAB"/>
  72. <xs:enumeration value="TD"/>
  73. <xs:enumeration value="TAA"/>
  74. <xs:enumeration value="TFSA"/>
  75. <xs:enumeration value="TB"/>
  76. <!-- These are the non-call related events. If the -->
  77. <!-- PayloadType is "user-prof", then the value of the -->
  78. <!-- "name" attribute is one of these; example -->
  79. <!-- <spirits-event type="userprof" name="LUDV"> -->
  80. <xs:enumeration value="LUSV"/>
  81. <xs:enumeration value="LUDV"/>
  82. <xs:enumeration value="REG"/>
  83. <xs:enumeration value="UNREGMS"/>
  84. <xs:enumeration value="UNREGNTWK"/>
  85. </xs:restriction>
  86. </xs:simpleType>
  87. <xs:simpleType name="ModeType">
  88. <!-- One of two values: "N"otification or "R"equest -->
  89. <xs:restriction base="xs:string">
  90. <xs:enumeration value="N"/>
  91. <xs:enumeration value="R"/>
  92. </xs:restriction>
  93. </xs:simpleType>
  94. <xs:simpleType name="CauseType">
  95. <xs:restriction base="xs:string">
  96. <xs:enumeration value="Busy"/>
  97. <xs:enumeration value="Unreachable"/>
  98. </xs:restriction>
  99. </xs:simpleType>
  100. </xs:schema>