???
You do have the file locally. If you just synched the file, you know both are equal, thus you can calculate the md5 of the local file and associate it to the remote etag
You have the etag to know the state of the server, don't you?
Well, there are always ways to set the modified time I would think ;-)
ok
???
Now you know both files are equal, you calculate the md5 of the file you just uploaded, and correlate it with the etag you get from the server...
???
Well, maybe the server is actually checking if the file did change. Even if the modified since was changed (you did try to modify it), the version of the file is still the same. so no error there, see also the RFC:
Since your file is equal byte-by-byte, the strong-entity-tag, which your etag is, can remain the same.A "strong entity tag" may be shared by two entities of a resource only if they are equivalent by octet equality.
???
What does svn have to do with it? What feature of svn do you want to emulate?
By the way, you can work with svn without webdav. (Even if most people do not ;-)
What exactly is the problem you are seeing. Take your time please and try to write it in a way that helps me to understand you clearly.
(Yes, it is hard to write things down in a precise way, especially when english is not your native language. Mine is german by the way :-)
Bookmarks