<xsl:copy><xsl:apply-templates select='node()|@*' /></xsl:copy>
</xsl:template>
-<xsl:template name='exif'>
+<xsl:template name='exif' mode='exif' match='*'>
<xsl:param name='node' select='.' />
<xsl:param name='name' select='local-name($node)' />
<td><xsl:value-of select='$node' /></td>
</tr>
</xsl:template>
+
<xsl:template match='exif'>
<h2>Metadata</h2>
<table>
<tr><th>Attribute</th><th>Value</th></tr>
</thead>
<tbody>
- <xsl:call-template name='exif'>
- <xsl:with-param name='node' select='make' />
+ <xsl:apply-templates select='make' mode='exif'>
<xsl:with-param name='name' select='"Camera make"' />
- </xsl:call-template>
- <xsl:call-template name='exif'>
- <xsl:with-param name='node' select='model' />
+ </xsl:apply-templates>
+ <xsl:apply-templates select='model' mode='exif'>
<xsl:with-param name='name' select='"Camera model"' />
- </xsl:call-template>
- <xsl:call-template name='exif'>
- <xsl:with-param name='node' select='date_time_original' />
+ </xsl:apply-templates>
+ <xsl:apply-templates select='date_time_original' mode='exif'>
<xsl:with-param name='name' select='"Date taken"' />
- </xsl:call-template>
- <xsl:call-template name='exif'>
+ </xsl:apply-templates>
+ <xsl:apply-templates select='exposure_time' mode='exif'>
<xsl:with-param name='node' select='concat(exposure_time, "s")' />
<xsl:with-param name='name' select='"Shutter speed"' />
- </xsl:call-template>
- <xsl:call-template name='exif'>
+ </xsl:apply-templates>
+ <xsl:apply-templates select='f_number' mode='exif'>
<xsl:with-param name='node' select='concat("f/", f_number)' />
<xsl:with-param name='name' select='"Aperture"' />
- </xsl:call-template>
- <xsl:call-template name='exif'>
- <xsl:with-param name='node' select='exposure_bias_value' />
+ </xsl:apply-templates>
+ <xsl:apply-templates select='exposure_bias_value' mode='exif'>
<xsl:with-param name='name' select='"Exposure compensation"' />
- </xsl:call-template>
- <xsl:call-template name='exif'>
+ </xsl:apply-templates>
+ <xsl:apply-templates select='focal_length' mode='exif'>
<xsl:with-param name='node' select='concat(focal_length, "mm")' />
<xsl:with-param name='name' select='"Focal length"' />
- </xsl:call-template>
- <xsl:call-template name='exif'>
- <xsl:with-param name='node' select='flash' />
+ </xsl:apply-templates>
+ <xsl:apply-templates select='flash' mode='exif'>
<xsl:with-param name='name' select='"Flash"' />
- </xsl:call-template>
- <xsl:call-template name='exif'>
- <xsl:with-param name='node' select='iso_speed_ratings' />
+ </xsl:apply-templates>
+ <xsl:apply-templates select='iso_speed_ratings' mode='exif'>
<xsl:with-param name='name' select='"ISO speed rating"' />
- </xsl:call-template>
- <xsl:call-template name='exif'>
- <xsl:with-param name='node' select='exposure_program' />
+ </xsl:apply-templates>
+ <xsl:apply-templates select='exposure_program' mode='exif'>
<xsl:with-param name='name' select='"Exposure program"' />
- </xsl:call-template>
- <xsl:call-template name='exif'>
- <xsl:with-param name='node' select='metering_mode' />
+ </xsl:apply-templates>
+ <xsl:apply-templates select='metering_mode' mode='exif'>
<xsl:with-param name='name' select='"Metering mode"' />
- </xsl:call-template>
+ </xsl:apply-templates>
</tbody>
</table>
</xsl:template>