xCBL中的ISO 8601日期时间是否应包含破折号?

7
似乎xCBL文档和ISO 8601标准在日期时间格式方面存在差异。

http://www.xcbl.org/xcbl30/SOX/structureref/xCBLref.htm#datetime

datetime:日期和时间的组合。请注意日期和时间部分之间存在“T”字符,并使用冒号分隔小时、分钟和秒。这符合ISO 8601标准。 格式:YYYYMMDDTHH:MM:SS[[+-]HH:MM]?(第一个MM是月份,其他两个是分钟)

http://www.w3.org/TR/NOTE-datetime

以下是格式要求。必须准确地包含这些组件,以及完全相同的标点符号。请注意,“T”字面上出现在字符串中,表示时间元素的开始,如ISO 8601所指定的。完整的日期加上小时、分钟、秒和小数部分。 YYYY-MM-DDThh:mm:ss.sTZD(例如1997-07-16T19:20:30.45+01:00)

http://en.wikipedia.org/wiki/ISO_8601

按照ISO 8601表达的日期和时间:联合日期和UTC时间:2014-06-10T13:52:43+00:00

正如您在上面的链接中所看到的,xCBL标准描述了ISO8601日期格式没有连字符,而维基百科和w3都用连字符进行描述。

有人对此有最终定论吗?我正在开发一个应用程序,该API请求使用“xCBL标准”的ISO 8601日期时间格式,但由于定义方式的不同而遇到冲突。

1个回答

9
我无法查看标准文件,但是维基百科明确指出格式如YYYYMMDDTHH: MM: SS [[+ -] HH:MM]不是有效的ISO日期格式。如果有人能够访问该标准并确认或在评论中更正我的答案以及维基百科文章,我将非常高兴。
换句话说,维基百科文章指出:“一个时间点可以通过连接完整的日期表达式、字母T作为分隔符和一个有效的时间表达式来表示。/…/ 可以使用基本格式或扩展格式,但日期和时间必须使用相同的格式。”(粗体格式由我添加)。这意味着例如2014-12-05T09:53:48和20141205T095348是有效的,但是2014-12-05T095348和20141205T09:53:48则不是。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接