Pubmed文献的检索与自动格式化
2014-03-26王红剑高爱英
■王红剑 高爱英
1)中华医学会杂志社,东四西大街42号 100710,E-mail:spiderking@cma.org.cn
2)人民军医出版社,复兴路22号甲3号 100842,E-mail:gaoay@sohu.com
医学领域经常需要检索PUBMED数据库文献,如果作者逐条通过 “http://www.ncbi.nlm.nih.gov/pubmed/”网站检索PUBMED数据库非常费时;由于网页展现的文献格式与期刊文献著录格式大不相同,作者通常需要按照著录格式分别提取文题、期刊等信息。当论文编校时,编辑又要依照文献格式分别核对不同信息。每篇论文的文献,作者与编校人员都要耗费大量的时间精力,由于文献编校时全部为人工处理,因此不能保证其正确性。国内不少作者使用Endnote等软件进行文献检索,此软件功能强大,国内也有汉化和绿色版本(图1)。笔者在使用时发现,如果仅仅检索PUBMED文献时,此软件则使用颇为不便,检索后的文献按字段显示,需要逐元素按参考文献格式书写。鉴于以上原因,笔者按照中华医学会系列杂志的文献著录格式编写了“红剑检索”程序,并且将此程序上传至“中华医学网 http://www.medline.org.cn”。 当作者与编辑共同利用此程序时,可以保证检索到的文献的准确性,节省了大量的人力物力[1-4]。
1 PUBMED数据库文献概述
1.1 PUBMED网站文献概述
PubMed是美国国家医学图书馆(NLM)所属的国家生物技术信息中心(NCBI)基于WEB的生物医学信息检索系统。医学领域作者撰写论文时一般会到其网站上检索参考文献,每一条文献检索后显示的方式都基本相同(图2)。第一部分为期刊信息,例如“J Am Chem Soc,2008 Mar 19,130(11):3645-51.”,其后为文题“Synthesis of dihydropyridines and pyridines from imines and alkynes via C-H activation”,第三部分是作者“Colby DA,Bergman RG,Ellman JA.”,随后则是 Source及Abstract信息。
仔细分析这几部分显示信息,笔者发现,虽然国内期刊文献著录所需 “作者”、“文题”、“期刊”元素都可以查到,但是撰写文献时会遇到2个问题。首先是元素顺序问题,国内文献著录是严格按照“作者、文题、期刊”这3段书写,显然网页所提供的顺序与著录格式完全不同;其次是元素详尽程度不同,例如期刊元素一般著录只需要“卷”,而“期”一般可以省略。
1.2 PUBMED网站文献源代码分析
为了详尽的了解网页文献的信息,笔者利用UltraEdit软件以文本方式打开了一篇参考文献(图3)。由于是HTML格式文件,因此文件中文献“内容”与文献“格式”混合在一起。例如我们可以查找到文题信息“ArticleTile:The……”,期刊信息“Citation:JAm Chem Soc 2008……”,文件中同样混合了“imageStrip()bj.minWith=410”等格式说明。
如果要利用VB等程序处理这些杂乱的内容将会极为困难,首先要分离网页的“内容”与“格式”,其次才能再加工文献“内容”。经过简单的算法尝试,这几乎是不可能完成的任务。由于HTML本身的局限性,通行的数据存储与传输都会采用更为先进的XML格式。果然,经过详尽的网站搜索,笔者发现了PUBMED提供了相同文献的XML显示(图3)。
图1 汉化版Endnote检索参考文献
图2 常规网页显示PUBMED文献
图3 网页源代码显示文献
1.3 PUBMED网站文献XM L格式规范
相对于HTML的无序,XML格式下的文献非常规范。例如“<Id>18302381</Id>”,显示了文献的PMID号,<Item Name=”AuthorList” Type=”List”></Item>……这部分则是以“属性”的方式列出了“作者群”、“作者”信息。虽然PUBMED中的XML文件对于不同元素采用了成员及属性的不同方法,但是这些内容都可被程序处理(图4)。
图4 XM L格式中作者及PM ID等标记
笔者考虑如果利用XML现有的工具软件或者插件处理XML文件可能将十分容易,但是对于操作系统和软件要求可能会较高,同时会降低软件易用性。经过比较,笔者最终使用最为简单的 VB(Visiual Basic 6.0)编制软件。软件命名为“红剑检索”,经过数年的修定,最新版本为Ver2.1。
2 文献检索软件编制
2.1 “红剑检索”软件中字段定义
首先定义一系列的程序变量,例如“a、b、c、d……”等,利于后期的程序运行,其次按照著录格式字段定义全部的字符串变量。变量名称“Id”、“Pubdate”、“Source”……全部按照 PUBMED网站XML元素值定义,对应于参考文献所需字段则分别列出说明“PMID号”、“出版日”、“出版源”……,由于XML大小写敏感,因此定义变量时严格大小写字母(图5)。
2.2 “红剑检索”软件中字段操作
当定义好不同字段,即可以按照这些字段到检索到的XML文件中检索相应的元素值。从XML的成员显示中,笔者利用VB的字符串处理函数“InStr”、“Right”、“Len”得到变量“Title”值,此值即是参考文献中的字段元素“文题”。同理,笔者依次得到文献的“年”、“卷”、“页”等不同字段值(图6)。
图5 VB程序设计中的字段定义
图6 VB程序设计中字段的操作
2.3 “红剑检索”软件中文献生成
取得参考文献的不同元素值后,则可按照文献格式进行整合。笔者按照中华医学会系列杂志的著录规范依次输出以上变量:“作者.文题.期刊名称,年,卷,起页-止页.”。由于是程序输出,因此文献的格式化也同时完成。不仅文献输出的内容、顺序这2个前文提到的问题得以解决,同时文献中最不易发现而且格式化中颇为头痛的标点符号问题也完美解决。一般作者与编辑在输入文献的标点时不易区别标点中的全角“,”与半角“,”,而且无论中英文文献,都不可以用句号“。”而必须用半角的“.”。笔者在程序在字符串连接时严格定义了全半角标点,因此不会产生此类错误,因为他们的ASCII码完全不同。
3 文献检索软件使用
3.1 浏览XM L源文件
“红剑检索”软件提供了XML源文件的浏览功能,当使用者点击标签“PUBMED浏览”时,下面的文本框会显示出XML格式文献(图7)。由于是纯文本显示,因此这些内容可以被复制粘贴,也可以再做后期的处理,这也为后期的再开发留下了必要的接口。
图7 红剑检索程序浏览文献源文件
3.2 获取PM ID与DOI
获取PMID与DOI是“红剑检索”软件的核心功能之一,当使用者不能提供PMID或者DOI这些数据库惟一标识时,只能借助“模糊检索”取得惟一标识。根据笔者多年PUBMED手工检索经验,一般给出“姓名 年 卷 起页”基本可以惟一确定到单条文献,因此软件给出了检索的范例文本“James nd 2006 9 221”。
如果编辑在日常工作中遇到错误的元素信息,例如常见的姓名缩写,期刊的卷与期的混淆,那么可以变换输入的信息再进行“模糊检索”。此时,输入文题中的文本再加上出版年、起页信息后单击软件中的“模糊检索”一般也可以搜索到相应文献(图8)。经过上面的步骤后,软件将得到一个准确的PMID号,例如“24192778”,如果文献已经被DOI标注,则 DOI号 也 会 显 示,例 如 “10.1039/c3cc47560c”。
3.3 文献自动格式化及输出
当我们利用模糊检索得到PMID或者DOI号后,文献便可以惟一的确定。当我们在软件的PMID文本框中输入“18302399”,再点击“精确检索”命令后便可以得到正确的参考文献“Vintonyak VV,Maier ME.Formal total synthesis of neopeltolide.Org Lett, 2008, 10:1239-1242.”(图9)。
图8 红剑检索程序中模糊检索
图9 利用PM ID或DOI检索及格式化
虽然DOI是应用更为广泛的惟一标识,并且无论是否为PUBMED文献,都可以使用DOI进行检索,但是如果只是检索PUBMED文献,笔者更倾向使用PMID号进行检索。由于DOI一般是数字与字母的组合,不容易录入,而PMID通常是7到8位的数字,方便输入;另外并非所有的PUBMED文献都拥有DOI号,这取决于各期刊原始文献是否申请了DOI号,而且还可能会有时滞问题,但是每一篇PUBMED一定拥有PMID号。
如上所述,模糊检索取得PMID号,其后再利用PMID或者DOI号进行检索是一个完整的解决方案,但是如果直接利用PMID号进行准确的文献检索和输出是一个最为简单高效的过程。编辑实践中,笔者在稿件退修时便要求作者提供每一条英文文献的PMID号,这样编辑再校对文献时便可以直接精确检索和输出文献,节省了大量的时间。如果软件大规模推广,编辑与作者能共同使用,那么即使不再进行英文文献的校对,也可以保证文献的准确性。
4 小结
“红剑检索”这款单文件绿色软件简单实用,其中2.1版本上传至中华医学会杂志社的官网“中华医学网http://www.medline.org.cn”,笔者及同事经过数年使用,取得较好的效果。如果编辑及作者全面使用此软件,那么PUBMED文献的检索与著录问题将会基本解决。由于国内的中文医学文献分布在万方、同方等不同数据库中,并且这些数据库未提供开放的数据格式标准,因此笔者无法编写相应的中文文献检索程序。在编辑实践中,英文文献可以保证其准确性,但是国内文献,甚至即使是中华医学会自身的文献也无法自动检索与格式化,这也从一个侧面反映出国内数字出版的不足。只有当中文文献也能同PUBMED文献一样做到论文数据碎片化标识,并且遵循国际通用的数据存储与传输标准,论文的文献检索才可以保证准确与高效。
1 高爱英,王红剑.利用Word实现自动更正批量处理.中国科技期刊研究,2013,24(6):1148-1150
2 沈锡宾,顾恬,吕小东.国外一基于XML的科技期刊出版工作流个案剖析.中国科技期刊研究,2011,22(4):581-583
3 高爱英,王红剑.利用Word程序实现彩图位置的优化.编辑学报,2010,22(2):167-169
4 王红剑,高爱英,游苏宁.利用WORD进行自动编校.中国科技期刊研究,2009,20(3):502-503