我用一些 xsd:duration 数据类型制作了一个 OWL 本体。然后我使用 Thea 将其转换为 prolog 事实。
我有以下 xsd:duration 结构PnYnMnDTnHnMnS。如何编写序言规则来比较两个持续时间,以确定哪一个更大?
当我从我的 prolog 事实中检索数据时,它具有以下形式:
literal(type('http://www.w3.org/2001/XMLSchema#duration', Value))
我设法使用以下方法提取价值:
extractDuration(Literal, Result):-arg(1,Literal,Out1),arg(2,Out1,Result).
这导致(例如):
'P5D', 'PT10H', or 'P3DT15H32M'
仍然不知道如何比较它们。