当我阅读RDF Data Cube Vocabulary文档时,有一件事让我感到困惑:(MeasureProperties
在下面的示例中,我eg:lifeExpectancy
首先将它们定义为属性。但是,在定义数据结构时,它们被用作对象。这是否允许?请参阅以下示例直接取自规范文件。
因此,首先将MeasureProperty
自身定义为rdf:property
. 请参阅以下示例eg:lifeExpectancy
:
eg:lifeExpectancy a rdf:Property, qb:MeasureProperty;
rdfs:label "life expectancy"@en;
rdfs:subPropertyOf sdmx-measure:obsValue;
rdfs:range xsd:decimal .
稍后,这MeasureProperty
用于定义数据结构:
eg:dsd-le a qb:DataStructureDefinition;
# The dimensions
[...]
# The measure(s)
qb:component [ qb:measure eg:lifeExpectancy];
# The attributes
[...]
如您所见eg:lifeExpectancy
,此处用作对象,这是不允许的,因为它是属性?!还是我想错了?
后来,当实际表达观察时,eg:lifeExpectancy
是我们作为一个属性:
eg:o1 a qb:Observation;
qb:dataSet eg:dataset-le1 ;
eg:refArea ex-geo:newport_00pr ;
sdmx-dimension:sex sdmx-code:sex-M ;
sdmx-attribute:unitMeasure <http://dbpedia.org/resource/Year> ;
eg:lifeExpectancy 76.7 ;
.
怎么可能/允许eg:lifeExpectancy
用作对象,就像上面所做的那样qb:DataStructureDefinition
?