dblp中有个标签叫"crossref"。它代表一种链接关系,具体表现为"一篇paper属于哪个journal/conf,或者说通过crossref标签内的值可以找到它对应的journal/conf"。
在inproceedings和article中,有的地方有"crossref"标签,而有的地方却没有!why?我试图来回答这个问题。
在此之前,key值的含义没有完全挖掘,只是把它当作一条记录的唯一标识符。曾经看到一篇文章,说key也不唯一,其实这个说法不妥。dblp中如果以一个大标签如article、incollection作为一条记录,则key值确实重复了。why?在dblp中同样一个key值,mdate值必定不一样!这说明dblp源文件中将修改的历史记录也保存下来了。所以,真正使用该数据源时应当先去掉重复记录!实验证实,去掉之后,文件大小几乎是原来的一半。
1、article(可能有crossref)。key值类似于"journals/ac/KandelS89",注意这个key的构成。从key中可以看出,第二部分"ac",是对应journal的缩写!
2、inproceedings(可能有crossref)。key的构成较复杂一点,有两种形"journals/cagd/ClarenzDDRR04"和"conf/icde/ChawatheGW96"。这说明这种文章会出现在两种不同的形式。一种是journal中,另一种是conference中。
3、proceedings。key的构成也有两种形式"journals/corr/cs-SE-0309027"和"conf/b/1998"。我认为,dblp中将proceedings分为了两种,一种是journal,一种是conference。这个key将作为它们的唯一标识符。换句话说,proceedings将被这两个类代替。另外,以journal为例,按时间会分成几类如journal 2005 和journal 2003。conference类似。
4、book。key值类似为"books/bc/FischerL1991",其中"bc",是publisher名字的缩写。
5、incollection(可能有crossref)。key值类似为"journals/lncs/AtzeniCCT93"和"books/bc/tanselCGSS93/LometS93"。前者为什么会用journal不得而知,但是如果像这样的记录中必定存在一个crossref类似于"books/sp/Atzeni93"。可以说明,incollection是book中的。
6、www。key值类似于"www/gov/nasa/beowulf"。
7、mastersthesis。key值类似于"ms/Vollmer2006"。
8、phdthesis。key值类似于"phd/Mumick91"。
article和inproceedings 里面之所以有的记录中不包含crossref,是因为key值中,journal或conference的缩写(如ac)在proceeding中不存在!也就是说这样的文章所对应的"论文集"不存在,因此就没必要设置一个crossref来建立两种的关系!
举个例子,"journals/ac/KandelS89","journals/ac"这样的journal根本不存在,即在proceedings中找不到这样的记录。
得出另一个结论,在article和inproceedings的crossref中引用的值和key值的关键部分一样!
举个例子:
<inproceedings key="conf/c5/Yamamiya03" mdate="2003-11-19">
<crossref>conf/c5/2003</crossref>
附:感谢ding的意见,以后写东西尽量有条理一点,不罗嗦。