0
일부 SharePoint XSLT 결과에서 일부 강조 표시를 시도하고 있습니다. BElow는 내가 얻고있는 XML이다. 내가 얻는 문제는 템플리트 매치 블록이 UM의 하위 노드와 일치하지 않는다는 것입니다. 누군가 내가 잘못 가고있는 곳을 볼 수 있다면 좋을 것입니다. SharePoint XSLT 문제 -
는Chhris
<rows>
<row>
<LastModifiedTime>02/25/2010 18:32:25</LastModifiedTime>
<RANK>325</RANK>
<TITLE>UMUK Win At The Mobile Entertainment</TITLE>
<AUTHOR>SVR08-002\Administrator</AUTHOR>
<CREATED>02/25/2010 18:32:22</CREATED>
<PATH>http://svr08-002:7005/Lists/FrontPageNews/DispForm.aspx?ID=3</PATH>
<HitHighlightedSummary>a
<c0>UM</c0> UK won the category of Best Music Label 2009 at the 4th annual ME (Mobile Entertainment) Awards C <ddd/>
</HitHighlightedSummary>
</row>
</rows>
감사하고 여기에 지금까지 가지고있는 XSLT이다.
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:template match="/">
<table class="ICS_SearchTable" cellpadding="0" cellspacing="0" width="100%">
<xsl:for-each select="rows/row">
<xsl:variable name="Ext">
<xsl:call-template name="get-file-extension">
<xsl:with-param name="path" select="substring-before(PATH, '?')" />
</xsl:call-template>
</xsl:variable>
<tr>
<td width="10%">
</td>
<td>
<div class="ICS_SearchResultItem">
<div class="ICS_SearchResultItemImage">
<img src="/Style Library/UMIGlobe/Styles/Images/Common/umgi-{$Ext}.png" alt="{$Ext}"/>
</div>
<div class="ICS_SearchResultItemTitle">
<a href="{PATH}"><xsl:value-of select="TITLE"/></a>
</div>
<div class="ICS_SearchResultItemDesc">
<xsl:choose>
<xsl:when test="HitHighlightedSummary[. != '']">
<xsl:call-template name="HitHighlighting">
<xsl:with-param name="hh" select="HitHighlightedSummary" />
</xsl:call-template>
</xsl:when>
<xsl:when test="DESCRIPTION[. != '']">
<xsl:value-of select="DESCRIPTION"/>
</xsl:when>
</xsl:choose>
</div>
<div class="ICS_SearchResultItemLink">
<a href="{PATH}"><xsl:value-of select="PATH"/></a> - <xsl:value-of select="AUTHOR" /> - <xsl:value-of select="LastModifiedTime"/>
<xsl:call-template name="DisplaySize">
<xsl:with-param name="size" select="SIZE" />
</xsl:call-template>
</div>
</div>
</td>
</tr>
</xsl:for-each>
</table>
</xsl:template>
<xsl:template name="HitHighlighting">
<xsl:param name="hh" />
<xsl:apply-templates select="$hh"/>
</xsl:template>
<xsl:template match="ddd">
…
</xsl:template>
<xsl:template match="c0">
<b>
<xsl:value-of select="."/>
</b>
</xsl:template>
<xsl:template match="c1">
<b>
<xsl:value-of select="."/>
</b>
</xsl:template>
<xsl:template match="c2">
<b>
<xsl:value-of select="."/>
</b>
</xsl:template>
<xsl:template match="c3">
<b>
<xsl:value-of select="."/>
</b>
</xsl:template>
<xsl:template match="c4">
<b>
<xsl:value-of select="."/>
</b>
</xsl:template>
<xsl:template match="c5">
<b>
<xsl:value-of select="."/>
</b>
</xsl:template>
<xsl:template match="c6">
<b>
<xsl:value-of select="."/>
</b>
</xsl:template>
<xsl:template match="c7">
<b>
<xsl:value-of select="."/>
</b>
</xsl:template>
<xsl:template match="c8">
<b>
<xsl:value-of select="."/>
</b>
</xsl:template>
<xsl:template match="c9">
<b>
<xsl:value-of select="."/>
</b>
</xsl:template>
<!-- The size attribute for each result is prepared here -->
<xsl:template name="DisplaySize">
<xsl:param name="size" />
<xsl:if test='string-length($size) > 0'>
<xsl:if test="number($size) > 0">
-
<xsl:choose>
<xsl:when test="round($size div 1024) < 1"><xsl:value-of select="$size" /> Bytes</xsl:when>
<xsl:when test="round($size div (1024 *1024)) < 1"><xsl:value-of select="round($size div 1024)" />KB</xsl:when>
<xsl:otherwise><xsl:value-of select="round($size div (1024 * 1024))"/>MB</xsl:otherwise>
</xsl:choose>
</xsl:if>
</xsl:if>
</xsl:template>
<xsl:template name="get-file-extension">
<xsl:param name="path" />
<xsl:choose>
<xsl:when test="contains($path, '/')">
<xsl:call-template name="get-file-extension">
<xsl:with-param name="path" select="substring-after($path, '/')" />
</xsl:call-template>
</xsl:when>
<xsl:when test="contains($path, '.')">
<xsl:call-template name="get-file-extension">
<xsl:with-param name="path" select="substring-after($path, '.')" />
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<!-- SET THE PATH IMAGE SRC -->
<xsl:choose>
<xsl:when test="$path = 'uk' or $path = 'org' or $path = 'com' or $path = 'net' or $path = 'biz' or $path = 'gov'">
<xsl:text>url</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$path" />
</xsl:otherwise>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>