asked on
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:variable name="lc" select="'azertyuiopqsdfghjklmwxcvbn'"/>
<xsl:variable name="uc" select="'AZERTYUIOPQSDFGHJKLMWXCVBN'"/>
<xsl:template match="/">
<Records>
<xsl:for-each select="/documents/document">
<record>
<xsl:call-template name="strip-tags">
<xsl:with-param name="text" select="translate(normalize-space(substring-after(concat(element[@name='MSHValues']/value,element[@name='MTHValues']/value,element[@name='SNOMEDCTValues']/value), ':')), $uc, $lc)" />
</xsl:call-template>
</record>
</xsl:for-each>
</Records>
</xsl:template>
<xsl:template name="process-values">
<xsl:param name="list"/>
<xsl:param name="remaining"/>
<xsl:choose>
<xsl:when test="contains($remaining, ';')">
<xsl:variable name="new-list">
<xsl:call-template name="filter-and-add">
<xsl:with-param name="list" select="$list"/>
<xsl:with-param name="term" select="substring-before($remaining, ';')"/>
</xsl:call-template>
</xsl:variable>
<xsl:call-template name="process-values">
<xsl:with-param name="list" select="$new-list"/>
<xsl:with-param name="remaining" select="substring-after($remaining, ';')"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:variable name="new-list">
<xsl:call-template name="filter-and-add">
<xsl:with-param name="list" select="$list"/>
<xsl:with-param name="term" select="$remaining"/>
</xsl:call-template>
</xsl:variable>
<xsl:value-of select="substring($new-list, 3)"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="filter-and-add">
<xsl:param name="list"/>
<xsl:param name="term"/>
<xsl:param name="norm-term" select="normalize-space(translate($term, '()1234567890', ''))"></xsl:param>
<xsl:choose>
<xsl:when test="not(contains(concat($list, '; '), concat('; ', $norm-term, '; ')))">
<xsl:value-of select="concat($list, '; ', $norm-term)"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$list"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="strip-tags">
<xsl:param name="text"/>
<xsl:choose>
<xsl:when test="contains($text, '<')">
<xsl:value-of select="substring-before($text, '<')"/>
<xsl:call-template name="strip-tags">
<xsl:with-param name="text" select="substring-after($text, '>')"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$text"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
<?xml version="1.0" encoding="utf-8"?>
<documents><document id="http://www.qualitymeasures.ahrq.gov/content.aspx?id=26549"><element name="MSHValues"><value>:
<a href='/search/search.aspx?term=Cross+Infection &umls=1'>Cross Infection</a>; <a href='/search/search.aspx?term=Postoperative+Complications &umls=1'>Postoperative Complications</a>; <a href='/search/search.aspx?term=Sepsis &umls=1'>Sepsis</a>
</value></element><element name="MTHValues"><value>:
<a href='/search/search.aspx?term=Systemic+infection &umls=1'>Systemic infection</a>
</value></element><element name="SNOMEDCTValues"><value>:
<a href='/search/search.aspx?term=Cross+infection &umls=1'>Cross infection</a> (36406009); <a href='/search/search.aspx?term=Nosocomial+infectious+disease &umls=1'>Nosocomial infectious disease</a> (19168005); <a href='/search/search.aspx?term=Postoperative+complication &umls=1'>Postoperative complication</a> (385486001); <a href='/search/search.aspx?term=Systemic+infection &umls=1'>Systemic infection</a> (91302008)
</document></documents>
Web development can range from developing the simplest static single page of plain text to the most complex web-based internet applications, electronic businesses, and social network services using a wide variety of languages and standards, including the familiar HTML, JavaScript and jQuery, ASP and ASP.NET, PHP, ColdFusion, CSS, PHP, Flex and Flash, but also the implementation of a broad list of standards including XML, WSDL, SSDL, VoiceXML and many more.
TRUSTED BY