Updates to Content resovers: Well known prefix resolving
Motivation
As discussed on the mailing list on windows machines "drive letters" can change while the "path part" of the filename is still valid. A suggestion was to allow content resolvers to work around this by allowing them to try other "drives".
Suggested update
I suggest this more general update:
A content resolver is allowed to alter and try URIs from <location>
tags in the following way if and only if none of the URIs provided by the <location>
tags could be opened. Such modified URIs SHOULD be tried before trying to resolve content by other means than <location>
tags.
Content resolvers MAY replace well known prefixes from URIs with valid local variants of them. This included physical mountpoints as well as logical mount points. However content resolvers SHOULD NOT replace prefixes with of one logical type with values of other logical types.
Valid examples:
-
C:\music\bla.ogg -> D:\music\bla.ogg
(physical mount/logical type "drive" is replaced) -
/home/foo/bla.ogg -> /home/bar/bla.ogg
(logical mount/logical type "home directory" is replaced) -
C:\Program Files/My Player/Collection/bla.ogg -> /home/foo/Music/bla.ogg
(logical mount/logical type "music collection" is replaced)
Questionable examples:
-
D:\bla.ogg -> /home/foo/Music/bla.ogg
(physical -> logical mount/logical type "drive" -> "music collection"; However valid if D:\ is also known as the root of a music collection)
Required version updates
This change will not require a version or namespace update.