Project

Profile

Help

Bug #1957

Incorrect default priority for patterns with predicates

Added by Michael Kay almost 3 years ago. Updated almost 3 years ago.

Status:
Closed
Priority:
Low
Assignee:
Category:
XSLT conformance
Sprint/Milestone:
-
Start date:
2013-12-14
Due date:
% Done:

100%

Legacy ID:
Applies to branch:
Fix Committed on Branch:
Fixed in Maintenance Release:
Found in version:
9.5
Fixed in version:
9.5.1.4

Description

A pattern such as *[x = 2] is being allocated a default priority of 0, rather than the correct value of 0.5. More specifically, the priority is that of the "base pattern" (here "*") plus 0.5.

(The incorrect code is attempting to implement a rule in the July 2012 draft of XSLT 3.0: "If the pattern (in its entirety) is a TypePattern with a non-empty PredicateList, then the priority is that of the ItemType in the absence of the PredicateList, as given above, plus 0.5. "), but it is being applied too widely. And in any case, this rule no longer exists in the Dec 2013 draft.)

History

#1 Updated by Michael Kay almost 3 years ago

  • Description updated (diff)
  • Category set to XSLT conformance
  • Status changed from New to In Progress
  • Assignee set to Michael Kay
  • Found in version set to 9.5

#2 Updated by Michael Kay almost 3 years ago

  • Status changed from In Progress to Resolved

Patch committed to PatternWithPredicate.java for 9.5. The problem was already fixed in the 9.6 branch as a result of unrelated changes.

#3 Updated by O'Neil Delpratt almost 3 years ago

  • Status changed from Resolved to Closed
  • % Done changed from 0 to 100
  • Fixed in version set to 9.5.1.4

Bug fix applied in Saxon maintenance release 9.5.1.4

Also available in: Atom PDF