--- a/plcopen/pou_block_instances.ysl2 Fri Oct 04 09:40:16 2013 +0200
+++ b/plcopen/pou_block_instances.ysl2 Fri Oct 04 12:16:31 2013 +0200
@@ -4,7 +4,7 @@
xmlns:ns="pou_block_instances_ns"
extension-element-prefixes="ns"
exclude-result-prefixes="ns" {
@@ -13,9 +13,7 @@
function "add_instance" {
- > «ns:AddBlockInstance($type, @localId, ppx:position/@x, ppx:position/@y, @width, @height)»
+ value "ns:AddBlockInstance($type, @localId, ppx:position/@x, ppx:position/@y, @width, @height)"; function "execution_order" {
@@ -30,21 +28,15 @@
- variable "instance_connection" {
- > «ns:AddInstanceConnection($type, $formalParameter, $negated, $edge, ppx:relPosition/@x, ppx:relPosition/@y)»
+ value "ns:AddInstanceConnection($type, $formalParameter, $negated, $edge, ppx:relPosition/@x, ppx:relPosition/@y)"; template "ppx:position" {
- variable "link_point" {
- > «ns:AddLinkPoint(@x, @y)»
+ value "ns:AddLinkPoint(@x, @y)"; template "ppx:connection" {
- variable "connection_link" {
- > «ns:AddConnectionLink(@refLocalId, @formalParameter)»
+ value "ns:AddConnectionLink(@refLocalId, @formalParameter)"; @@ -80,12 +72,9 @@
- variable "type" > «local-name()»
- variable "instance_specific_values" {
- > «ns:SetSpecificValues(ppx:content/xhtml:p/text())»
+ value "ns:SetSpecificValues(ppx:content/xhtml:p/text())";
+ with "type" > «local-name()» @@ -93,24 +82,22 @@
variable "execution_order" {
- variable "instance_specific_values" {
- > «ns:SetSpecificValues(@instanceName, $execution_order)»
+ value "ns:SetSpecificValues(@instanceName, $execution_order)"; with "type" > «@typeName»
foreach "ppx:inputVariables/ppx:variable" {
apply "ppx:connectionPointIn" {
- with "negated" > «@negated»
- with "formalParameter" > «@formalParameter»
+ with "negated", "@negated"; + with "formalParameter", "@formalParameter"; foreach "ppx:outputVariables/ppx:variable" {
apply "ppx:connectionPointOut" {
- with "negated" > «@negated»
- with "formalParameter" > «@formalParameter»
+ with "negated", "@negated"; + with "formalParameter", "@formalParameter"; @@ -148,19 +135,17 @@
variable "execution_order" {
- variable "instance_specific_values" {
- > «ns:SetSpecificValues($expression, $value_type, $execution_order)»
+ value "ns:SetSpecificValues($expression, $value_type, $execution_order)"; apply "ppx:connectionPointIn" {
- with "negated" > «@negatedIn»
- with "edge" > «@edgeIn»
+ with "negated", "@negatedIn"; + with "edge", "@edgeIn"; apply "ppx:connectionPointOut" {
- with "negated" > «@negatedOut»
- with "edge" > «@edgeOut»
+ with "negated", "@negatedOut"; + with "edge", "@edgeOut"; @@ -177,28 +162,23 @@
template "ppx:connector|ppx:continuation" {
- variable "type" > «local-name()»
- variable "instance_specific_values" {
- > «ns:SetSpecificValues(@name)»
+ value "ns:SetSpecificValues(@name)";
+ with "type" > «local-name()» apply "ppx:connectionPointIn";
apply "ppx:connectionPointOut";
template "ppx:leftPowerRail|ppx:rightPowerRail" {
- variable "type" > «local-name()»
+ variable "type", "local-name()"; when "$type='leftPowerRail'" > «count(ppx:connectionPointOut)»
otherwise > «count(ppx:connectionPointIn)»
- variable "instance_specific_values" {
- > «ns:SetSpecificValues($connectors)»
+ value "ns:SetSpecificValues($connectors)"; @@ -213,19 +193,16 @@
template "ppx:contact|ppx:coil" {
- variable "type" > «local-name()»
+ variable "type", "local-name()"; when "$type='coil'" > «@storage»
variable "execution_order" {
- variable "instance_specific_values" {
- > «ns:SetSpecificValues(ppx:variable/text(), @negated, @edge, $storage, $execution_order)»
+ value "ns:SetSpecificValues(ppx:variable/text(), @negated, @edge, $storage, $execution_order)"; @@ -234,22 +211,18 @@
- variable "type" > «local-name()»
- variable "instance_specific_values" {
- > «ns:SetSpecificValues(@name, @initialStep)»
+ value "ns:SetSpecificValues(@name, @initialStep)"; apply "ppx:connectionPointOutAction" {
- with "negated" > «@negated»
+ with "negated", "@negated";
+ with "type" > «local-name()» apply "ppx:connectionPointIn";
apply "ppx:connectionPointOut";
template "ppx:transition" {
- variable "type" > «local-name()»
when "@priority" > «@priority»
@@ -261,24 +234,20 @@
when "ppx:condition/ppx:connectionPointIn" > connection
when "ppx:condition/ppx:reference" > reference
when "ppx:condition/ppx:inline" > inline
when "ppx:reference" > «ppx:condition/ppx:reference/@name»
when "ppx:inline" > «ppx:condition/ppx:inline/ppx:body/ppx:ST/xhtml:p/text()»
- variable "instance_specific_values" {
- > «ns:SetSpecificValues($priority, $condition_type, $condition)»
+ value "ns:SetSpecificValues($priority, $condition_type, $condition)"; apply "ppx:condition/ppx:connectionPointIn" {
- with "negated" > «ppx:condition/@negated»
+ with "negated", "ppx:condition/@negated";
+ with "type" > «local-name()» apply "ppx:connectionPointIn";
apply "ppx:connectionPointOut";
@@ -288,15 +257,13 @@
variable "type" > «local-name()»
- when "ppx:selectionDivergence|ppx:simultaneousDivergence" {
+ when "$type='selectionDivergence' or $type='simultaneousDivergence'" { > «count(ppx:connectionPointOut)»
otherwise > «count(ppx:connectionPointIn)»
- variable "instance_specific_values" {
- > «ns:SetSpecificValues($connectors)»
+ value "ns:SetSpecificValues($connectors)"; @@ -306,9 +273,7 @@
template "ppx:jumpStep" {
- variable "instance_specific_values" {
- > «ns:SetSpecificValues(@targetName)»
+ value "ns:SetSpecificValues(@targetName)"; @@ -320,14 +285,12 @@
when "ppx:reference" > reference
when "ppx:inline" > inline
when "ppx:reference" > «ppx:reference/@name»
when "ppx:inline" > «ppx:inline/ppx:ST/xhtml:p/text()»
@@ -336,22 +299,17 @@
- variable "actionBlock_action" {
- > «ns:AddAction($qualifier, $type, $value, @duration, @indicator)»
+ value "ns:AddAction($qualifier, $type, $value, @duration, @indicator)"; template "ppx:actionBlock" {
- variable "type" > «local-name()»
- variable "instance_specific_values" {
- > «ns:SetSpecificValues()»
+ value "ns:SetSpecificValues()";
+ with "type" > «local-name()» apply "ppx:connectionPointIn" {
- with "negated" > «@negated»
+ with "negated", "@negated"; \ No newline at end of file