Artefact:Template/org/ooem/templates/ooem-1.0-xmi-2.1
From OOModels
< Artefact:Template | org | ooem | templates
Jump to navigationJump to search
Revision as of 18:52, 9 July 2008 by AndreasLeue (talk | contribs)
Classification | |
---|---|
Type | Type:org/w3/XSL |
Domain | Domain:it/development/formatting |
Category | Type:org/oomodels/wiki/Template |
Maturity | work in progress |
Namespace (more) | |
OOEM main package | |
create new pages |
Code[edit]
<?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" xmlns:uml="http://www.eclipse.org/uml2/2.1.0/UML" version="1.0"> <xsl:output method="xml" indent="yes"/>
<xsl:template match="/"> <xsl:apply-templates/> </xsl:template>
<xsl:template match="Package"> <xsl:variable name="name" select="Name"/> <uml:Package xmi:version="2.1" xmi:id="p_{$name}" name="{$name}"> <xsl:apply-templates select="Class"> <xsl:with-param name="prefix"><xsl:value-of select="p_{$name}"/></xsl:with-param> </xsl:apply-templates> </uml:Package> </xsl:template>
<xsl:template match="Class"> <xsl:param name="prefix"></xsl:param> <xsl:variable name="name" select="Name"/> <packagedElement xmi:type="uml:Class" xmi:id="{$prefix}_c_{$name}" name="{$name}"> <xsl:apply-templates select="Attribute"> <xsl:with-param name="prefix"><xsl:value-of select="{$prefix}_c_{$name}"/></xsl:with-param> </xsl:apply-templates> </packagedElement> </xsl:template>
<xsl:template match="Attribute"> <xsl:param name="prefix"></xsl:param> <xsl:variable name="name" select="Name"/> <ownedAttribute xmi:id="{$prefix}_a_{$name}" name="{$name}" aggregation="composite"/> </xsl:template>
<xsl:template match="Operation"> <xsl:param name="prefix"></xsl:param> <xsl:variable name="name" select="Name"/> <ownedAttribute xmi:id="{$prefix}_o_{$name}" name="{$name}" aggregation="composite"/> </xsl:template>
<xsl:template match="*"/>
</xsl:stylesheet>