--- a/plcopen/pou_variables.ysl2 Sat Feb 17 16:42:56 2018 +0100
+++ b/plcopen/pou_variables.ysl2 Sat Feb 17 23:58:47 2018 +0100
@@ -1,7 +1,7 @@
include yslt_noindent.yml2
istylesheet xmlns:ppx="http://www.plcopen.org/xml/tc6_0201"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
- xmlns:ns="pou_vars_ns"
+ xmlns:ns="beremiz"
extension-element-prefixes="ns"
exclude-result-prefixes="ns" {
@@ -11,16 +11,11 @@
template "text()", mode="var_edit";
template "text()", mode="var_debug";
- variable "project" {
- copy "document('project')/project/*";
- }
-
- variable "stdlib" {
- copy "document('stdlib')/stdlib/*";
- }
- variable "extensions" {
- copy "document('extensions')/extensions/*";
- }
+ variable "project", "ns:GetProject()";
+
+ variable "stdlib", "ns:GetStdLibs()";
+
+ variable "extensions", "ns:GetExtensions()";
function "add_root" {
param "class";
@@ -176,14 +171,10 @@
template "*[self::ppx:type or self::ppx:baseType]/ppx:derived", mode="var_class" {
param "default_class";
variable "type_name", "@name";
- variable "pou_infos" {
- copy """exsl:node-set($project)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] |
- exsl:node-set($stdlib)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] |
- exsl:node-set($extensions)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name]""";
- }
+ variable "pou_infos", "($project|$stdlib|$extensions)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name]";
choose {
- when "$pou_infos != ''" {
- apply "exsl:node-set($pou_infos)", mode="var_class";
+ when "$pou_infos" {
+ apply "$pou_infos", mode="var_class";
}
otherwise {
value "$default_class"
@@ -227,11 +218,9 @@
template "*[self::ppx:type or self::ppx:baseType]/ppx:derived", mode="var_edit" {
variable "type_name", "@name";
- variable "pou_infos" {
- copy "exsl:node-set($project)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name]";
- }
+ variable "pou_infos", "$project/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name]";
choose {
- when "$pou_infos != ''" > true
+ when "$pou_infos" > true
otherwise > false
}
}
@@ -246,15 +235,10 @@
template "*[self::ppx:type or self::ppx:baseType]/ppx:derived", mode="var_debug" {
variable "type_name", "@name";
- variable "datatype_infos" {
- copy """exsl:node-set($project)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] |
- exsl:node-set($project)/ppx:project/ppx:types/ppx:dataTypes/ppx:dataType[@name=$type_name] |
- exsl:node-set($stdlib)/ppx:project/ppx:types/ppx:dataTypes/ppx:dataType[@name=$type_name] |
- exsl:node-set($extensions)/ppx:project/ppx:types/ppx:dataTypes/ppx:dataType[@name=$type_name]""";
- }
+ variable "datatype_infos", "($project|$stdlib|$extensions)/ppx:project/ppx:types/ppx:pous/ppx:pou[@name=$type_name]";
choose {
when "$datatype_infos != ''" {
- apply "exsl:node-set($datatype_infos)", mode="var_debug";
+ apply "$datatype_infos", mode="var_debug";
}
otherwise > false
}