source: CMDI-Interoperability/PARADISEC/trunk/utils.xsl

Last change on this file was 3119, checked in by mwindhouwer, 11 years ago

Initial import

File size: 2.1 KB
Line 
1<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"
2    xmlns:xs="http://www.w3.org/2001/XMLSchema"
3    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" exclude-result-prefixes="xs functx"
4    xmlns:cmd="http://www.clarin.eu/cmd/" xmlns:functx="http://www.functx.com">
5
6    <xsl:include href="functx-1.0-nodoc-2007-01.xsl"/>
7
8    <!-- change this to reflect the output dir/file layout -->
9    <xsl:function name="cmd:createLink">
10        <xsl:param name="base"/>
11        <xsl:param name="id"/>
12        <xsl:value-of select="$base"/>
13        <xsl:text>/</xsl:text>
14        <xsl:value-of select="$id"/>
15        <xsl:text>.cmdi</xsl:text>
16    </xsl:function>
17
18    <xsl:function name="cmd:exists">
19        <xsl:param name="node"/>
20        <xsl:sequence select="normalize-space($node)!=''"/>
21    </xsl:function>
22
23    <xsl:function name="cmd:notEmptyValue">
24        <xsl:param name="node"/>
25        <xsl:param name="val"/>
26        <xsl:if test="normalize-space($val)=''">
27            <xsl:message>WRN: <xsl:value-of select="functx:path-to-node-with-pos($node)"
28                /> is empty!</xsl:message>
29        </xsl:if>
30        <xsl:sequence select="normalize-space($val)"/>
31    </xsl:function>
32
33    <xsl:function name="cmd:notEmptyValue">
34        <xsl:param name="node"/>
35        <xsl:sequence select="cmd:notEmptyValue($node,string($node))"/>
36    </xsl:function>
37
38    <xsl:function name="cmd:ISODateTime">
39        <xsl:param name="node"/>
40        <xsl:sequence
41            select="replace($node,'([^ ]+) ([^ ]+) \+([0-9][0-9])([0-9][0-9])','$1T$2+$3:$4')"/>
42    </xsl:function>
43   
44    <xsl:function name="cmd:shouldExist">
45        <xsl:param name="node"/>
46        <xsl:param name="msg"/>
47        <xsl:choose>
48            <xsl:when test="exists($node)">
49                <xsl:sequence select="cmd:notEmptyValue($node)"/>
50            </xsl:when>
51            <xsl:otherwise>
52                <xsl:message>ERR: <xsl:value-of select="$msg"/></xsl:message>
53                <xsl:comment>ERR: <xsl:value-of select="$msg"/></xsl:comment>
54            </xsl:otherwise>
55        </xsl:choose>
56    </xsl:function>
57
58</xsl:stylesheet>
Note: See TracBrowser for help on using the repository browser.