论文查收报告自动出具系统的设计与实现
2016-11-19孙发吴强
孙发 吴强
〔摘 要〕为提高图书馆论文查收业务的自动化服务水平,以SCI论文查收为例,提出对用户查收委托和查收报告出具进行业务流程集成设计与自动化实现,通过ASP.NET编程技术和多种数据处理技术,开发具有多种用户自助委托方式和查收报告自动出具功能的查收报告出具系统,最终实现了用户查收委托的高效便捷和查收报告的即时自动出具。
〔关键词〕论文查收;自动出具;SCI;系统设计
DOI:10.3969/j.issn.1008-0821.2016.04.019
〔中图分类号〕G250.74 〔文献标识码〕A 〔文章编号〕1008-0821(2016)04-0105-05
〔Abstract〕To improve the level of automation for reference retrieve services,in the case of SCI reference retrieves,integrated design and process reengineering apply in reference retrieves of commission and report generation,and reference retrieve report generation system is developed by the ASP.NET programming and some data process technologies,which has functions with self service commission and automatic generation of reference retrieve report.The system finally realized reference retrieves commission in efficient ways,and reference retrieved report automatic generation in immediate.
〔Key words〕paper reference retrieve;automatic generation;SCI;system design
在职称评定、奖项申报、成果鉴定和学位申请等活动中,相关人员所发表论文被SCI、EI等权威数据库收录情况,已成为一项重要的论文质量评价指标。论文查收报告出具工作一般由图书馆来承担,已成为它的一项重要信息服务工作[1]。近年国内科研论文产出数量质量都有大的提升,查收业务量也随之大增,以人工处理为主的传统模式已无法保质保量地完成该项任务[2]。
目前,国内图书馆在查收报告出具自动化服务方面进行了大量研究实践,出现了基于办公软件和文献管理软件的查收报告出具辅助系统和面向业务环节自动化实现的查收自动化出具系统[2-3],但在用户查收委托效率、过程数据获取的实时准确性和查收报告出具速度等方面存在不足[4-7],需要进一步加以解决。
对此,笔者以SCI论文查收为例,研究总结分析现有业务服务系统所存在的不足,提出将查收委托和查收报告出具实施业务流程集成设计及自动化实现的解决方案,通过ASP.NET编程技术和网页分析、RSS、XML、API等数据处理技术,开发具有多种用户自主查收委托方式、过程数据在线实时获取和查收报告即时自动出具等功能的查收报告出具系统,最终实现查收委托高效便捷和查收报告即时自动出具。
1 现状分析
当前查收业务处理流程如图1所示,主要存在以下问题:
(1)查收委托单是通过用户键盘输入或数据的复制粘贴操作生成的,委托单生成方式效率低,而且容易发生委托数据漏填或错填,其数据完整性和准确性难以保证;
(2)没有考虑对用户历史委托数据的重用,对于已委托过的查收论文,用户仍要重新提交[8];
(3)对待查论文进行数据库检索验证过程中,仍需要对查收委托单中存在的错误或遗漏数据进行人工校正;
(4)在对待查论文完成数据库检索验证后,仍需要对相关检索输出数据做进一步的数据整合和格式规范等人工操作,容易发生误操作;
(5)少数查收报告出具系统实现了查收报告的数据在线实时获取、数据自动整合和格式自动规范,但由于过程中间受“数据校正”操作影响,仍不能实现查收委托报告的即时自动出具。
2 系统设计
本系统设计目标是在确保查收报告数据准确和格式规范的前提下,实现用户查收委托的高效便捷和查收报告的即时自动出具;其系统设计切入点是通过查收委托与查收报告出具模块间的数据耦合,实现查收委托和查收报告出具的业务流程集成与自动化。
系统设计思路如如图2所示。
系统主要设计要点:
2.1 建立以数据库检索输出的查收委托方式取代手工模式下的查收委托方式 用户通过系统构建的数据库检索平台对委托论文进行检索,对检索结果进行二次选择和委托提交,取代手工模式下的查收委托方式,由此确保用户委托提交数据的完整性和准确性,同时避免了查收出具过程中“数据校正”操作所带来的中断影响。
2.2 建立多种用户自助委托方式,实现用户查收委托的高效与便捷 根据查收业务统计分析,系统提供“在线检索”、“机构库检索”、“历史委托单”和“历史委托论文”等四种用户自助委托方式。其中,“在线检索”集成数据库的在线检索接口,确保用户查收委托的论文查全率;“机构库检索”是根据查收业务服务对象以机构用户为主的业务特点,在构建机构发表论文数据库的基础上,为机构用户提供了一种高效的查收委托提交方式;“历史委托单”和“历史委托论文”则为用户提供了对历史委托数据的重用,支持用户在历史委托数据的基础上,结合其他用户自助委托方式,快速生成新的查收委托单。
2.3 实现查收委托到查收报告出具的数据集成和业务自动化 通过用户自助委托方式生成的委托单数据直接来源于数据库,能确保论文的数据完整和准确,利用网页分析、RSS、XML和API等数据获取与处理技术,对查收报告所需数据库其他相关数据实现在线实时自动获取,并通过软件技术实现查收报告数据整合和格式规范的自动处理,最终实现查收报告自动即时出具与打印。
3 系统实现
系统实现主要将包括用户端的用户自助委托模块和管理端的“检索更新”与“出具打印”模块;系统开发采用ASP.NET编程技术,并采用了RSS、网页分析、Web Services、XML和API等数据处理技术。
3.1 数据库表设计
数据库主要由“委托提交”、“机构库”和“委托单”等表组成。其中“委托提交”表用于存储用户自助委托的查收论文数据,为后续查收报告出具提供检索数据源;“机构库”表用于存储本机构所发表的论文数据,为“机构库检索”提供检索数据源;“委托单”表存储了用户提交的委托单数据,为用户端“历史委托单”和“历史委托论文”等提交方式提供相关数据。
“委托提交”、“机构库”表设计如表1所示,“委托单”表设计如表2所示。
3.2 用户自助委托模块
为了让系统保存用户查收委托提交数据,实现“历史委托单”和“历史委托论文”等用户查收委托提交方式,需要对用户进行注册认证,以存储用户的个人基本信息、当前查收委托和历史查收委托等数据。
用户自助委托模块主要包括“机构库检索”、“在线检索”、“历史委托论文”和“历史委托单”等4种委托提交方式。
模块业务处理流程如图3所示。
3.2.1 机构库检索
机构库存储了以本机构为论文发表单位的论文,是机构用户快速提交论文查收委托的主要方式,其委托提交效率高于“在线检索”。
机构库构建由“初始数据导入”和“后续数据新增”两部分组成。以SCI论文查收为例,“初始数据导入”是通过Web of Science网站检索输出方式手动获取,输出字段包括标题、作者、WOS、DOI和ISSN等字段,通过基本的数据处理后导入到机构库;“后续数据新增”是通过RSS订阅获取新增论文的URL,再通过网页分析技术获取标题、WOS、作者、DOI和ISSN等字段数据,以实现对新增论文的发现,并将其数据保存到机构库。
“后续数据新增”关键实现代码如下:
∥定制机构新增论文RSS订阅地址
string strurlrssupdate=
″http:∥feed2js.org∥feed2js.php?src=http%3A%2F%2Frss.webofknowledge.com%2Frss%3Fe%3D0994f16f571ded63%26c%3D6cd90d20826401ca1d56ace491124097&chan=y&desc=1&utf=y″;
∥ /网页分析
∥创建网页请求
HttpWebRequest oWebRqst=(HttpWebRequest)WebRequest.Create(strurlrssupdate);
∥获取服务器响应数据流
HttpWebResponse oWebRps=(HttpWebResponse)oWebRqst.GetResponse();
StreamReader oStreamRd=new StreamReader(oWebRps.GetResponseStream(),
Encoding.GetEncoding(″utf-8″));
∥读取响应数据转化成字符串;
String sRslt=oStreamRd.ReadToEnd();
∥通过对返回字符串的检索(IndexOf)、替换(Replace)、分割(Split)等方法解析返回数据,获取字段信息
“机构库检索”提供了标题、DOS、WOS和作者姓名等字段检索,前3个字段检索用于单篇论文的快速检索匹配,检索效率相对低;而作者姓名字段检索能返回多条记录,为了提高查全率,处理好姓名拼写顺序和缩写问题时,系统先将姓与名作字符分离处理,再依次作二次查询输出。
3.2.2 在线检索
以SCI论文查收为例,“在线检索”提供了WOS、DOI、标题和作者等字段检索,用户选择标题或作者字段检索时,除了输入标题或作者等字段内容外,还需要论文对应期刊ISSN和卷号数据,且每次检索最多只能返回一条命中记录,适用于外机构用户初次查收委托提交。
实现“在线检索”,首先需申请开通Web of Science API查询服务权限,其开放对象限于已报备IP的服务器;然后根据Web of Science提供的XML接口规范文件,编写具有Web of Science接口查询功能的Web Services服务程序,为“在线检索”和管理端“检索更新”功能模块提供Web Services查询服务。
以WOS字段检索为例,Web Services服务函数实现如下:
public XmlDocument wossearch(string wos)∥
{
xmlSCIDoc.Load(Server.MapPath(″XMLSCI.xml″));∥加载XML规范文档
strAddElement(wos); ∥自定义方法,创建添加XML节点,生成XML查询文档
string strxml=xmlJCRDoc.InnerXml;
∥发送并接收Web of Science API查询数据
Encoding encoding=Encoding.UTF8;
string strUrl=″https:∥ws.isiknowledge.com/cps/xrpc″;∥定义SCI API网址
byte[] data=encoding.GetBytes(strxml);∥生成请求数据
HttpWebRequest myRequest=(HttpWebRequest)WebRequest.Create(strUrl);∥定义请求对象
myRequest.Method =″POST″;
myRequest.ContentType=″text/xml;charset=utf-8″;
Stream newStream=myRequest.GetRequestStream();∥发送请求数据
newStream.Write(data,0,data.Length);
newStream.Close();
WebResponse response=myRequest.GetResponse();∥接受返回数据
Stream resStream=response.GetResponseStream();
System.Xml.XmlDocument doc=new System.Xml.XmlDocument();
doc.Load(resStream);∥转化成xml数据
return doc;
}
3.2.3 历史委托单与历史委托论文提交
用户登录系统后,系统通过查询委托单和提交委托等数据库,将该用户已提交的委托单、历史委托单和历史委托论文以列表形式进行显示,当用户点击委托单列表下的委托单后,系统将自动查询委托数据库,并显示该委托单包含的论文记录。
委托单有“待审核”、“待缴费”和“已完成”3种处理状态。其中,“待审核”委托单允许用户对当前委托单进行论文的新增、删除和委托单删除等操作;“待缴费”和“已完成”委托单不允许用户对委托单进行编辑操作,用户只能根据系统显示历史委托论文记录,进行委托论文的选择与提交,并生成新的“待审核”委托单。
3.2.4 用户自助委托方式的选择
用户应根据查收委托需求和用户身份,选择适合的用户自助委托方式;用户身份是指机构用户或机构外用户,根据用户论文发表机构是否属于本机构来划分。
(1)对于机构外新用户,选择“在线检索”方式;
(2)对于机构老用户,可视情况先选择“历史委托单”或“历史委托论文检索”进行提交,新增委托论文则选择“在线检索”进行补充提交;
(3)对于机构新用户,可先选择“机构库检索”进行委托论文的检索、选择与提交,再通过“在线检索”补充提交剩余委托论文;
(4)对于机构老用户,可视情况先选择“历史委托单”和“历史委托论文”进行提交,新增委托论文则通过“机构库检索”、“在线检索”进行补充提交。
3.3 管理端模块
管理端模块业务处理流程如图4所示。
3.3.1 查收委托单的列表分类显示
工作人员认证登录管理端平台后,系统查询“委托单”数据库,将 “待审核”、“待缴费”和“已完成”3种处理状态的查收委托单以列表形式分类显示。当工作人员点击“待审核”列表下的委托单,系统将显示委托单对应的用户信息和查收委托论文记录。
3.3.2 “检索更新”操作与实现
工作人员点击“检索更新”按钮,对应“检索更新”模块功能将在线实时获取查收报告所需的相关数据,并将数据保存到“委托提交”数据库中。
以SCI论文查收为例,用户提交到“委托提交”数据库中的委托论文记录只包含“标题”、“WOS”和“ISSN”等字段数据,通过“检索更新”功能模块以多线程在线实时获取查收报告所需的SCI论文其他字段数据、期刊影响因子(当年和5年平均期刊影响因子)和中科院期刊分区信息等数据,并将其保存到“委托提交”数据库中。
其中,SCI论文基本字段数据通过对论文“SCI URL”数据的网页分析来获取;期刊影响因子数据的获取分两步,首先利用Web of Science API查询服务,以ISSN数据为查询内容,获取期刊在JCR数据库中的URL,再通过网页分析方法获取当年和5年平均期刊影响因。上述涉及的网页分析技术和API查询服务实现方法见本文3.2节。中科院期刊分区信息则通过中科院在线分区平台提供的API查询服务获取,API查询服务权限通过数据商申请获得。
其实现关键代码如下:
∥以论文对应的期刊ISSN为查询数据
string strurl=
@″http:∥www.fenqubiao.com/getjournal.ashx?Username=wzykdx&Password=wzykdxfqb&Year=″+zkyfqtime+″&HostIP=授权服务器IP&ISSN=″+dt1.Rows[j][″issn″].ToString()+″″;
∥读取html网页数据返回字符串,并根据html网页特定的数据分隔格式,利用Replace、Split、Substring等字符串处理方法对字符串数据处理,提取期刊分区数据。
sRslt=GetHttpData(strurl);
经实例测试,“检索更新”在数据获取处理性能达到5秒/篇,满足查收报告即时自动出具打印的性能要求。
3.3.3 “缴费”操作与实现
“检索更新”完成后,工作人员点击“缴费”功能按钮,“缴费”功能模块根据查收收费标准自动生成委托单缴费单,并以系统自动发送短信方式提醒用户下载打印缴费单及缴费操作,同时系统将委托单的“待处理”状态变更为“待缴费”状态。
3.3.4 “出具打印”操作与实现
当用户完成委托单缴费后,工作人员在“待缴费”列表下点击该用户委托单,并点击“出具打印”功能按钮。“出具打印”功能模块根据用户查收委托单查询“委托提交”数据库,并将返回的查收报告数据以查收报告格式规范的形式在线自动生成查收报告,并调用操作系统打印功能完成查收报告的打印。查收报告出具打印后,“代缴费”状态变更为“已完成”状态。
4 结 语
通过查收委托和查收出具的业务流程一体化设计,实现了用户自助委托、查收数据自动更新和报告自动出具等功能的查收报告自动化出具平台,在保证查收报告数据准确的前提下,完成了查收委托和查收出具的业务流程集成与自动化,最终达成了用户查收委托的高效便捷和查收报告的即时自动出具。目前系统已在温州医科大学进行了试运行,取得了预期应用效果。
系统以SCI论文查收为例,给出了论文查收报告自动化出具系统的设计与实现方案,在下一步工作中,将系统查收论文数据库范围扩展到其他常用数据库,并在系统并发处理性能、系统业务管理分析和系统易用性方面进行进一步的优化,以提高系统的应用效果。
参考文献
[1]周美华.网络环境下的查收查引服务调研[J].图书馆工作与研究,2011,190(12):106-109.
[2]李晓东,卢振波.论文查收查引工具软件的设计与实现[J].大学图书馆学报,2005,23(1):49-50,62.
[3]樊亚芳,陈锴.利用Excel和EndNote Web提高论文查收查引工作效率[J].图书馆杂志,2013,(1):32-34,60.
[4]孔云,资芸,杨婷,等.论文收录证明辅助系统的设计与应用[J].数字图书馆论坛,2013,(9):56-61.
[5]王学勤,郝丹,郑菲,等.“查收查引报告自动生成系统”应用实践研究[J].图书情报工作,2014,58(16):131-137.
[6]梁红妮,袁芳.查收查引服务的规范化与质量控制——基于网络环境的调查与分析[J].新世纪图书馆,2015,(9):34-37.
[7]侯瑞芳,陈嘉勇,周婕.查收查引服务优化体系的构建与思考[J].图书馆建设,2015,(4):75-79.
[8]马芳珍.查收查引系统需求分析和设计要点探讨[J].大学图书馆学报,2015,(4):80-84,121.
(本文责任编辑:郭沫含)