rdf:value和rdfs:label的差别

在BIBFRAME 2.0的样例中,通用属性rdf:value或rdfs:label出现频率很高。原因有二:
其一,BF2把大量属性变成了类,因此很多时候表示某种值时,没有属性可用,需要先断言所属类、再取值(如bf:Issn) ;
其二,很多属性定义为对象属性(对应于数据类型属性),即期望值为资源(对应于文字),不能直接用字符串(如bf:title)。
如管理元数据的一个例子(片断):
<http://bibframe.example.org/item/instanceX>
a bf:Instance ;
bf:title [rdfs:label “Medical history” ] ;
bf:identifiedBy [
a bf:Issn ;
rdf:value “2168-7633” ;
…… ] .

至于什么时候用rdf:value、什么时候用rdfs:labe,初看时面对众多不同样例,很感困惑。看BIBFRAME 2.0 RDF Conventions,第8点正是这两个属性的规定,但说了等于没说:
8) rdfs: and rdf: Properties
Use rdf:value and rdfs:label as appropriate when supplying the value of a resource.
后来根据样例揣摩,感觉可以借用编目术语来理解,rdfs:label类似转录,照录被描述资源本身的信息;而rdf:value则是规范形式,取自取值词表或规范档或某个已有的清单(比如ISBN号)。

最近有人在BIBFRAME邮件组中提出类似问题:什么时候用rdf:value?与rdfs:label的差别何在?并提及RDF Schema 1.1,于是再去看了W3C的定义:
RDF Schema 1.1 (W3C Recommendation 25 February 2014)
3.6 rdfs:label(用于提供资源名称的人读版本)
rdfs:label is an instance of rdf:Property that may be used to provide a human-readable version of a resource’s name.
5.4.3 rdf:value(用于描述结构化的值)
rdf:value is an instance of rdf:Property that may be used in describing structured values.

Ray Denenberg提供的官方解释是:从BIBFRAME视角,rdf:value提供机器可处理的内容,rdfs:label的内容用于显示。同时承认“可能有一二种情况不完全符合这个区分(如所举bf:AccessPolicy的rdf:value “unrestricted”多半应该代之以rdfs:label ),但通常规则如此。”可见rdf:value还是rdfs:label,还是有些不定性——不过我觉得此例并无问题,“获取政策”多半从若干种取值中选择(公开、限制等)而不是任意文字描述。
虽然仍有人对分别用rdf:value和rdfs:label持异义,但DPLA的Tom Johnson支持这种区分,指出:标签命名资源,而值则在某种程度上是表达“资源是什么”

对于rdf:value定义中的“结构化的”值,有人提出这是指其值有数据类型,而BIBFRAME例中并没有规定数据类型。Denenberg的回应是,BIBFRAME中rdf:value取值确实是有类型的,即默认为文字或字符串(误用rdfs:literal,Tom Johnson纠正当为xsd:string)。