author | Andrey Skvortsov <andrej.skvortzov@gmail.com> |
Mon, 13 Aug 2018 18:29:07 +0300 | |
changeset 2284 | 64bb520009f3 |
parent 1950 | 752ec68da94d |
permissions | -rw-r--r-- |
1936
b85b13b1c2ec
YSLT auto indent trick is useless here, added yslt_noindent.yml2, regenerated XSLT files
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
1351
diff
changeset
|
1 |
include yslt_noindent.yml2 |
b85b13b1c2ec
YSLT auto indent trick is useless here, added yslt_noindent.yml2, regenerated XSLT files
Edouard Tisserant <edouard.tisserant@gmail.com>
parents:
1351
diff
changeset
|
2 |
istylesheet xmlns:ppx="http://www.plcopen.org/xml/tc6_0201" |
1351
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
3 |
xmlns:xhtml="http://www.w3.org/1999/xhtml" |
1950
752ec68da94d
GetPouInstanceTagName optimized with XSLTModelQuery.
Edouard Tisserant
parents:
1936
diff
changeset
|
4 |
xmlns:ns="beremiz" |
1351
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
5 |
extension-element-prefixes="ns" |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
6 |
exclude-result-prefixes="ns" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
7 |
|
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
8 |
param "instance_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
9 |
|
1950
752ec68da94d
GetPouInstanceTagName optimized with XSLTModelQuery.
Edouard Tisserant
parents:
1936
diff
changeset
|
10 |
variable "project", "ns:GetProject()"; |
1351
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
11 |
|
1950
752ec68da94d
GetPouInstanceTagName optimized with XSLTModelQuery.
Edouard Tisserant
parents:
1936
diff
changeset
|
12 |
variable "stdlib", "ns:GetStdLibs()"; |
752ec68da94d
GetPouInstanceTagName optimized with XSLTModelQuery.
Edouard Tisserant
parents:
1936
diff
changeset
|
13 |
|
752ec68da94d
GetPouInstanceTagName optimized with XSLTModelQuery.
Edouard Tisserant
parents:
1936
diff
changeset
|
14 |
variable "extensions", "ns:GetExtensions()"; |
752ec68da94d
GetPouInstanceTagName optimized with XSLTModelQuery.
Edouard Tisserant
parents:
1936
diff
changeset
|
15 |
|
752ec68da94d
GetPouInstanceTagName optimized with XSLTModelQuery.
Edouard Tisserant
parents:
1936
diff
changeset
|
16 |
variable "all_types", "($project | $stdlib | $extensions)/ppx:types"; |
1351
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
17 |
|
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
18 |
function "element_name" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
19 |
param "path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
20 |
choose { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
21 |
when "contains($path,'.')" > «substring-before($path,'.')» |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
22 |
otherwise > «$path» |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
23 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
24 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
25 |
|
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
26 |
function "next_path" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
27 |
param "path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
28 |
choose { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
29 |
when "contains($path,'.')" > «substring-after($path,'.')» |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
30 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
31 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
32 |
|
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
33 |
template "ppx:project" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
34 |
variable "config_name" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
35 |
call "element_name" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
36 |
with "path", "$instance_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
37 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
38 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
39 |
apply "ppx:instances/ppx:configurations/ppx:configuration[@name=$config_name]" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
40 |
with "element_path" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
41 |
call "next_path" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
42 |
with "path", "$instance_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
43 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
44 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
45 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
46 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
47 |
|
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
48 |
template "ppx:configuration" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
49 |
param "element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
50 |
choose { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
51 |
when "$element_path!=''" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
52 |
variable "child_name" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
53 |
call "element_name" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
54 |
with "path", "$element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
55 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
56 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
57 |
apply "ppx:resource[@name=$child_name] | ppx:globalVars/ppx:variable[@name=$child_name]/ppx:type/*[self::ppx:derived or self::ppx:struct or self::ppx:array]" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
58 |
with "element_path" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
59 |
call "next_path" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
60 |
with "path", "$element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
61 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
62 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
63 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
64 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
65 |
otherwise { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
66 |
value "ns:ConfigTagName(@name)"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
67 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
68 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
69 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
70 |
|
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
71 |
template "ppx:resource" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
72 |
param "element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
73 |
choose { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
74 |
when "$element_path!=''" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
75 |
variable "child_name" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
76 |
call "element_name" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
77 |
with "path" > «$element_path» |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
78 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
79 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
80 |
apply "ppx:pouInstance[@name=$child_name] | ppx:task/ppx:pouInstance[@name=$child_name] | ppx:globalVars/ppx:variable[@name=$child_name]/ppx:type/*[self::ppx:derived or self::ppx:struct or self::ppx:array]" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
81 |
with "element_path" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
82 |
call "next_path" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
83 |
with "path", "$element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
84 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
85 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
86 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
87 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
88 |
otherwise { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
89 |
value "ns:ResourceTagName(ancestor::ppx:configuration/@name, @name)"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
90 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
91 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
92 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
93 |
|
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
94 |
template "ppx:pouInstance" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
95 |
param "element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
96 |
variable "type_name" > «@typeName» |
1950
752ec68da94d
GetPouInstanceTagName optimized with XSLTModelQuery.
Edouard Tisserant
parents:
1936
diff
changeset
|
97 |
apply """$all_types/ppx:pous/ppx:pou[@name=$type_name] | \ |
752ec68da94d
GetPouInstanceTagName optimized with XSLTModelQuery.
Edouard Tisserant
parents:
1936
diff
changeset
|
98 |
$all_types/ppx:dataTypes/ppx:dataType[@name=$type_name]""" { |
1351
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
99 |
with "element_path", "$element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
100 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
101 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
102 |
|
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
103 |
template "ppx:pou" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
104 |
param "element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
105 |
choose { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
106 |
when "$element_path!=''" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
107 |
variable "child_name" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
108 |
call "element_name" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
109 |
with "path", "$element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
110 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
111 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
112 |
apply "ppx:interface/*/ppx:variable[@name=$child_name]/ppx:type/*[self::ppx:derived or self::ppx:struct or self::ppx:array]" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
113 |
with "element_path" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
114 |
call "next_path" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
115 |
with "path", "$element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
116 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
117 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
118 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
119 |
apply "ppx:actions/ppx:action[@name=$child_name] | ppx:transitions/ppx:transition[@name=$child_name]"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
120 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
121 |
otherwise { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
122 |
variable "name" > «@name» |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
123 |
value "ns:PouTagName($name)"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
124 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
125 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
126 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
127 |
|
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
128 |
template "ppx:action" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
129 |
value "ns:ActionTagName(ancestor::ppx:pou/@name, @name)"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
130 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
131 |
|
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
132 |
template "ppx:transition" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
133 |
value "ns:TransitionTagName(ancestor::ppx:pou/@name, @name)"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
134 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
135 |
|
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
136 |
template "ppx:dataType" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
137 |
param "element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
138 |
apply "ppx:baseType/*[self::ppx:derived or self::ppx:struct or self::ppx:array]" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
139 |
with "element_path", "$element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
140 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
141 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
142 |
|
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
143 |
template "ppx:derived" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
144 |
param "element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
145 |
variable "type_name" > «@name» |
1950
752ec68da94d
GetPouInstanceTagName optimized with XSLTModelQuery.
Edouard Tisserant
parents:
1936
diff
changeset
|
146 |
apply """$all_types/ppx:pous/ppx:pou[@name=$type_name] | \ |
752ec68da94d
GetPouInstanceTagName optimized with XSLTModelQuery.
Edouard Tisserant
parents:
1936
diff
changeset
|
147 |
$all_types/ppx:dataTypes/ppx:dataType[@name=$type_name]""" { |
1351
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
148 |
with "element_path", "$element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
149 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
150 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
151 |
|
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
152 |
template "ppx:array" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
153 |
param "element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
154 |
apply "ppx:baseType/*[self::ppx:derived or self::ppx:struct or self::ppx:array]" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
155 |
with "element_path", "$element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
156 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
157 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
158 |
|
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
159 |
template "ppx:struct" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
160 |
param "element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
161 |
variable "child_name" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
162 |
call "element_name" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
163 |
with "path", "$element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
164 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
165 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
166 |
apply "ppx:variable[@name=$child_name]/ppx:type/*[self::ppx:derived or self::ppx:struct or self::ppx:array]" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
167 |
with "element_path" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
168 |
call "next_path" { |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
169 |
with "path", "$element_path"; |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
170 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
171 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
172 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
173 |
} |
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
174 |
|
a546a63ce1bf
Fixed pou tagname of instance path computing stylesheet
Laurent Bessard
parents:
diff
changeset
|
175 |
} |