From 4fb24ff7c6477a78cddc5a2c08feae5b369d2a4f Mon Sep 17 00:00:00 2001 From: btangmu Date: Tue, 25 Nov 2025 13:07:54 -0500 Subject: [PATCH 1/3] CLDR-18963 Allow numberSystem attribute for currency element -Revise ldml.dtd to allow numberSystem attribute for currency element -Delete the (disabled) check for numberSystem in CheckNumbers.java --- common/dtd/ldml.dtd | 2 ++ .../org/unicode/cldr/test/CheckNumbers.java | 22 +------------------ 2 files changed, 3 insertions(+), 21 deletions(-) diff --git a/common/dtd/ldml.dtd b/common/dtd/ldml.dtd index d4eda048abd..8c622965f91 100644 --- a/common/dtd/ldml.dtd +++ b/common/dtd/ldml.dtd @@ -2502,6 +2502,8 @@ CLDR data files are interpreted according to the LDML specification (http://unic + + diff --git a/tools/cldr-code/src/main/java/org/unicode/cldr/test/CheckNumbers.java b/tools/cldr-code/src/main/java/org/unicode/cldr/test/CheckNumbers.java index c25dbb66730..5c528d7091b 100644 --- a/tools/cldr-code/src/main/java/org/unicode/cldr/test/CheckNumbers.java +++ b/tools/cldr-code/src/main/java/org/unicode/cldr/test/CheckNumbers.java @@ -237,21 +237,6 @@ public CheckCLDR handleCheck( } } - // Check that symbols are for an explicit number system; - // note that symbols are skipped for checks after this point. - if (path.indexOf("/symbols") >= 0) { - XPathParts symbolParts = XPathParts.getFrozenInstance(path); - if (symbolParts.getAttributeValue(2, "numberSystem") == null) { - result.add( - new CheckStatus() - .setCause(this) - .setMainType(CheckStatus.errorType) - .setSubtype(Subtype.missingNumberingSystem) - .setMessage( - "Symbols must have an explicit numberSystem attribute.")); - } - } - // quick bail from all other cases (including symbols) NumericType type = NumericType.getNumericType(path); if (type == NumericType.NOT_NUMERIC || type == NumericType.RATIONAL) { @@ -259,12 +244,8 @@ public CheckCLDR handleCheck( } XPathParts parts = XPathParts.getFrozenInstance(path); - // TODO: re-enable this commented-out check - // Reference: https://unicode-org.atlassian.net/browse/CLDR-18722 - /* // Check that number formats are for an explicit number system. - String numberSystem = parts.getAttributeValue(2, "numberSystem"); - if (numberSystem == null) { + if (!parts.containsAttribute("numberSystem")) { result.add( new CheckStatus() .setCause(this) @@ -273,7 +254,6 @@ public CheckCLDR handleCheck( .setMessage( "Number formats must have an explicit numberSystem attribute.")); } - */ // Do tests that need to split the values From d67ac2c32be90fe9d0f44fb090d9bc0c0d818907 Mon Sep 17 00:00:00 2001 From: btangmu Date: Tue, 25 Nov 2025 13:56:05 -0500 Subject: [PATCH 2/3] CLDR-18963 Allow numberSystem attribute for currency element -Move numberSystem after draft --- common/dtd/ldml.dtd | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/common/dtd/ldml.dtd b/common/dtd/ldml.dtd index 8c622965f91..f34d56ee176 100644 --- a/common/dtd/ldml.dtd +++ b/common/dtd/ldml.dtd @@ -2502,11 +2502,11 @@ CLDR data files are interpreted according to the LDML specification (http://unic - - + + From 5ad4713b3dbd8e0d588161c470245d3c271ffd4e Mon Sep 17 00:00:00 2001 From: btangmu Date: Tue, 25 Nov 2025 14:06:04 -0500 Subject: [PATCH 3/3] CLDR-18963 Allow numberSystem attribute for currency element -Move numberSystem after references and validSubLocales --- common/dtd/ldml.dtd | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/common/dtd/ldml.dtd b/common/dtd/ldml.dtd index f34d56ee176..b1f33e47388 100644 --- a/common/dtd/ldml.dtd +++ b/common/dtd/ldml.dtd @@ -2505,13 +2505,13 @@ CLDR data files are interpreted according to the LDML specification (http://unic - - + +