【发布时间】:2014-02-06 01:12:13
【问题描述】:
我发现很难从以下输入和输出文件创建 XSLT 样式表。
输入 XML:
<DocumentManagement>
<Document>
<DocUniqueID>MedTypeABC1234140204132332932CL</DocUniqueID>
<PatientID>ABC1234</PatientID>
<CreationDate>03 Feb 2014</CreationDate>
<DocumentClass>Clinical Letters</DocumentClass>
<MimeType>application/msword</MimeType>
<MetaData>
<FieldName>Original Document Creation Date</FieldName>
<Value>03 Feb 2014</Value>
</MetaData>
<MetaData>
<FieldName>Subject</FieldName>
<Value>Neurology</Value>
</MetaData>
<MetaData>
<FieldName>Description</FieldName>
<Value>Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit</Value>
</MetaData>
<MetaData>
<FieldName>Clinician</FieldName>
<Value>Dr. Adam Smith</Value>
</MetaData>
</Document>
</DocumentManagement>
所需的输出 XML:
<DocumentSet>
<Comments>Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit/Comments>
<Author>
<Person value="Dr. Adam Smith" />
<Role>Clinician</Role>
<Speciality>Neurology</Speciality>
</Author>
<PatientId id="ABC1234" />
<Document umiqueId="MedTypeABC1234140204132332932CL" creationTime="03 Feb 2014" mimeType="application/msword">
<ClassCode description="Clinical Letters" />
<FormatCode value="WORD" description="application/msword" />
</Document>
</DocumentSet>
我在以下方面遇到了特别困难:
- 评论应该从第三个元数据组中获得价值。
- 专业应该从第二个元数据组中获得价值。
- 人员和角色元素应从第 4 个元数据组中获取其值。
谁能告诉我正确的 XSLT 样式表?提前致谢。
我只能想出下面的 XSLT,当然不能得到我想要的完整输出。
<xsl:template match="DocumentManagement/Document">
<DocumentSet>
<Comments>
<xsl:value-of select="don't know what to put here"/>
</Comments>
<Author>
<Person value="don't know what to put here" />
<Role><xsl:value-of select="don't know what to put here"/></Role>
<Speciality><xsl:value-of select="don't know what to put here"/></Speciality>
</Author>
<PatientId id="{PatientID}" />
<Document umiqueId="{DocUniqueID}" creationTime="{CreationDate}" mimeType="{MimeType}">
<ClassCode description="{DocumentClass}" />
<FormatCode value="don't know how to put correct value based on mimetype" description="{MimeType}" />
</Document>
</DocumentSet>
</xsl:template>
【问题讨论】:
-
你尝试了什么? xsl 例子?
-
请看我的编辑。谢谢。
标签: xslt