ms:format-date Function
.NET Framework 4.5
Converts standard XSD date formats to characters suitable for output.
string ms:format-date(string datetime, string format [,locale])
- string datetime
-
Contains a date-related value in XSD format. For nonstring arguments, this function behaves as if a
string()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 API
GetDateFormatfunctions.
- locale [optional]
- Defines the locale to format the data for (for example, "EN_us").
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.
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
Build Date: