在此示例中,“新”形容词可以而且应该转换为绝对日期,但这并不能解决一般问题,因为这并非总是可行的。
在语义上,形容词总是代表一元关系,不同于动词,动词可以是一元(“Bob runs.”)、二元(“Bob runs to Alice.”)或更多(“Bob runs to Alice with Trudy.”)。这在英语中令人困惑,因为在句法上,形容词有时以一元形式使用(“新车”),但有时以二元形式使用(“汽车是新的。”)。在其他语言中,例如俄语,情况并非如此,您只需说“新车”。 (当然是翻译的)。
现在,从数学上讲,一元关系可以看作是一个集合,反之亦然。因此,正如@reto-gmür 所说,最合适的RDF 形式是“NewThing”类的成员资格,因为类是个体的集合。由于 RDF 使用二元关系,我们需要(有时在英语中)辅助关系“a”。
然而,虽然集合和一元关系在数学上可以看作是等价的,甚至还有第三种等价形式,即 [0,1] 的函数,但重点有所不同。
因此,在某些情况下,使用具有如下布尔范围的属性可能更合适:
:BobsCar :isNew "true"^^xsd:boolean.
或
:BobsCar :newness "true"^^xsd:boolean.
(两个属性名称都有些尴尬)。但是,除了使用 RDF Data Cube 词汇表对统计数据进行建模时,我并没有经常看到最后一种建模变体。
我认为这最后一种建模方式对实例数据的用处不大,而对本体的用处更大,因为您可以定义:
:newness rdfs:domain :Car; rdfs:range xsd:boolean.
而
:Car rdfs:subClassOf [owl:unionOf (:NewThings :OldThings)].
需要 OWL 并且更复杂,因此我希望它较少受到推理者的支持。尽管如此,在我看来,类成员资格看起来更优雅,并且符合 RDF 哲学,所以我建议在大多数情况下这样做。