gpt4 book ai didi

datetime - 从<开始日期>/<持续时间> XBRL-JSON格式提取elasticsearch日期

转载 作者:行者123 更新时间:2023-12-03 01:55:28 24 4
gpt4 key购买 nike

我正在使用Elasticsearch存储XBRL JSON。

This xBRL-JSON OIM spec描述了oim:period属性:

Otherwise, an ISO 8601 time interval representing the {interval} property, expressed in one of the following forms:

<start>/<end>

<start>/<duration>

<duration>/<end>

Where <start> and <end> are valid according to the xsd:dateTime datatype, and <duration> is valid according to xsd:duration.



arelle's plugin的示例如下所示:
  • 2016-01-01T00:00:00 / PT0S
  • 2015-01-01T00:00:00 / P1Y

  • 我注意到arelle的插件专门产生这种格式:
  • <开始> / <持续时间>

  • 我的问题

    是否有办法在Elasticsearch中至少将<start>部分保存为日期类型?

    我的想法:

    仅 Elasticsearch (我的偏好)
  • 使用自定义日期格式,该格式预期/<duration>部分,但忽略它
  • 我还没有检查Joda;如果它们不是特殊字符的一部分,是否会忽略日期格式的字符?像在任何持续时间值之前的“/”定界符还是“P”(例如上面的PT0SP1Y)?
  • 编辑因此,单引号字符转义了文字;此作品yyyy'/P'将接受值'2015 / P'。但是,剩余的时间可能更动态
  • 回复:动态; Joda会接受正则表达式或通配符,例如“\ d”或“+”限定符,因此我可以忽略P之后的所有可能的变体吗?
  • 在仅将/<duration>保存为日期时间之前,使用字符过滤器去除<start>部分。但是我不知道在保存为日期之前是否进行过字符过滤。如果不这样做,则不会剥离'/`部分,并且我也不会传递有效的日期字符串。
  • 不要使用日期类型:使用模式标记生成器分割/,至少这两部分将另存为单独的标记。但是,无法使用日期数学。
  • 使用转换;尽管似乎已弃用。我读过有关使用copy_to的信息,但这似乎是结合了术语,并且我想打破这个术语,将
  • 某种插件吗?也许一个插件将完全支持OIM规范描述的这种“间隔”数据类型……也许一个将存储其单独部分的插件...?

  • 更改我的应用程序(如果可能,我更喜欢使用仅使用Elasticsearch的技术)
  • 我可以编辑此插件或生成自己的插件,该插件专门使用<start><end>部分,并将二者分别保存到单独的字段中;
  • 但这违反了OIM规范,该规范要求将它们合并在单个字段
  • 此外,表达“即时”事实可能很尴尬(没有持续时间;上面的PT0S示例);我想我只是对end属性使用了与start属性相同的值...我猜比0长度的持续时间(PT0S)更为尴尬。
  • 最佳答案

    这不是一个直接的答案,但值得注意的是,xBRL-JSON规范的最新内部草稿已脱离单字段表示形式。尽管用“/”分隔的符号是ISO标准,但对其的工具支持似乎非常差,因此工作组选择切换到开始日期和结束日期的单独字段。我希望Arelle支持会在适当的时候效仿。

    关于datetime - 从<开始日期>/<持续时间> XBRL-JSON格式提取elasticsearch日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36969346/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com