plcopen/instance_tagname.ysl2
changeset 1950 752ec68da94d
parent 1936 b85b13b1c2ec
--- a/plcopen/instance_tagname.ysl2	Mon Feb 19 15:15:36 2018 +0100
+++ b/plcopen/instance_tagname.ysl2	Mon Feb 19 15:46:50 2018 +0100
@@ -1,22 +1,19 @@
 include yslt_noindent.yml2
 istylesheet xmlns:ppx="http://www.plcopen.org/xml/tc6_0201"
             xmlns:xhtml="http://www.w3.org/1999/xhtml"
-            xmlns:ns="instance_tagname_ns" 
+            xmlns:ns="beremiz" 
             extension-element-prefixes="ns" 
             exclude-result-prefixes="ns" {
     
     param "instance_path";
     
-    variable "project" {
-        copy "document('project')/project/*";
-    }
+    variable "project", "ns:GetProject()";
     
-    variable "stdlib" {
-        copy "document('stdlib')/stdlib/*";
-    }
-    variable "extensions" {
-        copy "document('extensions')/extensions/*";
-    }
+    variable "stdlib", "ns:GetStdLibs()";
+
+    variable "extensions", "ns:GetExtensions()";
+
+    variable "all_types", "($project | $stdlib | $extensions)/ppx:types";
     
     function "element_name" {
         param "path";
@@ -97,12 +94,8 @@
     template "ppx:pouInstance" {
         param "element_path";
         variable "type_name" > «@typeName»
-        apply """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:pous/ppx:pou[@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:pous/ppx:pou[@name=$type_name] |
-                 exsl:node-set($extensions)/ppx:project/ppx:types/ppx:dataTypes/ppx:dataType[@name=$type_name]""" {
+        apply """$all_types/ppx:pous/ppx:pou[@name=$type_name] | \
+                 $all_types/ppx:dataTypes/ppx:dataType[@name=$type_name]""" {
             with "element_path", "$element_path";
         }
     }
@@ -150,12 +143,8 @@
     template "ppx:derived" {
         param "element_path";
         variable "type_name" > «@name»
-        apply """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:pous/ppx:pou[@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:pous/ppx:pou[@name=$type_name] |
-                 exsl:node-set($extensions)/ppx:project/ppx:types/ppx:dataTypes/ppx:dataType[@name=$type_name]""" {
+        apply """$all_types/ppx:pous/ppx:pou[@name=$type_name] | \
+                 $all_types/ppx:dataTypes/ppx:dataType[@name=$type_name]""" {
             with "element_path", "$element_path";
         }
     }