uri-* Functions

Hello,

XPath Expressions Module
<https://www.w3.org/community/xformsusers/wiki/XPath_Expressions_Module#The_uri-scheme-specific-part.28.29_Function>
describes
several uri-* functions, besides the one, which is logically bound to an
XForm (xf:location-uri()). Are these many functions really needed or would
a map, containing all IRI components (including those from the rfc8141 URN
update), suffice? I am aware, though, that maps are not available in
XPath2. So, please take the following lines just as gentle inspiration to
any future developments.

A map like this could be:

let $map :=
{
  'scheme'      : xs:string,
  'authority'   : xs:string,
  'path'        : xs:string,
  'query'       : xs:string,
  'fragment'    : xs:string,
  'user'        : xs:string,
  'password'    : xs:string,
  'host'        : xs:string,
  'port'        : xs:string,
  'filename'    : xs:string,
  'nid'         : xs:string,
  'nss'         : xs:string,
  'r-component' : xs:string,
  'q-component' : xs:string,
  'f-component' : xs:string,
  'is-urn'      : xs:boolean
}

I came around this thought while writing a (generic, not XForms related)
XQuery library module, that tries to offer this kind of IRI parsing, and
found out, that there is some proposal in the XForms2 spec for such
functionality. Since such functionality may also satisfy usage scenarios
outside of the XForms domain, I wonder, whether it may make sense about
having such functionality become part of any future XPath update. Since
that may take time (who is in charge of such activity, right now?), this
community could implement a single function, resulting in a map, similar as
shown above. In case of XPath2 compatibility, as it seems to be required by
the aforementioned document, such a function may return an XML document,
containing the components.

-- 
Minden jót, all the best, Alles Gute,
Andreas Mixich

Received on Tuesday, 28 August 2018 17:46:13 UTC