是否可以用 ISO 8601 表示开放式时间间隔?

dan*_*nvk 4 iso8601

ISO 8601 包括几种表示时间间隔的方法

  • 开始/结束
  • 开始/持续时间
  • 持续时间/结束
  • 期间

例如,1990/1999是一个包括所有 1990 年代的区间。

但是如果我有一个开放的日期范围,例如“1970 年之前”或“1900 年之后”怎么办?这些可以用 ISO 8601 表示吗?

Men*_*ild 5

与当前状态相关的简短回答:

不,这取决于您如何解释间隔的结束标记。

实际有效的 ISO-8601 版本对开区间边界或闭区间边界保持沉默。其包含示例的附录根本没有提到无限间隔。没有关于如何表达像文本这样的无限边界的说法。

我自己在用 Java 编写的库中模拟了这样的边界,但是,这显然是 ISO-8601 的扩展而不是当前功能。

ISO-8601 的未来版本:

一个新的版本会来。例如,第二部分草案在其第 4.4 节中建议了不同的表示,如“../2018-05-14”,其中双点将被解释为开放(=缺失)开始。

所以在未来,是的,你可能可以表达无限区间边界,但我仍然想念任何关于开放与封闭边界的词(开放=独占,封闭=包含)。

另一个问题是是否有任何接收器能够处理此类表示。您可能需要等待相当长的时间。