From a97a5310f921a483d0d11a98cd18185890bcccbc Mon Sep 17 00:00:00 2001 From: Eike Rathke Date: Thu, 1 Dec 2011 23:00:07 +0100 Subject: we are W3C XMLSchema here, not ISO 8601 --- sax/qa/cppunit/test_converter.cxx | 8 +++----- sax/source/tools/converter.cxx | 7 +------ 2 files changed, 4 insertions(+), 11 deletions(-) (limited to 'sax') diff --git a/sax/qa/cppunit/test_converter.cxx b/sax/qa/cppunit/test_converter.cxx index 17d1303e901c..64bbf2918d69 100644 --- a/sax/qa/cppunit/test_converter.cxx +++ b/sax/qa/cppunit/test_converter.cxx @@ -215,13 +215,11 @@ void ConverterTest::testDateTime() doTest( util::DateTime(0, 0, 0, 24, 1, 1, 333) /*(0, 0, 0, 0, 2, 1, 333)*/, "0333-01-01T24:00:00"/*, "0333-01-02T00:00:00"*/ ); - // A leading ^+ is NOT invalid, ISO 8601 specifies this for explicit AD/CE. - doTest( util::DateTime(0, 0, 0, 0, 1, 1, 1), - "+0001-01-01T00:00:00", "0001-01-01T00:00:00" ); - // While ISO 8601 specifies a minimum of 4 year digits we are lenient in - // what we accept. + // While W3C XMLSchema specifies a minimum of 4 year digits we are lenient + // in what we accept. doTest( util::DateTime(0, 0, 0, 0, 1, 1, 1), "1-01-01T00:00:00", "0001-01-01T00:00:00" ); + doTestDateTimeF( "+0001-01-01T00:00:00" ); // invalid: ^+ doTestDateTimeF( "0001-1-01T00:00:00" ); // invalid: < 2 M doTestDateTimeF( "0001-01-1T00:00:00" ); // invalid: < 2 D doTestDateTimeF( "0001-01-01T0:00:00" ); // invalid: < 2 H diff --git a/sax/source/tools/converter.cxx b/sax/source/tools/converter.cxx index 0c0779bac959..f2dea8a9a1a3 100644 --- a/sax/source/tools/converter.cxx +++ b/sax/source/tools/converter.cxx @@ -1352,16 +1352,11 @@ bool Converter::convertDateOrDateTime( //Negative Number ++nPos; } - else if (sal_Unicode('+') == string[nPos]) - { - //Positive Number, explicit AD/CE - ++nPos; - } } sal_Int32 nYear(0); { - // While ISO 8601 specifies years with a minimum of 4 digits, be + // While W3C XMLSchema specifies years with a minimum of 4 digits, be // leninent in what we accept for years < 1000. One digit is acceptable // if the remainders match. bSuccess = readDateTimeComponent(string, nPos, nYear, 1, false); -- cgit