I think this is just the sort of situation for which Ron was soliciting feedback when he added the note to the 20050518 snapshot stating:
I need to hear from people using the iTunes XML stuff against windows iTunes xml files… please report your experiences in the forums.
If I understand Mark’s (spring87) post, he took a gander at the content of the XML file and it contains Windows paths to the files. Since the daemon is running on a Linux box, it may be reading the structure of the playlist, but is unable to locate the files given that they are indicating a path such as M:somepathtoiTunesiTunes Music<song>, while on the server it is expecting something like ~/home/music/<song>.
My guess is that this will persist as an issue on Windows boxes in situations where the library is either stored on a remote volume or mirrored to a remote volume with the playlists having been created under Windows.
Mine is a situation not unsimilar to Mark’s in that I store my library on a centralized server and manage it from a desktop in another part of the house. The difference being that the daemon is running on a Darwin box and managed from a Darwin box. So, the file paths are very similar. In fact, looking at the XML file reveals that the path is designated as file://localhost/Volumes/path/to/music/library/<song>. No matter what system is used, the path will always be the same — relatively speaking.
Unless Ron has an alternate solution, I think the only way to address this is to have some sort of on-the-fly conversion script which will take the “mp3_dir” path and substitute it for the path listed in the XML file at the point where they intersect. That is simply a stab in the dark; not even sure if it is doable. Alternaively, if there was a means of making the path relative, rather than absolute, it might be feasible to go that route. I am not sure.
WRT your lamentation, “Unless Apple start allowing playlist creation…against a networked library…” This is already possible by means described elsewhere in the forum (and soon to be a HowTo in the wiki :-). One simply needs to mount the library tree as a volume locally, point iTunes to that directory as the “iTunes Music folder location” in the Advanced tab and manage the files as if they were local (e.g. altering ID3 tag data, creating playlists, burning disks, etc).