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

What about XPath dependency: 2.0 vs 3.0 #86

Closed
Tpt opened this issue May 27, 2023 · 3 comments
Closed

What about XPath dependency: 2.0 vs 3.0 #86

Tpt opened this issue May 27, 2023 · 3 comments

Comments

@Tpt
Copy link
Contributor

Tpt commented May 27, 2023

Currently the specification text refers to XPath 2.0 in its text but links to the latest version (3.1). We should fix that and either explicitely link to 2.0 or make the decision to upgrade the specification to 3.0.

I believe the major difference between XPath 2 and 3 impacting SPARQL is the introduction by XPath 3 of an "implicit timezone" such that calendar values with and without timezone are now compatible together using this implicit timezone.

Following this change in SPARQL 1.2 is I believe ok (it only makes expressions that were returning and error pass and this kind of change is explicitely allowed as backward compatible by SPARQL) but it's a signficiant change.

@Tpt Tpt changed the title What about XPath dependency 2.0 vs 3.0 What about XPath dependency: 2.0 vs 3.0 May 27, 2023
@afs
Copy link
Contributor

afs commented May 28, 2023

It's good to have this issue. Somewhere, we need to add text about the issue.

The use of implicit timezone is part of XQuery 1.0 and XPath 2.0 Functions and Operators (2007) as well.

In the RDF context, where data is on the web and can be drawn from multiple sources, there isn't a natural timezone, nor will it be the same as the request origin. Even a single data source, data collected over time, is affected because of DST.

For SPARQL, it is useful for sorting because it gives a total order.

For comparisons, the implicit timezone is less useful. RDF Concepts refers to XML Schema 1.1. The indeterminate comparison order at least does not give false information. I don't see much use of xsd:dateTimeStamp.

We could choose to say that there is no implicit timezone by default for comparison (i.e. XML Schema rules) and suggest its use for ordering. Maybe also say implementations MAY (RFC 2119) provide an implicit timezone with certain consequences.

We'd need text about this and it is shame not to be able to just refer to F&O but overall I think it's worth it.

If instead we choose to have a timezone, there ought to be only one. +00:00 (c.f. cloud provide server clocks.) for same answers everywhere.

Another XML Schema 1.0 - XML Scheme 1.1 change is that year 0 represents 1 BCE in 1.1 :: https://www.w3.org/TR/xmlschema11-2/#dateTime-value-space

@Tpt
Copy link
Contributor Author

Tpt commented Jul 26, 2023

I believe we can close this issue. We upgrade references to XPath 3.1 in #89

@afs
Copy link
Contributor

afs commented Jul 27, 2023

#88 records the need to document the change that year 0 represents 1 BCE in 1.1.

I've created issue #116 about the implicit timezone. (We may decide to do nothing but it is better to know that is the case, rather than adopt it as a effect of using F&O 3.0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants