With inline values you get to modify the value on the way into and out of the index using the createIV and asValue methods on IExtension. With inline uris you only get to modify the value on the way into the index using InlineURIHandler's createInlineIV.
It'd be convenient to either allow InlineURIHandler some way to unpack the iv into some other iv on the way out or to allow an AbstractInlineIV for URIExtensions's delegateIV so you could plug a LiteralExtensionIV there.
I'm not familiar with the on disk layout so I'm not sure which would be simpler.
For reference we have uris that can be packed into a signed integer, ones that need a signed integer plus a uuid. But they need to be unpacked into a canonical form for display on the workbench or returning over the api.