forked from ghetolay/jwamp
-
Notifications
You must be signed in to change notification settings - Fork 1
/
jwamp.xsd
80 lines (75 loc) · 2.77 KB
/
jwamp.xsd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="https://github.com/ghetolay/jwamp" xmlns:tns="https://github.com/ghetolay/jwamp"
elementFormDefault="qualified">
<element name="jwamp">
<annotation>
<documentation>A simple way to specified mapping action for the WebSocket subprotocol WAMP.</documentation>
</annotation>
<complexType>
<sequence>
<element ref="tns:rpc" maxOccurs="1" minOccurs="0"/>
<element ref="tns:event" maxOccurs="1" minOccurs="0"/>
</sequence>
</complexType>
</element>
<element name="rpc">
<complexType>
<annotation>
<documentation>Specify the list of remote call actions.</documentation>
</annotation>
<sequence>
<element ref="tns:action" maxOccurs="unbounded" minOccurs="1"/>
</sequence>
</complexType>
<key name="rpc-action">
<selector xpath="tns:action"/>
<field xpath="@id"/>
</key>
</element>
<element name="event">
<annotation>
<documentation>This element can contains action to map(server side) and topics to automatically subscribe at connection (client side). Both can be specified. </documentation>
</annotation>
<complexType>
<sequence>
<element ref="tns:action" maxOccurs="unbounded" minOccurs="0"/>
<element ref="tns:subscribe" maxOccurs="1" minOccurs="0"/>
</sequence>
</complexType>
<key name="event-action">
<selector xpath="tns:action"/>
<field xpath="@id"/>
</key>
</element>
<element name="action">
<annotation>
<documentation>The action to map by its id attribute. The action specified by the class attribute must implements either imbaosft.jwamp.rpc.CallAction or imbasoft.jwamp.event.EventAction depending on the parent element.</documentation>
</annotation>
<complexType>
<attribute name="id" type="string">
<annotation>
<documentation>A string specifying the Action id. It must be unique for it's kind(rpc or event) but a rpc call can have the same Id as a event action</documentation>
</annotation>
</attribute>
<attribute name="class" use="required">
<annotation>
<documentation>A fully qualified Java class name.</documentation>
</annotation>
<simpleType>
<restriction base="string">
<pattern value="([\p{L}_$][\p{L}\p{N}_$]*\.)*[\p{L}_$][\p{L}\p{N}_$]*"/>
</restriction>
</simpleType>
</attribute>
</complexType>
</element>
<element name="subscribe">
<annotation>
<documentation>A list of topics to subscribe automatically at the connection. The topics must be comma separated.</documentation>
</annotation>
<simpleType>
<restriction base="string">
<pattern value="([-_\w],?)+"/>
</restriction>
</simpleType>
</element>
</schema>