summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdhitya Kamakshidasan2016-06-08 16:34:21 +0530
committerAdhitya Kamakshidasan2016-06-08 16:34:21 +0530
commit33a9287cb072d429a057525c1bbae1c7401e31e4 (patch)
treedcf686090f82bc91147754e65b7ebad6c71ccc45
parentdd9f7b0c31a79802e0b13212406a17ac4d33da35 (diff)
parentf3a71d260d8fb92c73cf96c576a98ed45ab75c13 (diff)
downloadxcos-on-web-33a9287cb072d429a057525c1bbae1c7401e31e4.tar.gz
xcos-on-web-33a9287cb072d429a057525c1bbae1c7401e31e4.tar.bz2
xcos-on-web-33a9287cb072d429a057525c1bbae1c7401e31e4.zip
Merge pull request #20 from sarangsingh29/master
Integrated XSL transformation with the HTML file
-rw-r--r--finalmodsheet.xsl2042
-rw-r--r--index.html368
2 files changed, 2255 insertions, 155 deletions
diff --git a/finalmodsheet.xsl b/finalmodsheet.xsl
new file mode 100644
index 0000000..80a9ab7
--- /dev/null
+++ b/finalmodsheet.xsl
@@ -0,0 +1,2042 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+eXtensible Stylesheet for converting GUI-obtained XML to Scilab-compatible XML.
+Authors: Maverick & Karma
+-->
+<!-- Maverick -->
+<!--
+NOTES:
+Look for TAG:Break1!!!
+-->
+<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+ <xsl:output method="xml" indent="no"/>
+ <xsl:template match="/">
+ <xsl:element name="XcosDiagram">
+ <xsl:attribute name="background">-1</xsl:attribute>
+ <xsl:attribute name="title">Maverick XSL</xsl:attribute>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template match="root">
+ <xsl:element name="root">
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template match="mxCell">
+ <xsl:choose>
+ <xsl:when test="@style">
+ <!-- Style present -->
+ <xsl:choose>
+ <xsl:when test="@style='BIGSOM_f'">
+ <xsl:call-template name="BigSom" />
+ </xsl:when>
+ <xsl:when test="@style='ExplicitInputPort'">
+ <xsl:call-template name="ExplicitInputPort" />
+ </xsl:when>
+ <xsl:when test="@style='ExplicitOutputPort'">
+ <xsl:call-template name="ExplicitOutputPort" />
+ </xsl:when>
+ <xsl:when test="@style='ControlPort'">
+ <xsl:call-template name="ControlPort" />
+ </xsl:when>
+ <xsl:when test="@style='ImplicitInputPort'">
+ <xsl:call-template name="ImplicitInputPort" />
+ </xsl:when>
+ <xsl:when test="@style='ImplicitOutputPort'">
+ <xsl:call-template name="ImplicitOutputPort" />
+ </xsl:when>
+ <xsl:when test="@style='CommandPort'">
+ <xsl:call-template name="CommandPort" />
+ </xsl:when>
+ <xsl:otherwise>
+ <!-- Maverick -->
+ <!-- TAG:Break1
+ This line has been commented because Javascript was having
+ some problem with the function call.
+
+ Commenting doesn't bring any change to the result now, but
+ may cause some problems in the future.
+ -->
+ <!-- <xsl:apply-templates select="name(*[1])"/> -->
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:otherwise>
+ <!-- Style not present -->
+ <xsl:copy-of select="." />
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+ <xsl:template name="Object" match="Object">
+ <xsl:element name="Array">
+ <xsl:if test="name(..)='BasicBlock'">
+ <xsl:if test="@as">
+ <xsl:attribute name="as">
+ <xsl:value-of select="@as" />
+ </xsl:attribute>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="@scilabClass">
+ <xsl:attribute name="scilabClass">
+ <xsl:value-of select="@scilabClass" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@varName">
+ <xsl:attribute name="varName">
+ <xsl:value-of select="@varName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="Array" match="Array">
+ <xsl:element name="Array">
+ <xsl:if test="name(..)='BasicBlock'">
+ <xsl:if test="@as">
+ <xsl:attribute name="as">
+ <xsl:value-of select="@as" />
+ </xsl:attribute>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="@scilabClass">
+ <xsl:attribute name="scilabClass">
+ <xsl:value-of select="@scilabClass" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="ScilabBoolean" match="ScilabBoolean">
+ <xsl:element name="ScilabBoolean">
+ <xsl:choose>
+ <xsl:when test="@height">
+ <xsl:attribute name="height">
+ <xsl:value-of select="@height" />
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:attribute name="height">0</xsl:attribute>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:choose>
+ <xsl:when test="@width">
+ <xsl:attribute name="width">
+ <xsl:value-of select="@width" />
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:attribute name="width">0</xsl:attribute>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="ScilabInteger" match="ScilabInteger">
+ <xsl:element name="ScilabInteger">
+ <xsl:if test="@height">
+ <xsl:attribute name="height">
+ <xsl:value-of select="@height" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@intPrecision">
+ <xsl:attribute name="intPrecision">
+ <xsl:value-of select="@intPrecision" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@width">
+ <xsl:attribute name="width">
+ <xsl:value-of select="@width" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="add" match="add">
+ <xsl:element name="add">
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="mxGraphModel" match="mxGraphModel">
+ <xsl:element name="mxGraphModel">
+ <xsl:attribute name="as">model</xsl:attribute>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="root" match="root">
+ <xsl:element name="root">
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="AfficheBlock" match="AfficheBlock">
+ <xsl:element name="AfficheBlock">
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dependsOnU">
+ <xsl:attribute name="dependsOnU">
+ <xsl:value-of select="@dependsOnU" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@hashCode">
+ <xsl:attribute name="hashCode">
+ <xsl:value-of select="@hashCode" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@vertex">
+ <xsl:attribute name="vertex">
+ <xsl:value-of select="@vertex" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@visible">
+ <xsl:attribute name="visible">
+ <xsl:value-of select="@visible" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="BigSom" match="BigSom">
+ <xsl:element name="BigSom">
+ <xsl:if test="@dependsOnU">
+ <xsl:attribute name="dependsOnU">
+ <xsl:value-of select="@dependsOnU" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="CommandControlLink" match="CommandControlLink">
+ <xsl:element name="CommandControlLink">
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="ConstBlock" match="ConstBlock">
+ <xsl:element name="ConstBlock">
+ <xsl:if test="@angle">
+ <xsl:attribute name="angle">
+ <xsl:value-of select="@angle" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@blockType">
+ <xsl:attribute name="blockType">
+ <xsl:value-of select="@blockType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@vertex">
+ <xsl:attribute name="vertex">
+ <xsl:value-of select="@vertex" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@visible">
+ <xsl:attribute name="visible">
+ <xsl:value-of select="@visible" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="EventInBlock" match="EventInBlock">
+ <xsl:element name="EventInBlock">
+ <xsl:if test="@blockType">
+ <xsl:attribute name="blockType">
+ <xsl:value-of select="@blockType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@vertex">
+ <xsl:attribute name="vertex">
+ <xsl:value-of select="@vertex" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@visible">
+ <xsl:attribute name="visible">
+ <xsl:value-of select="@visible" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="EventOutBlock" match="EventOutBlock">
+ <xsl:element name="EventOutBlock">
+ <xsl:if test="@blockType">
+ <xsl:attribute name="blockType">
+ <xsl:value-of select="@blockType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="ExplicitInBlock" match="ExplicitInBlock">
+ <xsl:element name="ExplicitInBlock">
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@vertex">
+ <xsl:attribute name="vertex">
+ <xsl:value-of select="@vertex" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@visible">
+ <xsl:attribute name="visible">
+ <xsl:value-of select="@visible" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="ExplicitLink" match="ExplicitLink">
+ <xsl:element name="ExplicitLink">
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="ExplicitOutBlock" match="ExplicitOutBlock">
+ <xsl:element name="ExplicitOutBlock">
+ <xsl:if test="@angle">
+ <xsl:attribute name="angle">
+ <xsl:value-of select="@angle" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@vertex">
+ <xsl:attribute name="vertex">
+ <xsl:value-of select="@vertex" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@visible">
+ <xsl:attribute name="visible">
+ <xsl:value-of select="@visible" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="GainBlock" match="GainBlock">
+ <xsl:element name="GainBlock">
+ <xsl:if test="@angle">
+ <xsl:attribute name="angle">
+ <xsl:value-of select="@angle" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dependsOnU">
+ <xsl:attribute name="dependsOnU">
+ <xsl:value-of select="@dependsOnU" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@vertex">
+ <xsl:attribute name="vertex">
+ <xsl:value-of select="@vertex" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@visible">
+ <xsl:attribute name="visible">
+ <xsl:value-of select="@visible" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="GroudBlock" match="GroudBlock">
+ <xsl:element name="GroundBlock">
+ <xsl:if test="@dependsOnU">
+ <xsl:attribute name="dependsOnU">
+ <xsl:value-of select="@dependsOnU" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="ImplicitInBlock" match="ImplicitInBlock">
+ <xsl:element name="ImplicitInBlock">
+ <xsl:if test="@angle">
+ <xsl:attribute name="angle">
+ <xsl:value-of select="@angle" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="ImplicitLink" match="ImplicitLink">
+ <xsl:element name="ImplicitLink">
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="ImplicitOutBlock" match="ImplicitOutBlock">
+ <xsl:element name="ImplicitOutBlock">
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="PrintBlock" match="PrintBlock">
+ <xsl:element name="PrintBlock">
+ <xsl:if test="@blockType">
+ <xsl:attribute name="blockType">
+ <xsl:value-of select="@blockType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="Product" match="Product">
+ <xsl:element name="Product">
+ <xsl:if test="@dependsOnU">
+ <xsl:attribute name="dependsOnU">
+ <xsl:value-of select="@dependsOnU" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="RoundBlock" match="RoundBlock">
+ <xsl:element name="RoundBlock">
+ <xsl:if test="@blockType">
+ <xsl:attribute name="blockType">
+ <xsl:value-of select="@blockType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dependsOnU">
+ <xsl:attribute name="dependsOnU">
+ <xsl:value-of select="@dependsOnU" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="SplitBlock" match="SplitBlock">
+ <xsl:element name="SplitBlock">
+ <xsl:if test="@blockType">
+ <xsl:attribute name="blockType">
+ <xsl:value-of select="@blockType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dependsOnU">
+ <xsl:attribute name="dependsOnU">
+ <xsl:value-of select="@dependsOnU" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@vertex">
+ <xsl:attribute name="vertex">
+ <xsl:value-of select="@vertex" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@visible">
+ <xsl:attribute name="visible">
+ <xsl:value-of select="@visible" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="Summation" match="Summation">
+ <xsl:element name="Summation">
+ <xsl:if test="@dependsOnU">
+ <xsl:attribute name="dependsOnU">
+ <xsl:value-of select="@dependsOnU" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="SuperBlock" match="SuperBlock">
+ <xsl:element name="SuperBlock">
+ <xsl:if test="@angle">
+ <xsl:attribute name="angle">
+ <xsl:value-of select="@angle" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@blockType">
+ <xsl:attribute name="blockType">
+ <xsl:value-of select="@blockType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@vertex">
+ <xsl:attribute name="vertex">
+ <xsl:value-of select="@vertex" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@visible">
+ <xsl:attribute name="visible">
+ <xsl:value-of select="@visible" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="SuperBlockDiagram" match="SuperBlockDiagram">
+ <xsl:element name="SuperBlockDiagram">
+ <xsl:if test="name(..)='BasicBlock'">
+ <xsl:if test="@as">
+ <xsl:attribute name="as">
+ <xsl:value-of select="@as" />
+ </xsl:attribute>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="@background">
+ <xsl:attribute name="background">
+ <xsl:value-of select="@background" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@finalIntegrationTime">
+ <xsl:attribute name="finalIntegrationTime">
+ <xsl:value-of select="@finalIntegrationTime" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@gridEnabled">
+ <xsl:attribute name="gridEnabled">
+ <xsl:value-of select="@gridEnabled" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@integratorAbsoluteTolerance">
+ <xsl:attribute name="integratorAbsoluteTolerance">
+ <xsl:value-of select="@integratorAbsoluteTolerance" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@integratorRelativeTolerance">
+ <xsl:attribute name="integratorRelativeTolerance">
+ <xsl:value-of select="@integratorRelativeTolerance" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@maxIntegrationTimeInterval">
+ <xsl:attribute name="maxIntegrationTimeInterval">
+ <xsl:value-of select="@maxIntegrationTimeInterval" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@solver">
+ <xsl:attribute name="solver">
+ <xsl:value-of select="@solver" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@title">
+ <xsl:attribute name="title">
+ <xsl:value-of select="@title" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@toleranceOnTime">
+ <xsl:attribute name="toleranceOnTime">
+ <xsl:value-of select="@toleranceOnTime" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="TextBlock" match="TextBlock">
+ <xsl:element name="TextBlock">
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@vertex">
+ <xsl:attribute name="vertex">
+ <xsl:value-of select="@vertex" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@visible">
+ <xsl:attribute name="visible">
+ <xsl:value-of select="@visible" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="VoltageSensorBlock" match="VoltageSensorBlock">
+ <xsl:element name="VoltageSensorBlock">
+ <xsl:if test="@dependsOnU">
+ <xsl:attribute name="dependsOnU">
+ <xsl:value-of select="@dependsOnU" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <!-- <xsl:template name="mxCell" match="mxCell">
+ <xsl:element name="mxCell">
+
+
+ <xsl:if test="name(..)='BasicBlock'">
+ <xsl:if test="@as">
+ <xsl:attribute name="as">
+ <xsl:value-of select="@as"/>
+ </xsl:attribute>
+ </xsl:if>
+ </xsl:if>
+
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable"/>
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@edge">
+ <xsl:attribute name="edge">
+ <xsl:value-of select="@edge"/>
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id"/>
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent"/>
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@source">
+ <xsl:attribute name="source">
+ <xsl:value-of select="@source"/>
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style"/>
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value"/>
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@vertex">
+ <xsl:attribute name="vertex">
+ <xsl:value-of select="@vertex"/>
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates/>
+ </xsl:element>
+ </xsl:template> -->
+ <xsl:template name="mxPoint" match="mxPoint">
+ <xsl:element name="mxPoint">
+ <xsl:if test="@as">
+ <xsl:attribute name="as">
+ <xsl:value-of select="@as" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@x">
+ <xsl:attribute name="x">
+ <xsl:value-of select="@x" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@y">
+ <xsl:attribute name="y">
+ <xsl:value-of select="@y" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="data" match="data">
+ <xsl:element name="data">
+ <xsl:if test="@bUnsigned">
+ <xsl:attribute name="bUnsigned">
+ <xsl:value-of select="@bUnsigned" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@column">
+ <xsl:attribute name="column">
+ <xsl:value-of select="@column" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@line">
+ <xsl:attribute name="line">
+ <xsl:value-of select="@line" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@realPart">
+ <xsl:attribute name="realPart">
+ <xsl:value-of select="@realPart" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@imaginaryPart">
+ <xsl:attribute name="imaginaryPart">
+ <xsl:value-of select="@imaginaryPart" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="ScilabDouble" match="ScilabDouble">
+ <xsl:element name="ScilabDouble">
+ <xsl:if test="name(..)='BasicBlock'">
+ <xsl:if test="@as">
+ <xsl:attribute name="as">
+ <xsl:value-of select="@as" />
+ </xsl:attribute>
+ </xsl:if>
+ </xsl:if>
+ <xsl:choose>
+ <xsl:when test="@height">
+ <xsl:attribute name="height">
+ <xsl:value-of select="@height" />
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:attribute name="height">0</xsl:attribute>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:choose>
+ <xsl:when test="@width">
+ <xsl:attribute name="width">
+ <xsl:value-of select="@width" />
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:attribute name="width">0</xsl:attribute>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="ScilabString" match="ScilabString">
+ <xsl:element name="ScilabString">
+ <xsl:if test="name(..)='BasicBlock'">
+ <xsl:if test="@as">
+ <xsl:attribute name="as">
+ <xsl:value-of select="@as" />
+ </xsl:attribute>
+ </xsl:if>
+ </xsl:if>
+ <xsl:choose>
+ <xsl:when test="@height">
+ <xsl:attribute name="height">
+ <xsl:value-of select="@height" />
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:attribute name="height">0</xsl:attribute>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:choose>
+ <xsl:when test="@width">
+ <xsl:attribute name="width">
+ <xsl:value-of select="@width" />
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:attribute name="width">0</xsl:attribute>
+ </xsl:otherwise>
+ </xsl:choose>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="ControlPort" match="ControlPort">
+ <xsl:element name="ControlPort">
+ <xsl:if test="name(..)='BasicBlock'">
+ <xsl:if test="@as">
+ <xsl:attribute name="as">
+ <xsl:value-of select="@as" />
+ </xsl:attribute>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@connectedLinkId">
+ <xsl:attribute name="connectedLinkId">
+ <xsl:value-of select="@connectedLinkId" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dataType">
+ <xsl:attribute name="dataType">
+ <xsl:value-of select="@dataType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@visbile">
+ <xsl:attribute name="visbile">
+ <xsl:value-of select="@visbile" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="mxGeometry" match="mxGeometry">
+ <xsl:element name="mxGeometry">
+ <xsl:if test="@as">
+ <xsl:attribute name="as">
+ <xsl:value-of select="@as" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@height">
+ <xsl:attribute name="height">
+ <xsl:value-of select="@height" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@relative">
+ <xsl:attribute name="relative">
+ <xsl:value-of select="@relative" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@width">
+ <xsl:attribute name="width">
+ <xsl:value-of select="@width" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@x">
+ <xsl:attribute name="x">
+ <xsl:value-of select="@x" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@y">
+ <xsl:attribute name="y">
+ <xsl:value-of select="@y" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="ExplicitOutputPort" match="ExplicitOutputPort">
+ <xsl:element name="ExplicitOutputPort">
+ <xsl:if test="name(..)='BasicBlock'">
+ <xsl:if test="@as">
+ <xsl:attribute name="as">
+ <xsl:value-of select="@as" />
+ </xsl:attribute>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@connectedLinkId">
+ <xsl:attribute name="connectedLinkId">
+ <xsl:value-of select="@connectedLinkId" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dataColumns">
+ <xsl:attribute name="dataColumns">
+ <xsl:value-of select="@dataColumns" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dataLines">
+ <xsl:attribute name="dataLines">
+ <xsl:value-of select="@dataLines" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dataType">
+ <xsl:attribute name="dataType">
+ <xsl:value-of select="@dataType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@visible">
+ <xsl:attribute name="visible">
+ <xsl:value-of select="@visible" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="ExplicitInputPort" match="ExplicitInputPort">
+ <xsl:element name="ExplicitInputPort">
+ <xsl:if test="name(..)='BasicBlock'">
+ <xsl:if test="@as">
+ <xsl:attribute name="as">
+ <xsl:value-of select="@as" />
+ </xsl:attribute>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@connectedLinkId">
+ <xsl:attribute name="connectedLinkId">
+ <xsl:value-of select="@connectedLinkId" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dataColumns">
+ <xsl:attribute name="dataColumns">
+ <xsl:value-of select="@dataColumns" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dataLines">
+ <xsl:attribute name="dataLines">
+ <xsl:value-of select="@dataLines" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dataType">
+ <xsl:attribute name="dataType">
+ <xsl:value-of select="@dataType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@visible">
+ <xsl:attribute name="visible">
+ <xsl:value-of select="@visible" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="ImplicitInputPort" match="ImplicitInputPort">
+ <xsl:element name="ImplicitInputPort">
+ <xsl:if test="name(..)='BasicBlock'">
+ <xsl:if test="@as">
+ <xsl:attribute name="as">
+ <xsl:value-of select="@as" />
+ </xsl:attribute>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@connectedLinkId">
+ <xsl:attribute name="connectedLinkId">
+ <xsl:value-of select="@connectedLinkId" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dataColumns">
+ <xsl:attribute name="dataColumns">
+ <xsl:value-of select="@dataColumns" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dataLines">
+ <xsl:attribute name="dataLines">
+ <xsl:value-of select="@dataLines" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dataType">
+ <xsl:attribute name="dataType">
+ <xsl:value-of select="@dataType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@visible">
+ <xsl:attribute name="visible">
+ <xsl:value-of select="@visible" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="ImplicitOutputPort" match="ImplicitOutputPort">
+ <xsl:element name="ImplicitOutputPort">
+ <xsl:if test="name(..)='BasicBlock'">
+ <xsl:if test="@as">
+ <xsl:attribute name="as">
+ <xsl:value-of select="@as" />
+ </xsl:attribute>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@connectedLinkId">
+ <xsl:attribute name="connectedLinkId">
+ <xsl:value-of select="@connectedLinkId" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dataColumns">
+ <xsl:attribute name="dataColumns">
+ <xsl:value-of select="@dataColumns" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dataLines">
+ <xsl:attribute name="dataLines">
+ <xsl:value-of select="@dataLines" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dataType">
+ <xsl:attribute name="dataType">
+ <xsl:value-of select="@dataType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@visible">
+ <xsl:attribute name="visible">
+ <xsl:value-of select="@visible" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="BasicBlock" match="BasicBlock">
+ <xsl:element name="BasicBlock">
+ <xsl:if test="@angle">
+ <xsl:attribute name="angle">
+ <xsl:value-of select="@angle" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="name(..)='BasicBlock'">
+ <xsl:if test="@as">
+ <xsl:attribute name="as">
+ <xsl:value-of select="@as" />
+ </xsl:attribute>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="@blockType">
+ <xsl:attribute name="blockType">
+ <xsl:value-of select="@blockType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dependsOnT">
+ <xsl:attribute name="dependsOnT">
+ <xsl:value-of select="@dependsOnT" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dependsOnU">
+ <xsl:attribute name="dependsOnU">
+ <xsl:value-of select="@dependsOnU" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@interfaceFunctionName">
+ <xsl:attribute name="interfaceFunctionName">
+ <xsl:value-of select="@interfaceFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionName">
+ <xsl:attribute name="simulationFunctionName">
+ <xsl:value-of select="@simulationFunctionName" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@simulationFunctionType">
+ <xsl:attribute name="simulationFunctionType">
+ <xsl:value-of select="@simulationFunctionType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@vertex">
+ <xsl:attribute name="vertex">
+ <xsl:value-of select="@vertex" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@visible">
+ <xsl:attribute name="visible">
+ <xsl:value-of select="@visible" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="CommandPort" match="CommandPort">
+ <xsl:element name="CommandPort">
+ <xsl:if test="name(..)='BasicBlock'">
+ <xsl:if test="@as">
+ <xsl:attribute name="as">
+ <xsl:value-of select="@as" />
+ </xsl:attribute>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="@connectable">
+ <xsl:attribute name="connectable">
+ <xsl:value-of select="@connectable" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@connectedLinkId">
+ <xsl:attribute name="connectedLinkId">
+ <xsl:value-of select="@connectedLinkId" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@dataType">
+ <xsl:attribute name="dataType">
+ <xsl:value-of select="@dataType" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@id">
+ <xsl:attribute name="id">
+ <xsl:value-of select="@id" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@initialState">
+ <xsl:attribute name="initialState">
+ <xsl:value-of select="@initialState" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@ordering">
+ <xsl:attribute name="ordering">
+ <xsl:value-of select="@ordering" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@parent">
+ <xsl:attribute name="parent">
+ <xsl:value-of select="@parent" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@style">
+ <xsl:attribute name="style">
+ <xsl:value-of select="@style" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:if test="@visible">
+ <xsl:attribute name="visible">
+ <xsl:value-of select="@visible" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+ <xsl:template name="Orientation" match="Orientation">
+ <xsl:element name="Orientation">
+ <xsl:if test="name(..)='BasicBlock'">
+ <xsl:if test="@as">
+ <xsl:attribute name="as">
+ <xsl:value-of select="@as" />
+ </xsl:attribute>
+ </xsl:if>
+ </xsl:if>
+ <xsl:if test="@value">
+ <xsl:attribute name="value">
+ <xsl:value-of select="@value" />
+ </xsl:attribute>
+ </xsl:if>
+ <xsl:apply-templates />
+ </xsl:element>
+ </xsl:template>
+</xsl:stylesheet>
diff --git a/index.html b/index.html
index e488aa9..9869bb2 100644
--- a/index.html
+++ b/index.html
@@ -8,11 +8,11 @@
BODY {
font-family: Arial;
}
-
+
H1 {
font-size: 18px;
}
-
+
H2 {
font-size: 16px;
}
@@ -27,10 +27,11 @@
<link rel="stylesheet" href="jquery/farbtastic.css" type="text/css" />
<link rel="stylesheet" href="jquery/jquery-ui.css">
-
+
<script type="text/javascript" src="details.js"></script>
<script type="text/javascript" src="json2.js"></script>
<script type="text/javascript">
+
function main(container, outline, toolbar, sidebar, status) {
// Checks if the browser is supported
@@ -100,131 +101,104 @@
// Sets the graph container and configures the editor
editor.setGraphContainer(container);
- // Disables built-in context menu
+ // Disables built-in context menu
mxEvent.disableContextMenu(document.body);
-
+
// Configures automatic expand on mouseover
graph.panningHandler.autoExpand = true;
// Creates a right-click menu
- graph.panningHandler.factoryMethod = function(menu, cell, evt)
- {
-
- if (cell != null)
+ graph.panningHandler.factoryMethod = function(menu, cell, evt) {
+
+ if (cell != null) {
+
+ if (cell.value == "ExplicitInputPort" || cell.value == "ExplicitOutputPort" || cell.value == "CommandPort" || cell.value == "ControlPort") {
+
+ } else if (cell.isEdge() == true) // @ToDo: Pooja: Different edge value cases.
{
-
- if( cell.value == "ExplicitInputPort" || cell.value == "ExplicitOutputPort" || cell.value == "CommandPort" || cell.value == "ControlPort")
- {
-
- }
- else if (cell.isEdge() == true)// @ToDo: Pooja: Different edge value cases.
- {
-
- menu.addItem('Delete', 'images/delete2.png', function()
- {
- editor.execute('delete');
- });
- var edgeformat = menu.addItem('Format', null, null);
-
- menu.addItem('Border Color', 'images/draw-brush.png', function()
- {
- alert('Border Color');// @ToDo: Pooja: Functionality to be put.
- }, edgeformat);
- menu.addItem('Edit...', 'images/edit.png', function()
- {
- alert('Edit...');// @ToDo: Pooja: Functionality to be put.
- }, edgeformat);
-
- }
- else
- {
-
- menu.addItem('Block Parameters...', 'images/gear.gif', function()
- {
- // @ToDo: Pooja: Functionality to be put.
- });
-
- menu.addItem('Cut', 'images/cut.png', function()
- {
- editor.execute('cut');
- });
-
- menu.addItem('Copy', 'images/copy.png', function()
- {
- editor.execute('copy');
- });
-
- menu.addItem('Delete', 'images/delete2.png', function()
- {
- editor.execute('delete');
- });
-
- menu.addItem('Selection to superblock', 'images/superblock.png', function()
- {
- // @ToDo: Pooja: Functionality to be put.
- });
- var format = menu.addItem('Format', null, null);
-
- menu.addItem('Rotate', 'images/rotate.png', function()
- {
- alert('Rotate');// @ToDo: Pooja: Functionality to be put.
- }, format);
- menu.addItem('Edit...', 'images/edit.png', function()
- {
- alert('Edit...');// @ToDo: Pooja: Functionality to be put.
- }, format);
-
- menu.addItem('Details', null, function()
- {
- // @ToDo: Pooja: Functionality to be put.
- });
- }
- }
- else {
- menu.addItem('Undo', 'images/undo.png', function()
- {
- editor.execute('undo');
+ menu.addItem('Delete', 'images/delete2.png', function() {
+ editor.execute('delete');
});
- menu.addItem('Redo', 'images/redo.png', function()
- {
- editor.execute('redo');
- });
- menu.addItem('Paste', 'images/paste.png', function()
- {
- editor.execute('paste');
- });
- menu.addItem('Select all', 'images/selectall.png', function()
- {
- editor.execute('selectAll');
+ var edgeformat = menu.addItem('Format', null, null);
+
+ menu.addItem('Border Color', 'images/draw-brush.png', function() {
+ alert('Border Color'); // @ToDo: Pooja: Functionality to be put.
+ }, edgeformat);
+ menu.addItem('Edit...', 'images/edit.png', function() {
+ alert('Edit...'); // @ToDo: Pooja: Functionality to be put.
+ }, edgeformat);
+
+ } else {
+
+ menu.addItem('Block Parameters...', 'images/gear.gif', function() {
+ // @ToDo: Pooja: Functionality to be put.
});
- menu.addItem('Set Context', null, function()
- {
- // @ToDo: Pooja: Functionality to be put.
+
+ menu.addItem('Cut', 'images/cut.png', function() {
+ editor.execute('cut');
});
- menu.addItem('Setup', 'images/setup.png', function()
- {
- // @ToDo: Pooja: Functionality to be put.
+
+ menu.addItem('Copy', 'images/copy.png', function() {
+ editor.execute('copy');
});
- menu.addItem('Zoom In', 'images/zoom_in.png', function()
- {
- editor.execute('zoomIn');
+ menu.addItem('Delete', 'images/delete2.png', function() {
+ editor.execute('delete');
});
- menu.addItem('Zoom Out', 'images/zoom_out.png', function()
- {
- editor.execute('zoomOut');
+
+ menu.addItem('Selection to superblock', 'images/superblock.png', function() {
+ // @ToDo: Pooja: Functionality to be put.
});
- menu.addItem('Diagram background...', null, function()
- {
-
- showColorWheel(graph);
- // graph.container.style.backgroundColor=showColorWheel(graph);
- //editor.execute('pageBackgroundColor');
+ var format = menu.addItem('Format', null, null);
+
+ menu.addItem('Rotate', 'images/rotate.png', function() {
+ alert('Rotate'); // @ToDo: Pooja: Functionality to be put.
+ }, format);
+ menu.addItem('Edit...', 'images/edit.png', function() {
+ alert('Edit...'); // @ToDo: Pooja: Functionality to be put.
+ }, format);
+
+ menu.addItem('Details', null, function() {
// @ToDo: Pooja: Functionality to be put.
});
- }
-
+ }
+
+ } else {
+ menu.addItem('Undo', 'images/undo.png', function() {
+ editor.execute('undo');
+ });
+ menu.addItem('Redo', 'images/redo.png', function() {
+ editor.execute('redo');
+ });
+ menu.addItem('Paste', 'images/paste.png', function() {
+ editor.execute('paste');
+ });
+ menu.addItem('Select all', 'images/selectall.png', function() {
+ editor.execute('selectAll');
+ });
+ menu.addItem('Set Context', null, function() {
+ // @ToDo: Pooja: Functionality to be put.
+ });
+ menu.addItem('Setup', 'images/setup.png', function() {
+ // @ToDo: Pooja: Functionality to be put.
+ });
+
+ menu.addItem('Zoom In', 'images/zoom_in.png', function() {
+ editor.execute('zoomIn');
+ });
+ menu.addItem('Zoom Out', 'images/zoom_out.png', function() {
+ editor.execute('zoomOut');
+ });
+ menu.addItem('Diagram background...', null, function() {
+
+ showColorWheel(graph);
+ // graph.container.style.backgroundColor=showColorWheel(graph);
+ //editor.execute('pageBackgroundColor');
+ // @ToDo: Pooja: Functionality to be put.
+ });
+ }
+
};
//var config = mxUtils.load('config/editor-commons.xml').getDocumentElement();
@@ -461,18 +435,102 @@
toolbar.appendChild(spacer.cloneNode(true));
- // Defines a new export action
- editor.addAction('export', function(editor, cell) {
+
+ /*
+ Maverick
+ This method is used for loading the stylesheet from the file.
+ Reference: http://www.w3schools.com/xsl/xsl_client.asp
+ */
+
+ function loadXMLDoc(filename) {
+ if (window.ActiveXObject) {
+ xhttp = new ActiveXObject("Msxml2.XMLHTTP");
+ } else {
+ xhttp = new XMLHttpRequest();
+ }
+ xhttp.open("GET", filename, false);
+ try {
+ xhttp.responseType = "msxml-document"
+ } catch (err) {}
+ xhttp.send("");
+ return xhttp.responseXML;
+ }
+
+
+ /*
+ Maverick
+ The Export buttons in toolbar call this function with varying
+ arguments.
+ The third argument is used to decide which button is being
+ pressed.
+ exportXML : 2 arguments
+ exportXcos: 3 arguments
+ */
+ function displayXMLorXcos() {
var textarea = document.createElement('textarea');
textarea.style.width = '400px';
textarea.style.height = '400px';
+
var enc = new mxCodec(mxUtils.createXmlDocument());
- var node = enc.encode(editor.graph.getModel());
+ var node = enc.encode(arguments[0].graph.getModel());
+
+
+ //console.log(mxUtils.getPrettyXml(node));
textarea.value = mxUtils.getPrettyXml(node);
- showModalWindow(graph, 'XML', textarea, 410, 440);
+
+
+ if (arguments[2] == null) {
+ showModalWindow(graph, 'XML', textarea, 410, 440);
+ } else {
+ xmlFromExportXML = mxUtils.getXml(node);
+ return xmlFromExportXML;
+ }
+ }
+
+ // Defines a new export action
+ editor.addAction('exportXML', function(editor, cell) {
+ //Only two parameters passed here.
+ displayXMLorXcos(editor, cell);
+ });
+
+ /* Maverick
+ Reference: http://www.w3schools.com/xsl/xsl_client.asp
+ */
+
+ editor.addAction('exportXcos', function(editor, cell) {
+ //Mind the 3 parameters.
+ var xmlFromExportXML = displayXMLorXcos(editor, cell, true);
+ if (xmlFromExportXML == null) alert('First create the XML file.');
+ else {
+ /*
+ Maverick
+ Adding <mxGraphModel> tag to make up for the missing tag.
+ */
+
+ var xml = mxUtils.parseXml("<mxGraphModel>" + xmlFromExportXML + "</mxGraphModel>");
+
+ var xsl = loadXMLDoc("finalmodsheet.xsl");
+
+ xsltProcessor = new XSLTProcessor();
+ xsltProcessor.importStylesheet(xsl);
+ resultDocument = xsltProcessor.transformToDocument(xml);
+
+
+ var textarea = document.createElement('textarea');
+ textarea.style.width = '400px';
+ textarea.style.height = '400px';
+ /*
+ Maverick
+ Using resultDocument.documentElement to remove an additional tag "<#document>" created by the XSLTProcessor.
+ */
+ textarea.value = mxUtils.getPrettyXml(resultDocument.documentElement);
+ showModalWindow(graph, 'Xcos', textarea, 410, 440);
+ }
});
- addToolbarButton(editor, toolbar, 'export', 'Export', 'images/export1.png');
+ addToolbarButton(editor, toolbar, 'exportXML', 'Export XML', 'images/export1.png');
+
+ addToolbarButton(editor, toolbar, 'exportXcos', 'Export Xcos', 'images/export1.png');
// Adds toolbar buttons into the status bar at the bottom
// of the window.
@@ -692,9 +750,9 @@
showModalWindow(graph, 'Properties', content, 450, height);
};
- function showColorWheel(graph) {
+ function showColorWheel(graph) {
+
-
// Create basic structure for the form
var content = document.createElement('div');
content.setAttribute("id", "colorProperties");
@@ -702,37 +760,37 @@
// Add Form
var myform = document.createElement("form");
myform.method = "";
- myform.setAttribute("id","formProperties");
+ myform.setAttribute("id", "formProperties");
- // Line break
+ // Line break
var linebreak = document.createElement('br');
myform.appendChild(linebreak);
-
- // Input Title
- var fieldName = 'Color';
- var namelabel = document.createElement('label');
- namelabel.innerHTML = fieldName;
- myform.appendChild(namelabel);
+ // Input Title
+ var fieldName = 'Color';
+ var namelabel = document.createElement('label');
+ namelabel.innerHTML = fieldName;
+ myform.appendChild(namelabel);
- // Input
- var input = document.createElement("input");
- input.name = fieldName;
- input.value = 0;
- input.style.cssText = 'float: right;';
- input.setAttribute("id", "color");
- myform.appendChild(input);
- // Line break
- var linebreak = document.createElement('br');
- myform.appendChild(linebreak);
+ // Input
+ var input = document.createElement("input");
+ input.name = fieldName;
+ input.value = 0;
+ input.style.cssText = 'float: right;';
+ input.setAttribute("id", "color");
+ myform.appendChild(input);
+
+ // Line break
+ var linebreak = document.createElement('br');
+ myform.appendChild(linebreak);
+
+ // Line break
+ var linebreak = document.createElement('br');
+ myform.appendChild(linebreak);
- // Line break
- var linebreak = document.createElement('br');
- myform.appendChild(linebreak);
-
// Line break
var linebreak = document.createElement('br');
myform.appendChild(linebreak);
@@ -746,7 +804,7 @@
myform.appendChild(linebreak);
// Button - Submit
-
+
var btn = document.createElement("button");
btn.innerHTML = 'Submit';
btn.type = "button";
@@ -756,19 +814,19 @@
// Executes when button 'btn' is clicked
btn.onclick = function() {
- var input=document.getElementById('color').value;
-
- graph.container.style.backgroundColor=input;
-
+ var input = document.getElementById('color').value;
+
+ graph.container.style.backgroundColor = input;
+
};
myform.appendChild(btn);
-
+
content.appendChild(myform);
- showModalWindow(graph, 'Diagram background...', content,285,340);
+ showModalWindow(graph, 'Diagram background...', content, 285, 340);
// Invokes the farbtastic functionality
- $(document).ready(function() {
- $('#picker').farbtastic('#color');
+ $(document).ready(function() {
+ $('#picker').farbtastic('#color');
});
};
@@ -880,9 +938,9 @@
if (name == 'ANDBLK') {
var details = ANDBLK("define");
- var enc = new mxCodec(mxUtils.createXmlDocument());
- var node = enc.encode(details);
- //node.setAttribute('label',label);
+ var enc = new mxCodec(mxUtils.createXmlDocument());
+ var node = enc.encode(details);
+ //node.setAttribute('label',label);
v1 = graph.insertVertex(parent, null, node, x, y, 80, 80, 'ANDBLK');
createPorts(graph, v1, [], ['CONTROL', 'CONTROL'], [], ['COMMAND']);
} else if (name == 'CMSCOPE') {
@@ -890,8 +948,8 @@
createPorts(graph, v1, ['EXPLICIT', 'EXPLICIT'], ['CONTROL'], [], []);
} else if (name == 'CONST_m') {
var details = CONST_m("define");
- var enc = new mxCodec(mxUtils.createXmlDocument());
- var node = enc.encode(details);
+ var enc = new mxCodec(mxUtils.createXmlDocument());
+ var node = enc.encode(details);
v1 = graph.insertVertex(parent, null, node, x, y, 80, 80, 'CONST_m');
createPorts(graph, v1, [], [], ['EXPLICIT'], []);
} else if (name == 'CONVERT') {