Name

[2.0] month-from-date()

Given an xs:date value, returns its month value.

Syntax

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

Input

An xs:date value.

Output

An xs:integer representing the month 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 month-from-date() function:

<?xml version="1.0"?>
<!-- month-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 month 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 month: </xsl:text>
    <xsl:value-of select="month-from-date($currentDate)"/>
    <xsl:text>&#xA;    In English: </xsl:text>
    <xsl:value-of select="format-date($currentDate, '[MNn]')"/>
    <xsl:text>&#xA;    In German: </xsl:text>
    <xsl:value-of select="format-date($currentDate, '[MNn]', 'de', (), ())"/>
    <xsl:text>&#xA;    It's the </xsl:text>
    <xsl:value-of select="format-date($currentDate, '[M1o]')"/>
    <xsl:text> month of the year.</xsl:text>
  </xsl:template>

</xsl:stylesheet>

The stylesheet creates these results:

Extracting the ...

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.