ms:format-date Function
Converts standard XSD date formats to characters suitable for output.
string ms:format-date(string datetime, string format [,locale])
Parameters
- string datetime
Contains a date-related value in XSD format. For nonstring arguments, this function behaves as if astring()
function were applied. If the argument is not a date, the output is an empty string. If it is a valid XSD date and some fields are empty, this function attempts to fill unspecified fields.
- string format
Contains a format string, according to Win32 APIGetDateFormat
functions.
- locale [optional]
Defines the locale to format the data for (for example, "EN_us").
Remarks
The following lists the format characters for ms:format-date()
.
Character(s) | Description |
---|---|
M |
Months as 1-12 |
MM |
Months as 01-12 |
MMM |
Months as Jan-Dec |
MMMM |
Months as January-December |
d |
Days as 1-31 |
dd |
Days as 01-31 |
ddd |
Days as Sun-Sat |
dddd |
Days as Sunday-Saturday |
y |
Years as 0-99 |
yy |
Years as 00-99 |
yyyy |
Years as 1900-9999 |
gg |
Period/era (ignored if there isn't one) |
Note that this format does not allow time zones; does not allow the inclusion of arbitrary text into the formatted string; does not allow centuries; does not allow suffixes like May 2nd or April1st.
Example
XML Document (Sample.xml)
<?xml version='1.0'?>
<XMLSamples xml:space="preserve"
xmlns:dt="urn:schemas-microsoft-com:datatypes">
<FileDetails>
<Author>Robert Brown</Author>
<Date dt:dt="datetime">2000-02-16T15:56:00</Date>
</FileDetails>
</XMLSamples>
XSLT Style Sheet (Sample.xsl)
<?xml version='1.0'?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:ms="urn:schemas-microsoft-com:xslt"
xmlns:dt="urn:schemas-microsoft-com:datatypes">
<xsl:template match="/">
<HTML>
<HEAD>
</HEAD>
<BODY>
<xsl:for-each select="XMLSamples/FileDetails/Date">
<DIV>
Date Unedited:
<xsl:value-of select="."/>
</DIV>
<DIV>
Date Edited:
<xsl:value-of select="ms:format-date(., 'MMM dd, yyyy')"/>
</DIV>
</xsl:for-each>
</BODY>
</HTML>
</xsl:template>
</xsl:stylesheet>
Output
The output HTML page shows the following entries:
Date Unedited: 2000-02-16T15:56:00 Date Edited: Feb 16, 2000