Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

520: add function identity and use it in deep-equal #525

Merged
merged 1 commit into from May 30, 2023

Conversation

michaelhkay
Copy link
Contributor

I believe this PR resolves issues

issue #520 - function identity
issue #333 - equality of function items
issue #381 - deep-equal comparison without errors

The PR introduces a concept of function identity in the data model, and for all expressions that create functions, explains what the identity of the returned function is.

The concept of function identity is used initially in two places: in fn:deep-equal(), when the operands include function items; and in the F+O prose defining the concept of determinism, which in turn is relied on by the definition of memo functions in XSLT.

I had hoped to go further and address issue #119, generalising what kinds of values are allowed as keys in maps, but as explained in a comment on that issue, I hit obstacles.

@ndw
Copy link
Contributor

ndw commented May 30, 2023

Accepted at meeting 036

@ndw ndw merged commit c3475bc into qt4cg:master May 30, 2023
2 checks passed
@michaelhkay michaelhkay added XDM An issue related to the XPath Data Model Completed PR has been applied, tests written and tagged, no further action needed labels Apr 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Completed PR has been applied, tests written and tagged, no further action needed XDM An issue related to the XPath Data Model
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants