equal
deleted
inserted
replaced
1 include yslt_noindent.yml2 |
1 include yslt_noindent.yml2 |
2 istylesheet xmlns:ppx="http://www.plcopen.org/xml/tc6_0201" |
2 istylesheet xmlns:ppx="http://www.plcopen.org/xml/tc6_0201" |
3 xmlns:xhtml="http://www.w3.org/1999/xhtml" |
3 xmlns:xhtml="http://www.w3.org/1999/xhtml" |
4 xmlns:ns="instance_tagname_ns" |
4 xmlns:ns="beremiz" |
5 extension-element-prefixes="ns" |
5 extension-element-prefixes="ns" |
6 exclude-result-prefixes="ns" { |
6 exclude-result-prefixes="ns" { |
7 |
7 |
8 param "instance_path"; |
8 param "instance_path"; |
9 |
9 |
10 variable "project" { |
10 variable "project", "ns:GetProject()"; |
11 copy "document('project')/project/*"; |
|
12 } |
|
13 |
11 |
14 variable "stdlib" { |
12 variable "stdlib", "ns:GetStdLibs()"; |
15 copy "document('stdlib')/stdlib/*"; |
13 |
16 } |
14 variable "extensions", "ns:GetExtensions()"; |
17 variable "extensions" { |
15 |
18 copy "document('extensions')/extensions/*"; |
16 variable "all_types", "($project | $stdlib | $extensions)/ppx:types"; |
19 } |
|
20 |
17 |
21 function "element_name" { |
18 function "element_name" { |
22 param "path"; |
19 param "path"; |
23 choose { |
20 choose { |
24 when "contains($path,'.')" > «substring-before($path,'.')» |
21 when "contains($path,'.')" > «substring-before($path,'.')» |
95 } |
92 } |
96 |
93 |
97 template "ppx:pouInstance" { |
94 template "ppx:pouInstance" { |
98 param "element_path"; |
95 param "element_path"; |
99 variable "type_name" > «@typeName» |
96 variable "type_name" > «@typeName» |
100 apply """exsl:node-set($project)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | |
97 apply """$all_types/ppx:pous/ppx:pou[@name=$type_name] | \ |
101 exsl:node-set($project)/ppx:project/ppx:types/ppx:dataTypes/ppx:dataType[@name=$type_name] | |
98 $all_types/ppx:dataTypes/ppx:dataType[@name=$type_name]""" { |
102 exsl:node-set($stdlib)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | |
|
103 exsl:node-set($stdlib)/ppx:project/ppx:types/ppx:dataTypes/ppx:dataType[@name=$type_name] | |
|
104 exsl:node-set($extensions)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | |
|
105 exsl:node-set($extensions)/ppx:project/ppx:types/ppx:dataTypes/ppx:dataType[@name=$type_name]""" { |
|
106 with "element_path", "$element_path"; |
99 with "element_path", "$element_path"; |
107 } |
100 } |
108 } |
101 } |
109 |
102 |
110 template "ppx:pou" { |
103 template "ppx:pou" { |
148 } |
141 } |
149 |
142 |
150 template "ppx:derived" { |
143 template "ppx:derived" { |
151 param "element_path"; |
144 param "element_path"; |
152 variable "type_name" > «@name» |
145 variable "type_name" > «@name» |
153 apply """exsl:node-set($project)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | |
146 apply """$all_types/ppx:pous/ppx:pou[@name=$type_name] | \ |
154 exsl:node-set($project)/ppx:project/ppx:types/ppx:dataTypes/ppx:dataType[@name=$type_name] | |
147 $all_types/ppx:dataTypes/ppx:dataType[@name=$type_name]""" { |
155 exsl:node-set($stdlib)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | |
|
156 exsl:node-set($stdlib)/ppx:project/ppx:types/ppx:dataTypes/ppx:dataType[@name=$type_name] | |
|
157 exsl:node-set($extensions)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | |
|
158 exsl:node-set($extensions)/ppx:project/ppx:types/ppx:dataTypes/ppx:dataType[@name=$type_name]""" { |
|
159 with "element_path", "$element_path"; |
148 with "element_path", "$element_path"; |
160 } |
149 } |
161 } |
150 } |
162 |
151 |
163 template "ppx:array" { |
152 template "ppx:array" { |