Skip to content

"age" filter for "list-unicodeset" utility does not work correctly for values >= 10 #54

@srl295

Description

@srl295

@srutzky wrote:

(I originally posted this in JIRA as CLDR-14700 but was told that this was a more appropriate forum for reporting this type of problem)

This concerns the Unicode Utilities: UnicodeSet utility, located at:
https://util.unicode.org/UnicodeJsps/list-unicodeset.jsp

Filtering on the "age" property does not work correctly. The issue started a few years ago, after version 10.0 was released (and this utility was updated for that version). Versions starting at 10.0 do not behave correctly, and are somehow "linked" (for lack of a better term) to version 1.1. The examples below should illustrate the issue.

 

Correct, but only when "=1.1"

https://util.unicode.org/UnicodeJsps/list-unicodeset.jsp?a=%5B%3AAge%3D1.1%3A%5D&g=age&i=

[:Age=1.1:]
33,977 Code Points

 

A value of "=10.0" or higher returns 1.1 and version 10.0 through the specified version

But, not versions 2.0 through 9.0 (which should be returned). For example, specifying version 12.0 will return versions:

  • 1.1
  • 10.0
  • 11.0
  • 12.0

https://util.unicode.org/UnicodeJsps/list-unicodeset.jsp?a=%5B%3AAge%3D12.0%3A%5D&g=age&i=

[:Age=12.0:]
43,733 Code Points

 

A value of "=2.0" through "=9.0" returns 1.1 through the specified version and versions 10.0 and higher

(versions 10.0 and higher should not be returned). For example, specifying version 3.1 will return versions:

  • 1.1
  • 2.0
  • 2.1
  • 3.0
  • 3.1
  • 10.0
  • 11.0
  • 12.0

https://util.unicode.org/UnicodeJsps/list-unicodeset.jsp?a=%5B%3AAge%3D3.1%3A%5D&g=age&i=

[:Age=3.1:]
243,477 Code Points

 

A value of "=10.0" or higher and "!=1.1" returns version 10.0 through the specified version

But, not versions 2.0 through 9.0 (which should be returned). For example, specifying version 11.0 and !1.1 will return versions:

  • 10.0
  • 11.0

https://util.unicode.org/UnicodeJsps/list-unicodeset.jsp?a=%5B%3AAge%3D11.0%3A%5D+%26+%5B%3AAge%21%3D1.1%3A%5D&g=age&i=

[:Age=11.0:] & [:Age!=1.1:]
9,202 Code Points

 

A value of "=10.0" or higher and "!=2.0" through "!=9.0" returns nothing / empty-set

(one version higher than the specified "!=" version through specified "=" version should be returned). For example, specifying version 11.0 and !2.0 will return versions:

  • (none / nada / zip / zilch )
  • (however, versions 2.1 through 11.0 should be returned)
  • (specifying version 9.0 and !2.0 does return the correct results)

https://util.unicode.org/UnicodeJsps/list-unicodeset.jsp?a=%5B%3AAge%3D11.0%3A%5D+%26+%5B%3AAge%21%3D2.0%3A%5D&g=age&i=

[:Age=11.0:] & [:Age!=2.0:]
0 Code Points

https://util.unicode.org/UnicodeJsps/list-unicodeset.jsp?a=%5B%3AAge%3D9.0%3A%5D+%26+%5B%3AAge%21%3D2.0%3A%5D&g=age&i=

[:Age=9.0:] & [:Age!=2.0:]
89,287 Code Points

Metadata

Metadata

Labels

JSPUnicodeJspsbugSomething isn't workingutilfor the https://util.unicode.org website

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions