Subject: Question for the XML gurus

From: Brian Morin <[email-masked]>
Date: Mon, 5 Feb 2001 14:49:18 -0800

We recently tried to load the IIS 5.0 response text to a propfind in MSXML
and had trouble parsing the getlastmodified property.  It appears that MSXML
does not accept "dateTime.rfc1123" as a legal value for the attribute "b:dt"
where b="urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/".  Changing dt
attribute to the dav namespace seemed to fixed the problem (would you do
this since dateTime.rfc1123 was a DAV data type and not under defined under
the b namespace?.)

Is the problem the way IIS 5.0 is representing the date format?  Is there a
more correct way?

and/or

Is the problem that MSXML doesn't understand the "dateTime.rfc1123" format?
Should it?

Here is a abreviated dump of the request and response in question:

PROPFIND /dav HTTP/1.1
Content-Type: text/xml
Depth: 1
Content-Length: 489
User-Agent: Microsoft Data Access Internet Publishing Provider DAV
Host: bmorin5
Connection: Keep-Alive

<?xml version="1.0" encoding="UTF-8" ?>
<a:propfind xmlns:a="DAV:" xmlns:b="urn:schemas-microsoft-com:datatypes">
<a:prop>
<a:name/>
<a:parentname/>
<a:href/>
<a:ishidden/>
<a:isreadonly/>
<a:getcontenttype/>
<a:creationdate/>
<a:lastaccessed/>
<a:getlastmodified/>
<a:getcontentlength/>
<a:iscollection/>
<a:displayname/>
<a:resourcetype/>
</a:prop>
</a:propfind>

HTTP/1.1 207 Multi-Status
Server: Microsoft-IIS/5.0
Date: Mon, 05 Feb 2001 21:33:52 GMT
Content-Location: http://bmorin5/dav/
Content-Type: text/xml
Transfer-Encoding: chunked

<?xml version="1.0"?><a:multistatus
xmlns:b="urn:uuid:c2f41010-65b3-11d1-a29f-00aa00c14882/" xmlns:c="xml:"
xmlns:a="DAV:">
<a:response>
	<a:href>http://bmorin5/dav/</a:href>
	<a:propstat>
		<a:status>HTTP/1.1 200 OK</a:status>
		<a:prop>
			<a:ishiddenb:dt="boolean">0</a:ishidden>
	
<a:getcontenttype>application/octet-stream</a:getcontenttype>
			<a:creationdate
b:dt="dateTime.tz">2000-03-31T02:48:03.598Z</a:creationdate>
			<a:getlastmodified b:dt="dateTime.rfc1123">Thu, 31
Aug 2000 20:57:45 GMT</a:getlastmodified>
			<a:getcontentlength
b:dt="int">0</a:getcontentlength>
			<a:iscollection b:dt="boolean">1</a:iscollection>
			<a:displayname>dav</a:displayname>
			<a:resourcetype><a:collection/></a:resourcetype>
		</a:prop>
	</a:propstat>
	....
</a:repsponse>

Thanks,
Brian Morin
Development Lead
.NET Services