urn:foo.com:abc123defwhere:
This requires four steps:
Its also usefull for the generic objects scenario, where a client can display a URL it does have cached, while waiting for the correct one to be downloaded e.g.
WWWInline { name [ "urn:foo.com:abc126, # A URN for the fancy phone "http://www.foo.com/fancyphone.wrl", # Where we know there is a copy "http://vrml.org/generic/phone.wrl ] # A generic version to use now }
# We have the object library from foo.com here urn:foo.com:* @file:c:/objectlib/foo/index.urn # Maybe we have the URN cached from earlier * @file:e:/objectcache/index.urn # Try looking in d: (the CDROM) maybe its there * @file:d:/index.urnNote the "@" to denote to look in that file, rather than return the file.
Lower level URN files would look something like
urn:foo.com:abc123 file:c:/objectlib/foo/table.wrl urn:foo.com:abc124 file:c:/objectlib/foo/chair.wrl
Of course, a clever browser might implement its own, more efficient, binary format, but we need a common shared format.
This is implemented by:
urn:bar.com:* @http://bar.com urn:* @http://vrml.org