--- a/plcopen/instances_path.xslt Mon Feb 19 15:14:30 2018 +0100
+++ b/plcopen/instances_path.xslt Mon Feb 19 15:15:36 2018 +0100
@@ -6,7 +6,7 @@
<xsl:variable name="project" select="ns:GetProject()"/>
<xsl:variable name="stdlib" select="ns:GetStdLibs()"/>
<xsl:variable name="extensions" select="ns:GetExtensions()"/>
- <xsl:variable name="all" select="$project | $stdlib | $extensions"/>
+ <xsl:variable name="all_types" select="($project | $stdlib | $extensions)/ppx:types"/> <xsl:template match="ppx:project">
<xsl:apply-templates select="ppx:instances/ppx:configurations/ppx:configuration"/>
@@ -45,7 +45,7 @@
<xsl:variable name="type_name">
<xsl:value-of select="@typeName"/>
- <xsl:apply-templates select="$all/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | $all/ppx:types/ppx:dataTypes/ppx:dataType[@name=$type_name]">
+ <xsl:apply-templates select="$all_types/ppx:pous/ppx:pou[@name=$type_name] | $all_types/ppx:dataTypes/ppx:dataType[@name=$type_name]"> <xsl:with-param name="instance_path">
<xsl:value-of select="$pou_instance_path"/>
@@ -92,7 +92,7 @@
<xsl:variable name="type_name">
<xsl:value-of select="@name"/>
- <xsl:apply-templates select="$all/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | $all/ppx:types/ppx:dataTypes/ppx:dataType[@name=$type_name]">
+ <xsl:apply-templates select="$all_types/ppx:pous/ppx:pou[@name=$type_name] | $all_types/ppx:dataTypes/ppx:dataType[@name=$type_name]"> <xsl:with-param name="instance_path">
<xsl:value-of select="$variable_path"/>
--- a/plcopen/instances_path.ysl2 Mon Feb 19 15:14:30 2018 +0100
+++ b/plcopen/instances_path.ysl2 Mon Feb 19 15:15:36 2018 +0100
@@ -15,8 +15,7 @@
variable "extensions", "ns:GetExtensions()";
- variable "all", "$project | $stdlib | $extensions";
+ variable "all_types", "($project | $stdlib | $extensions)/ppx:types"; apply "ppx:instances/ppx:configurations/ppx:configuration";
@@ -45,8 +44,8 @@
variable "type_name" > «@typeName»
- apply """$all/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | \
- $all/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 "instance_path" > «$pou_instance_path»
@@ -83,8 +82,8 @@
variable "type_name" > «@name»
- apply """$all/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | \
- $all/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 "instance_path" > «$variable_path»
--- a/plcopen/pou_variables.xslt Mon Feb 19 15:14:30 2018 +0100
+++ b/plcopen/pou_variables.xslt Mon Feb 19 15:15:36 2018 +0100
@@ -9,7 +9,7 @@
<xsl:variable name="project" select="ns:GetProject()"/>
<xsl:variable name="stdlib" select="ns:GetStdLibs()"/>
<xsl:variable name="extensions" select="ns:GetExtensions()"/>
- <xsl:variable name="all" select="$project | $stdlib | $extensions"/>
+ <xsl:variable name="all_types" select="($project | $stdlib | $extensions)/ppx:types"/> <xsl:template name="add_root">
<xsl:param name="class"/>
@@ -205,7 +205,7 @@
<xsl:template mode="var_class" match="*[self::ppx:type or self::ppx:baseType]/ppx:derived">
<xsl:param name="default_class"/>
<xsl:variable name="type_name" select="@name"/>
- <xsl:variable name="pou_infos" select="$all/ppx:types/ppx:pous/ppx:pou[@name=$type_name]"/>
+ <xsl:variable name="pou_infos" select="$all_types/ppx:pous/ppx:pou[@name=$type_name]"/> <xsl:when test="$pou_infos">
<xsl:apply-templates mode="var_class" select="$pou_infos"/>
@@ -264,7 +264,7 @@
<xsl:template mode="var_debug" match="*[self::ppx:type or self::ppx:baseType]/ppx:derived">
<xsl:variable name="type_name" select="@name"/>
- <xsl:variable name="datatype_infos" select=" $project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | $all/ppx:types/ppx:dataTypes/ppx:dataType[@name=$type_name] "/>
+ <xsl:variable name="datatype_infos" select=" $project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | $all_types/ppx:dataTypes/ppx:dataType[@name=$type_name] "/> <xsl:when test="$datatype_infos">
<xsl:apply-templates mode="var_debug" select="$datatype_infos"/>
--- a/plcopen/pou_variables.ysl2 Mon Feb 19 15:14:30 2018 +0100
+++ b/plcopen/pou_variables.ysl2 Mon Feb 19 15:15:36 2018 +0100
@@ -17,7 +17,7 @@
variable "extensions", "ns:GetExtensions()";
- variable "all", "$project | $stdlib | $extensions";
+ variable "all_types", "($project | $stdlib | $extensions)/ppx:types"; @@ -173,7 +173,7 @@
template "*[self::ppx:type or self::ppx:baseType]/ppx:derived", mode="var_class" {
variable "type_name", "@name";
- variable "pou_infos", "$all/ppx:types/ppx:pous/ppx:pou[@name=$type_name]";
+ variable "pou_infos", "$all_types/ppx:pous/ppx:pou[@name=$type_name]"; apply "$pou_infos", mode="var_class";
@@ -239,7 +239,7 @@
variable "type_name", "@name";
variable "datatype_infos", """ \
$project/ppx:types/ppx:pous/ppx:pou[@name=$type_name] | \
- $all/ppx:types/ppx:dataTypes/ppx:dataType[@name=$type_name] \
+ $all_types/ppx:dataTypes/ppx:dataType[@name=$type_name] \