W3C

– DRAFT –
XForms Users Community Group Teleconference

24 February 2023

Attendees

Present
Alain, Erik, Steven
Regrets
-
Chair
Steven
Scribe
Steven

Meeting minutes

Proposed fix for incorrect function signatures

https://lists.w3.org/Archives/Public/public-xformsusers/2023Feb/0006

Steven: What to do?

Erik: It depends on backwards compatibility...

… If you have a numeric result, it duplicates the signature once for each numeric type...
… so it is not a runtime type.
… I don't think XPath supprts functions that return an integer OR a NaN.

Alain: What about Unions

Erik: I didn't read it that way, but maybe I'm wrong

<ebruchez> https://www.w3.org/TR/xpath-31/#GLdt-numeric

<ebruchez> "An operator whose operands and result are designated as numeric might be thought of as representing four operators, one for each of the numeric types. For example, the numeric + operator might be thought of as representing the following four operators:"

<ebruchez> https://www.w3.org/TR/xpath-31/#mapping

Steven: We're not actually talking about operators

Erik: True

Erik: The functions and operators spec might match what we want

<ebruchez> https://www.w3.org/TR/xpath-functions-31/#numeric-types

Erik: It seems like it is less restrictive than for operators

"When the return type of a function is given as xs:numeric, the actual value returned will be an instance of one of the three member types (and perhaps also of types derived from these by restriction). The rules for the particular function will specify how the type of the result depends on the values supplied as arguments. In many cases, for the functions in this specification, the result is defined to be the same type as the first argument."

Steven: It looks like that solves our problem

Alain: Not in XPath 2 though

<ebruchez> https://www.w3.org/TR/xquery-operators/#func-numeric-add

Erik: Erik: It looks like it is suggesting four functions, one for each numeric type

"The parameters and return types for the above operators are the basic numeric types: xs:integer, xs:decimal, xs:float and xs:double, and types derived from them. The word "numeric" in function signatures signifies these four types. For simplicity, each operator is defined to operate on operands of the same type and return the same type. The exceptions are op:numeric-divide, which returns an xs:decimal if called with two xs:integer operan[CUT]

op: numeric-integer-divide which always returns an xs:integer."

Erik: Worst-case use you could return a union

Steven: and use = NaN?

<ebruchez> index('foo') instance of xs:double

Erik: Not sure, or otherwise "instance-of"

<ebruchez> or index('foo') = xs:double('NaN')

Erik: Let me try it out.
… on an XPath 2 implementation
… I can do a comparison I think

<ebruchez> 42 = xs:double('NaN')

<ebruchez> xs:double('NaN') = xs:double('NaN')

Steven: Does that mean we can use 'numeric', to mean the XPath 2 version for XPath 2, and the XPath 3 version for XPath 3?

ACTION: Erik to investigate the treatment of NaN in XPath 2 and 3

<trackbot> Created ACTION-2337 - Investigate the treatment of nan in xpath 2 and 3 [on Erik Bruchez - due 2023-03-03].

ACTION-2335: Work on creating a context attribute set [Steven]

https://lists.w3.org/Archives/Public/public-xformsusers/2023Feb/0009

Steven: Either we split Common into Common and Context, or say that @model and @context have no effect on <model/> <instance/> or <form/>

Erik: What happens if you put @value on <model/>?

Steven: Depends on whether the processor uses a schema or not. It's not mandated to disallow it

Erik: I think it's good to split Common up, and be explicit about where @context and @model are allowed

ACTION: Steve to implement the Common/Context attribute sets

<trackbot> Error finding 'Steve'. You can review and register nicknames at <https://www.w3.org/2005/06/tracker/xforms/users>.

ACTION: Steven to implement the Common/Context attribute sets

<trackbot> Created ACTION-2338 - Implement the common/context attribute sets [on Steven Pemberton - due 2023-03-03].

RESOLUTION: Split Common into Common and Context attribute sets

AOB

[None]

[ADJOURN]

Summary of action items

  1. Erik to investigate the treatment of NaN in XPath 2 and 3
  2. Steve to implement the Common/Context attribute sets
  3. Steven to implement the Common/Context attribute sets

Summary of resolutions

  1. Split Common into Common and Context attribute sets
Minutes manually created (not a transcript), formatted by scribe.perl version 210 (Wed Jan 11 19:21:32 2023 UTC).

Diagnostics

Succeeded: s/"he/"The/

Succeeded: s/CO/Co/

Succeeded: s/>m/<m/

Succeeded: s/CO/Co/

No scribenick or scribe found. Guessed: Steven

Maybe present: op

All speakers: Alain, Erik, op, Steven

Active on IRC: ebruchez, Steven