-
Notifications
You must be signed in to change notification settings - Fork 0
/
LibraryElement.dtd
231 lines (224 loc) · 6.88 KB
/
LibraryElement.dtd
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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
<?xml version="1.0" encoding="UTF-8"?>
<!-- Common elements -->
<!ELEMENT Identification EMPTY>
<!ATTLIST Identification
Standard CDATA #IMPLIED
Classification CDATA #IMPLIED
ApplicationDomain CDATA #IMPLIED
Function CDATA #IMPLIED
Type CDATA #IMPLIED
Description CDATA #IMPLIED >
<!ELEMENT VersionInfo EMPTY>
<!ATTLIST VersionInfo
Organization CDATA #REQUIRED
Version CDATA #REQUIRED
Author CDATA #REQUIRED
Date CDATA #REQUIRED
Remarks CDATA #IMPLIED >
<!ELEMENT CompilerInfo (Compiler*)>
<!ATTLIST CompilerInfo
header CDATA #IMPLIED
classdef CDATA #IMPLIED >
<!ELEMENT Compiler EMPTY>
<!ATTLIST Compiler
Language (Java | Cpp | C | Other) #REQUIRED
Vendor CDATA #REQUIRED
Product CDATA #REQUIRED
Version CDATA #REQUIRED >
<!ELEMENT FBNetwork (FB*,EventConnections?,DataConnections?,AdapterConnections?)>
<!ELEMENT FB (Parameter*)>
<!ATTLIST FB
Name CDATA #REQUIRED
Type CDATA #REQUIRED
Comment CDATA #IMPLIED
x CDATA #IMPLIED
y CDATA #IMPLIED >
<!ELEMENT EventConnections (Connection+)>
<!ELEMENT DataConnections (Connection+)>
<!ELEMENT AdapterConnections (Connection+)>
<!ELEMENT Connection EMPTY>
<!ATTLIST Connection
Source CDATA #REQUIRED
Destination CDATA #REQUIRED
Comment CDATA #IMPLIED
dx1 CDATA #IMPLIED
dx2 CDATA #IMPLIED
dy CDATA #IMPLIED >
<!-- FBType elements -->
<!ELEMENT FBType (Identification?,VersionInfo+,CompilerInfo?,InterfaceList, (BasicFB | FBNetwork)?, Service?) >
<!ATTLIST FBType
Name CDATA #REQUIRED
Comment CDATA #IMPLIED >
<!ELEMENT InterfaceList (EventInputs?,EventOutputs?,InputVars?,OutputVars?, Sockets?, Plugs?)>
<!ELEMENT EventInputs (Event+)>
<!ELEMENT EventOutputs (Event+)>
<!ELEMENT InputVars (VarDeclaration+)>
<!ELEMENT OutputVars (VarDeclaration+)>
<!ELEMENT Sockets (AdapterDeclaration+)>
<!ELEMENT Plugs (AdapterDeclaration+)>
<!ELEMENT Event (With*)>
<!ATTLIST Event
Name CDATA #REQUIRED
Type CDATA #IMPLIED
Comment CDATA #IMPLIED >
<!ELEMENT With EMPTY>
<!ATTLIST With
Var CDATA #REQUIRED >
<!ELEMENT VarDeclaration EMPTY>
<!ATTLIST VarDeclaration
Name CDATA #REQUIRED
Type CDATA #REQUIRED
ArraySize CDATA #IMPLIED
InitialValue CDATA #IMPLIED
Comment CDATA #IMPLIED >
<!ELEMENT AdapterDeclaration (Parameter*)>
<!ATTLIST AdapterDeclaration
Name CDATA #REQUIRED
Type CDATA #REQUIRED
Comment CDATA #IMPLIED >
<!ELEMENT BasicFB (InternalVars?,ECC?,Algorithm*)>
<!ELEMENT InternalVars (VarDeclaration+)>
<!ELEMENT ECC (ECState+,ECTransition+) >
<!ELEMENT ECState (ECAction*)>
<!ATTLIST ECState
Name CDATA #REQUIRED
Comment CDATA #IMPLIED
x CDATA #IMPLIED
y CDATA #IMPLIED >
<!ELEMENT ECTransition EMPTY>
<!ATTLIST ECTransition
Source CDATA #REQUIRED
Destination CDATA #REQUIRED
Condition CDATA #REQUIRED
Comment CDATA #IMPLIED
x CDATA #IMPLIED
y CDATA #IMPLIED >
<!ELEMENT ECAction EMPTY>
<!ATTLIST ECAction
Algorithm CDATA #IMPLIED
Output CDATA #IMPLIED >
<!ELEMENT Algorithm ((FBD | ST | LD | Other))>
<!ATTLIST Algorithm
Name CDATA #REQUIRED
Comment CDATA #IMPLIED >
<!ELEMENT FBD (FB+,DataConnections) >
<!ELEMENT ST EMPTY>
<!ATTLIST ST
Text CDATA #REQUIRED >
<!ELEMENT LD (Rung+) >
<!ELEMENT Rung EMPTY>
<!ATTLIST Rung
Output CDATA #REQUIRED
Expression CDATA #REQUIRED
Comment CDATA #IMPLIED >
<!ELEMENT Other EMPTY>
<!ATTLIST Other
Language CDATA #REQUIRED
Text CDATA #REQUIRED >
<!ELEMENT Service (ServiceSequence+)>
<!ATTLIST Service
RightInterface CDATA #REQUIRED
LeftInterface CDATA #REQUIRED
Comment CDATA #IMPLIED >
<!ELEMENT ServiceSequence (ServiceTransaction*)>
<!ATTLIST ServiceSequence
Name CDATA #REQUIRED
Comment CDATA #IMPLIED >
<!ELEMENT ServiceTransaction (InputPrimitive?, OutputPrimitive*)>
<!ELEMENT InputPrimitive EMPTY>
<!ATTLIST InputPrimitive
Interface CDATA #REQUIRED
Event CDATA #REQUIRED
Parameters CDATA #IMPLIED >
<!ELEMENT OutputPrimitive EMPTY>
<!ATTLIST OutputPrimitive
Interface CDATA #REQUIRED
Event CDATA #REQUIRED
Parameters CDATA #IMPLIED >
<!-- AdapterType elements -->
<!ELEMENT AdapterType (Identification?,VersionInfo+,CompilerInfo?,InterfaceList,Service?)>
<!ATTLIST AdapterType
Name CDATA #REQUIRED
Comment CDATA #IMPLIED >
<!-- ResourceType elements -->
<!ELEMENT ResourceType (Identification?,VersionInfo+, CompilerInfo?, FBTypeName*, VarDeclaration*, FBNetwork)>
<!ATTLIST ResourceType
Name CDATA #REQUIRED
Comment CDATA #IMPLIED >
<!ELEMENT FBTypeName EMPTY>
<!ATTLIST FBTypeName
Name CDATA #REQUIRED >
<!-- DeviceType elements -->
<!ELEMENT DeviceType (Identification?,VersionInfo+, CompilerInfo?, VarDeclaration*, ResourceTypeName*, Resource*, FBNetwork?)>
<!ATTLIST DeviceType
Name CDATA #REQUIRED
Comment CDATA #IMPLIED >
<!ELEMENT ResourceTypeName EMPTY>
<!ATTLIST ResourceTypeName
Name CDATA #REQUIRED >
<!ELEMENT Resource (Parameter*,FBNetwork?)>
<!ATTLIST Resource
Name CDATA #REQUIRED
Type CDATA #REQUIRED
Comment CDATA #IMPLIED
x CDATA #IMPLIED
y CDATA #IMPLIED >
<!-- System elements -->
<!ELEMENT System (Identification?, VersionInfo+, Application*, Device+, Mapping*, Segment*, Link*)>
<!ATTLIST System
Name CDATA #REQUIRED
Comment CDATA #IMPLIED >
<!ELEMENT Application (SubAppNetwork)>
<!ATTLIST Application
Name CDATA #REQUIRED
Comment CDATA #IMPLIED >
<!ELEMENT Mapping EMPTY>
<!ATTLIST Mapping
From CDATA #REQUIRED
To CDATA #REQUIRED >
<!ELEMENT Device (Parameter*,Resource*,FBNetwork?)>
<!ATTLIST Device
Name CDATA #REQUIRED
Type CDATA #REQUIRED
Comment CDATA #IMPLIED
x CDATA #IMPLIED
y CDATA #IMPLIED >
<!-- SubAppType elements -->
<!ELEMENT SubAppType (Identification?,VersionInfo+,CompilerInfo?,SubAppInterfaceList, SubAppNetwork?)> <!ATTLIST SubAppType
Name CDATA #REQUIRED
Comment CDATA #IMPLIED >
<!ELEMENT SubAppInterfaceList (SubAppEventInputs?,SubAppEventOutputs?,InputVars?,OutputVars?)>
<!ELEMENT SubAppEventInputs (SubAppEvent+)>
<!ELEMENT SubAppEventOutputs (SubAppEvent+)>
<!ELEMENT SubAppEvent EMPTY>
<!ATTLIST SubAppEvent
Name CDATA #REQUIRED
Type CDATA #IMPLIED
Comment CDATA #IMPLIED >
<!ELEMENT SubAppNetwork (SubApp*,FB*,EventConnections?,DataConnections?)>
<!ELEMENT SubApp EMPTY>
<!ATTLIST SubApp
Name CDATA #REQUIRED
Type CDATA #REQUIRED
Comment CDATA #IMPLIED
x CDATA #IMPLIED
y CDATA #IMPLIED >
<!-- Network elements -->
<!ELEMENT Segment (Parameter*)>
<!ATTLIST Segment
Name CDATA #REQUIRED
Type CDATA #REQUIRED
Comment CDATA #IMPLIED
x CDATA #IMPLIED
y CDATA #IMPLIED
dx1 CDATA #IMPLIED>
<!ELEMENT Parameter EMPTY>
<!ATTLIST Parameter
Name CDATA #REQUIRED
Value CDATA #REQUIRED
Comment CDATA #IMPLIED>
<!ELEMENT Link (Parameter*)>
<!ATTLIST Link
SegmentName CDATA #REQUIRED
CommResource CDATA #REQUIRED
Comment CDATA #IMPLIED >