[Bug 25191] New: [XP3.1] Function Conversion Rules for Maps

https://www.w3.org/Bugs/Public/show_bug.cgi?id=25191

            Bug ID: 25191
           Summary: [XP3.1] Function Conversion Rules for Maps
           Product: XPath / XQuery / XSLT
           Version: Last Call drafts
          Hardware: PC
                OS: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: XPath 3.1
          Assignee: jonathan.robie@gmail.com
          Reporter: mike@saxonica.com
        QA Contact: public-qt-comments@w3.org

A user of maps in XSLT 3.0 (David Rudel) asks whether we couldn't apply
function conversion rules to the map content. For example

<xsl:variable name="x" as="map(xs:string, xs:string)"
  select="map{@name : @value}"/>

(Note: XSLT, unlike XQuery, uses the function conversion rules for variables as
well as functions.)

This currently gives a type error: although @name is atomized to a string,
because the required type is atomic, the attribute @value is not atomized.

It seems consistent with other parts of the language to do this, and it doesn't
seem excessively difficult (convert the map to a new map by recursively
applying the function conversion rules to all the keys and values). There are a
few edge cases, such as conversion of the key values leading to duplicates.

The main reason this wasn't done in XSLT 3.0 was to minimize changes to the
XPath spec. Either that, or it was overlooked.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Friday, 28 March 2014 11:47:43 UTC