XSLT-如何获取xmlid的类型并为其调用应用模板?
我是XSLT的新手。我正在使用MagicDraw并将sysml模型导出到UMLXMI2.5版本。 生成的xmi的格式如下XSLT-如何获取xmlid的类型并为其调用应用模板?,xml,xslt,Xml,Xslt,我是XSLT的新手。我正在使用MagicDraw并将sysml模型导出到UMLXMI2.5版本。 生成的xmi的格式如下 <xmi:XMI xmlns:uml='http://www.omg.org/spec/UML/20131001'> <uml:Model xmi:type='uml:Model' xmi:id='eee_1045467100313_135436_1' name='Model'> <xmi:Extension extender='MagicDra
<xmi:XMI xmlns:uml='http://www.omg.org/spec/UML/20131001'>
<uml:Model xmi:type='uml:Model' xmi:id='eee_1045467100313_135436_1' name='Model'>
<xmi:Extension extender='MagicDraw UML 18.4'>
<packagedElement xmi:type='uml:Class' xmi:id='_18_4_1_8a70262_1495692226026_145378_13658' name='a'>
<ownedAttribute xmi:type='uml:Port' xmi:id='_18_4_1_8a70262_1495692263168_183171_13795' name='p1' visibility='public' aggregation='composite'/>
</packagedElement>
<packagedElement xmi:type='uml:Class' xmi:id='_18_4_1_8a70262_1495692227629_410625_13704' name='b'>
<ownedAttribute xmi:type='uml:Port' xmi:id='_18_4_1_8a70262_1495692268225_236623_13810' name='p1' visibility='public' aggregation='composite'/>
</packagedElement>
<packagedElement xmi:type='uml:Class' xmi:id='_18_4_1_8a70262_1495692251639_26689_13750' name='IB'/>
</uml:Model>
<sysml:Block xmi:id='_18_4_1_8a70262_1495692226026_635824_13659' base_Class='_18_4_1_8a70262_1495692226026_145378_13658'/>
<sysml:Block xmi:id='_18_4_1_8a70262_1495692227629_766722_13705' base_Class='_18_4_1_8a70262_1495692227629_410625_13704'/>
<sysml:InterfaceBlock xmi:id='_18_4_1_8a70262_1495692251640_837375_13751' base_Class='_18_4_1_8a70262_1495692251639_26689_13750'/>
我写过这样的xslt
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml"/>
<xsl:strip-space elements="*"/>
<!--Handling of the Header-->
<xsl:template match="/XMI">
<simulinkExportBlocks>
<xsl:for-each select="Block">
<xsl:apply-templates select="Block"/>
</xsl:for-each>
</simulinkExportBlocks>
</xsl:template>
<xsl:template match="Block">
<compositeBlock><xsl:apply-templates select="text()|B|I|U|DEF|LINK"/></compositeBlock>
</xsl:template>
</xsl:stylesheet>
我正在尝试编写xsl文件,用于将UML2.5XMI转换为自定义xml
uml元素在一个地方定义,在另一个地方用于图表表示
我想为块、接口块、连接器等每个元素创建自定义xml标记
如何在xsl文件中使用xml id对其进行分类
有人能在这方面帮助我吗。请在您的问题中写下必要的信息,如xml块(而不是作为注释),并提供您到目前为止尝试过的内容,以及更多的澄清,如分类的含义和您想要的输出类型。谢谢Gerriet:)好的,您大大改进了问题,虽然还不太清楚预期的输出是什么,但分类意味着什么,以及在两个地方的外观如何影响到这一点。首先,我建议学习基于属性选择节点的选项,如