@qt4cg statuses
This page displays recent status updates about the QT4CG project.
The are also captured in an RSS feed.
By year: 2025, 2024, 2023, 2022, 2021, 2020
Issue #2179 closed #closed-2179
Namespace declarations in XPath
Issue #2181 closed #closed-2181
2179 Add namespace declarations to XPath grammar
Issue #2178 closed #closed-2178
XQuery predeclared namespaces
Issue #2182 closed #closed-2182
2178 Define predeclared namespaces for XQuery
Issue #2187 closed #closed-2187
Coercion to enum()
Issue #2188 closed #closed-2188
2187 Add coercion rule for enumeration types
Issue #2163 closed #closed-2163
Method calls: `?>` or` =?>`
Issue #2171 closed #closed-2171
2163 Change ?> symbol to =?>
Issue #670 closed #closed-670
The trouble with XPath’s fn:fold-right. A fix and Proposal for fn:fold-lazy
Issue #1868 closed #closed-1868
array:members() to include index position
Issue #1912 closed #closed-1912
Error handling: `fn:throw`
Issue #2034 closed #closed-2034
fn:parse-xml, fn:doc: `safe` option
Issue #2161 closed #closed-2161
Drop other non-ASCII operators (×, ÷)
Issue #576 closed #closed-576
JSON serialization: INF/NaN, function items
Issue #158 closed #closed-158
Support optional parameters on dynamic functions
Issue #105 closed #closed-105
Maps with Infinite Number of Keys: Total Maps and Decorated maps
Issue #2173 closed #closed-2173
Incorrect Cardinality on MethodAnnotation reference
Issue #2174 closed #closed-2174
2173 Drop method annotations from XPath grammar
Issue #2194 created #created-2194
fn:transform sandbox=yes option
I propose an option sandbox=yes for fn:transform, with the effect that the executed stylesheet has no means of accessing or updating external information other than via the fn:transform parameters and result value.
This is to provide an effective and portable way of executing untrusted code.
There are various ways one might specify it: the simplest would be just to state the intent (as in the sentence above) and leave implementations to work out the detail.
An API might also allow transformations to be executed in a sandbox, but that of course is outside our control.
Issue #2193 created #created-2193
fn:parse-xml, fn:doc: Drop security options
Related: #2034, #1270.
I propose to drop the allow-external-entities
and entity-expansion-limit
options. They reflect only some of various existing limits that XML parsers provide.
Instead, it seems more reasonable to define such limits globally. It remains to be shown whether we find an implementation-oblivious approach for this.
Issue #2192 closed #closed-2192
Upgrade build system to use Saxon 12.9
Pull request #2192 created #created-2192
Upgrade build system to use Saxon 12.9
I skimmed all the specs and nothing looks wrong; I'm going to go ahead and merge this but please report any problems you find that you think might be related.,
Pull request #2191 created #created-2191
2075 Editorial Omnibus
Fix #2075
Issue #2190 created #created-2190
parse-csv() from binary: what encoding?
We have extended parse-csv()
-- and introduced csv-doc()
-- with the ability to read binary input. But we don't provide any way to specify an encoding, and we give no rules for inferring an encoding if none is specified.
Pull request #2189 created #created-2189
2180 Clarify paths mixing XNodes and JNodes
Fix #2180
Pull request #2188 created #created-2188
2187 Add coercion rule for enumeration types
Fix #2187
Issue #2187 created #created-2187
Coercion to enum()
XQuery §3.2.6 states:
By contrast, xs:untypedAtomic("red") instance of enum("red", "green", "blue") returns false; but the [coercion rules] ensure that where a variable or function declaration specifies an enumeration type as the required type, an xs:untypedAtomic or xs:anyURI value equal to one of the enumerated values will be accepted.
However, looking at the coercion rules, this appears not to be the case.
It seems intuitive that an untypedAtomic value should match an enumeration type (otherwise if the required type is enum("yes", "no")
, supplying an attribute whose value is "yes" will fail). And since we generally treat string, untypedAtomic, and anyURI as a single family for equality comparison, it makes sense to accept anyURI as well.
Test case DynamicFunctionCall-136 applies.
Issue #2186 created #created-2186
Adaptive serialization of JNodes
I would like to propose a change here so that instead of only outputting the content
property of the JNode, we also output the selector
property (if present).
Issue #2185 created #created-2185
Request for an `fn:xproc` function
I would like to see consideration given to adding an fn:xproc
function please. We have an fn:invisible-xml
, so why not an fn:xproc
?
I think a potential function signature could look like:
fn:xproc($xproc as document-node(element(p:declare-step), $options as map(xs:string, item()+))
as map(xs:string, item()*)`
Map keys/values for $options
could be something like:
- "input": Map { "name": "some-name", Map { "type": "some-type", "value": item()* }}
- "option": Map {"name": "some-name", Map { "type": "some-type", "value": item()* }}
Implementers are free to add additional key/value options to the $options
map.
The result of the transformation is returned as a map. There is one entry in the map for the default output port, and one for each secondary output port. The key is an xs:string value. The key for the default output port is the string "default" otherwise. The key for secondary output ports, is the name of the port.
Issue #2183 closed #closed-2183
Formatting of specref and xspecref
See 4467 more statuses in yearly archives.