BUG: XML Tools: Date and Date Time Fields Do Not Validate for Correct Days per Month (278741)



The information in this article applies to:

  • Microsoft BizTalk Server 2000

This article was previously published under Q278741

SYMPTOMS

When you validate an XML instance or document against a schema, Date and Date Time fields are not checked for a valid number of days per month, other than ensuring that the numeric value in a Day field is not greater than 31.

STATUS

Microsoft has confirmed that this is a problem in BizTalk Server 2000.

MORE INFORMATION

Steps to Reproduce This Behavior

To reproduce this behavior, assume you have an XML document containing the following lines:
<BlankSpecification>
<Record1 Date1="1999-02-31"></Record1>
<Record1 Date2="1999-02-31T00:00:00"></Record1>
<Record1 Date3="1999-02-31T00:00:00-08:00"></Record1>
</BlankSpecification>
				
When you validate this instance against a schema where Date1 is set as a Date format, Date2 is set as Date Time format, and Date3 is set as Date Time.tz, the BizTalk Editor only returns an error for the last date (the one using Date Time.tz).
The XML document has failed validation for the following reason: Error parsing '1999-02-31T00:00:00-08:00' as dateTime.tz datatype. Line:4 Position:47
The first two dates generate no errors even though they are invalid, because the month of February never has more than 29 days.

Example

Spec.exe is an example BizTalk schema that can be used to illustrate this validation error. The following file is available for download from the Microsoft Download Center:
For additional information about how to download Microsoft Support files, click the following article number to view the article in the Microsoft Knowledge Base:

119591 How to Obtain Microsoft Support Files from Online Services

Microsoft scanned this file for viruses. Microsoft used the most current virus-detection software that was available on the date that the file was posted. The file is stored on security-enhanced servers that help to prevent any unauthorized changes to the file.

NOTE: Microsoft provides programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft support professionals can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific needs. If you have limited programming experience, you may want to contact a Microsoft Certified Partner or the Microsoft fee-based consulting line at (800) 936-5200. For more information about Microsoft Certified Partners, please visit the following Microsoft Web site: For more information about the support options that are available and about how to contact Microsoft, visit the following Microsoft Web site:

Modification Type:MajorLast Reviewed:6/23/2005
Keywords:kbdownload kbdownload kbbug kbgraphxlinkcritical kbpending KB278741 kbAudDeveloper