Name

[2.0] year-from-date()

Given an xs:date value, returns its year component.

Syntax

xs:integer? year-from-date(xs:date?)

Input

An xs:date value.

Output

An xs:integer representing the year component of the given xs:date value. If the argument is the empty sequence, this function returns the empty sequence.

Defined in

XQuery 1.0 and XPath 2.0 Functions and Operators section 10.5, “Component Extraction Functions on Durations, Dates and Times.”

Example

This stylesheet demonstrates the year-from-date() function:

<?xml version="1.0"?>
<!-- year-from-date.xsl -->
<xsl:stylesheet version="2.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:xs="http://www.w3.org/2001/XMLSchema">

  <xsl:output method="text"/>

  <xsl:template match="/">
    <xsl:text>&#xA;Extracting the year from an xs:date:</xsl:text>
    <xsl:variable name="currentDate" as="xs:date" select="current-date()"/>
    <xsl:text>&#xA;&#xA;  The current date is: </xsl:text>
    <xsl:value-of select="$currentDate"/>

    <xsl:text>&#xA;&#xA;  The current year: </xsl:text>
    <xsl:value-of select="year-from-date($currentDate)"/>
    <xsl:text>&#xA;    In words: </xsl:text>
    <xsl:value-of select="format-date($currentDate, '[YWw]')"/>
    <xsl:text>&#xA;    In German: </xsl:text>
    <xsl:value-of select="format-date($currentDate, '[YWw]', 'de', (), ())"/>
  </xsl:template>

</xsl:stylesheet>

The stylesheet creates these exciting results:

Extracting the year from an xs:date: The current date is: 2006-11-16-05:00 The current year: 2006 In words: Two Thousand and Six In German: Zweitausend ...

Get XSLT, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.