信息处理系统、信息处理装置、用于处理信息的方法和信息处理程序与流程

文档序号:15072192发布日期:2018-08-01 00:04阅读:185来源:国知局

本发明涉及信息处理系统、图像处理装置、用于处理信息的方法和信息处理程序。



背景技术:

近年来,通过云计算等提供各种外部服务。例如,已知一种外部服务,其中由用户指定的电子数据存储在外部存储器等中。

此外,已知一种基于预定的办公流(clericalflow)模型(例如专利文献1)来生成用于控制执行各种处理的组件的办公流的技术。在该技术中,组件由所生成的办公流进行组合,并且实现办公处理的一系列处理被执行。

引文列表

专利文献

[专利文献1]日本专利号5112085



技术实现要素:

考虑以上提供本发明的实施例,本发明的目的在于执行通过对组件进行组合而形成的一系列处理。

问题的解决方案

根据本发明的一方面,提供了一种信息处理系统,该信息处理系统包括至少一个信息处理装置,其中安装多个程序以分别执行预定处理从而实现:存储单元,其用于针对使用电子数据执行系列处理的每个应用来存储如下信息,程序识别信息,其识别执行系列处理的多个程序之中的至少一个程序,参数,其用于执行来自至少一个程序中的每个程序,以及流信息,其至少一个程序的执行顺序同时将用于识别应用的应用识别信息与程序识别信息、参数以及流信息进行关联;获取单元,其用于响应于从耦接到信息处理系统的至少一个装置中的一个装置接收到与电子数据有关的信息和包括应用识别信息的请求,获取与该请求中所包括的应用识别信息相关联地存储在存储单元中的流信息;以及执行单元,其用于使得通过获取单元所获取的流信息中限定的程序识别信息识别出的至少一个程序中的每个程序,根据流信息定义的执行顺序,使用流信息中限定的参数来执行,从而根据与请求中所包括的电子数据有关的信息,使用电子数据来执行系列处理,在用于执行程序所使用的参数中包括的数据项的数据值被指定替换为另一数据值的情况下,执行单元将该数据值替换为另一数据值。

附图说明

[图1]图1是示出第一实施例的示例信息处理系统的系统结构的示意图。

[图2]图2是示出第一实施例的示例服务提供系统的硬件结构的示意图。

[图3]图3是第一实施例的装置的示例硬件结构的示意图。

[图4]图4是示出根据第一实施例的示例信息处理系统的功能结构的示意图。

[图5a]图5a示出示例共用接口(i/f)和唯一接口。

[图5b]图5b示出示例共用接口和唯一接口。

[图5c]图5c示出示例共用接口和唯一接口。

[图5d]图5d示出示例共用接口和唯一接口。

[图6]图6是第一实施例的示例逻辑处理单元的处理框图。

[图7]图7示出示例类型转换信息表。

[图8]图8示出示例处理流信息。

[图9]图9是第一实施例的服务使用的示例总体过程的时序图。

[图10]图10示出从服务视图屏幕到服务屏幕的示例屏幕过渡。

[图11]图11是第一实施例的处理流的示例执行过程的时序图。

[图12a]图12a示出示例资源管理信息。

[图12b]图12b示出示例资源管理信息。

[图13a]图13a示出示例参数。

[图13b]图13b示出示例参数。

[图14]图14示出添加故障信息的情况下的示例资源管理信息。

[图15]图15是第二实施例的示例逻辑处理单元的处理框图。

[图16]图16是第二实施例的处理流的示例执行过程的时序图。

[图17]图17示出其他的示例处理流信息。

[图18a]图18a示出其他的示例资源管理信息。

[图18b]图18b示出其他的示例资源管理信息。

[图19a]图19a示出其他的示例参数。

[图19b]图19b示出其他的示例参数。

具体实施方式

此后,参考附图详细描述本发明的实施例。

第一实施例

<系统结构>

参考图1,描述第一实施例的信息处理系统1。图1是示出第一实施例的信息处理系统1的示例系统结构的示意图。

图1所示的信息处理系统1包括通过诸如互联网的广域网n1进行可通信耦接的服务提供系统10、装置20和外部存储系统30。

服务提供系统10通过至少一个信息处理装置来实现,并且提供由一系列处理实体化的各种服务,其通过网络n1与诸如云服务的外部服务进行合作。

稍后具体描述第一实施例的服务提供系统10所提供的服务。此后,将系列处理称为“处理流”。

虽然第一实施例中描述的外部服务具体是云服务,但是外部服务不限于该云服务。例如,第一实施例可以适用于各种外部服务,诸如通过网络提供的网络服务以及由应用服务供应商(asp)所提供的服务。

装置20是用户使用的各种电子装置。换言之,装置20例如是图像形成装置,诸如多功能外围设备(mfp)、个人计算机(pc)、投影仪、电子白板、数码相机等。用户使用装置20来使用由服务提供系统10提供的各种服务。

此后,当区分多个装置20中的每个时,则添加后缀,诸如“装置201”和“装置202”。

外部存储系统30是提供被称为存储服务或在线n1的云服务的计算机系统。存储服务是出借外部存储系统30的存储器的存储区域的服务。

此后,当区分多个外部存储系统30中的每个时,则添加后缀,诸如“外部存储系统301”和“外部存储系统302”。此外,由外部存储系统301提供的存储设备的名称是“存储器a”,由外部存储系统301提供的存储设备的名称是“存储器b”。

外部存储系统30可以是通过多个信息处理装置实现的系统。

图1所示的信息处理系统1的结构是一个示例,并且可以是另一结构。例如,第一实施例的信息处理系统1包括各种装置,每个装置执行电子数据的输入和输出中的至少一个。这些装置可以使用由服务提供系统10提供的各种服务。

<硬件结构>

参考图2,下面描述第一实施例的信息处理系统1中包括的服务提供系统10的硬件结构。图2是示出第一实施例的示例服务提供系统10的硬件结构的示意图。

图2中所示的服务提供系统10包括输入设备11、显示设备12、外部接口(i/f)、以及随机存取存储器(ram)14。此外,服务提供系统10包括只读存储器(rom)15、中央处理器(cpu)16、通信接口(i/f)17、以及硬盘驱动器(hdd)18。rom15、cpu16、通信接口17以及hdd18中的每个通过总线b进行连接。

输入设备11包括用户输入各种操作信号所通过的键盘、鼠标、触摸面板等。显示设备12包括显示器等以显示由服务提供系统10获取的处理结果。输入设备11和显示设备12中的至少一个可以处于连接到服务提供系统10从而被使用的模式。

通信接口17是被提供以将服务提供系统10与网络n1进行耦接的接口。因此,服务提供系统10能够通过通信接口17与另一装置进行通信。

hdd18是存储程序和数据的非易失性存储设备。hdd18中存储的程序和数据是作为控制整个服务提供系统10的基本软件的操作系统(os)、提供os中各种功能的应用软件等。

服务提供系统10可以使用驱动设备(例如,固态驱动器(ssd)),该驱动设备使用闪速存储器作为存储介质来代替hdd18。此外,hdd18使用预定文件系统和预定数据库(db)中的至少一个来管理所存储的程序和所存储的数据。

外部接口13作为与外部装置的接口。外部装置包括记录介质13a等。由此,服务提供系统10能够通过外部接口13,从记录介质13a读取信息并且将信息写入记录介质13a。记录介质13a是软盘、cd、dvd、sd存储卡、usb存储器等。

rom15是即使在关闭电源时也能够存储程序或数据的非易失性半导体存储器。rom15存储诸如启动服务提供系统10时执行的基本输入/输出系统(bios)、操作系统(os)设置、网络设置等程序和数据。ram14是用于暂时存储该程序和该数据的易失性半导体存储器。

cpu16从诸如rom15和hdd18的存储设备读取程序和/或数据。读取的程序或者读取的数据经历一个处理,从而实体化整个服务提供系统的功能或者控制。

该实施例的服务提供系统10通过具有图2中所示的服务提供系统10的上述硬件结构能够实体化下面所述的各种处理。

参考图3,下面描述图像形成装置的硬件结构,该图像形成装置是本实施例的信息处理系统1中包括的装置20。图3是示出第一实施例的示例装置20的硬件结构的示意图。

图3中所示的装置20包括控制器21、操作面板22、外部接口(i/f)23、通信接口24、打印机25、以及扫描仪26。控制器21包括中央处理器(cpu)31、随机存取存储器(ram)32、只读存储器(rom)33、非易失性随机存取存储器(nvram)34、以及硬盘驱动器(hdd)35。

rom33是存储各种程序和数据的非易失性存储设备。ram32是用于暂时存储程序和数据的易失性半导体存储器。例如,设置信息等存储在nvram34中。hdd35是存储各种程序和数据的非易失性存储设备。

cpu31将程序、数据、设置信息等从rom33、nvram34、hdd35等读取到ram32中,并且执行处理。因此,cpu是将整个装置20的控制和功能进行实体化的计算设备。

操作面板22包括用于从用户接收输入的输入单元,以及用于显示的显示单元。外部接口23与外部装置的接口。外部装置的示例包括记录介质23a等。由此,装置20能够执行以下中的至少一个:通过外部接口23从记录介质23a读取信息和通过外部接口23将信息写入记录介质23a。记录介质23a例如是ic卡、软盘、光盘(cd)、数字多功能光盘(dvd)、安全数字(sd)存储卡、以及通用串行总线(usb)存储器。

通信接口24是将装置20与网络进行耦接的接口。因此,该装置20能够通过通信接口24执行数据通信。打印机25被提供以打印数据。扫描仪26是读取原稿并且生成电子文件(图像文件)的读取设备。

第一实施例的服务提供系统20包括图3中所示的硬件结构以将下面所述的各种处理实体化。

<服务提供系统提供的服务>

稍后描述由第一实施例的服务提供系统10提供的服务。此后,针对装置20是图像形成装置的情况进行描述。

第一实施例的服务提供系统10将装置20通过扫描原稿所生成的电子文件存储在外部存储系统30中,并且发送邮件,该邮件描述指示存储目的地的存储目的地统一资源定位符(url),从而提供服务。

针对提供上述服务(此后,称之为“扫描递送服务”)的情况来描述第一实施例的服务提供系统10。

然而,服务提供系统10提供的服务不限于扫描递送服务。例如,第一实施例的服务提供系统10可以提供如下服务:在装置20中通过扫描原稿所生成的电子文件经过光学字符识别(ocr)处理并且被存储在外部存储系统30中。例如,服务提供系统10可以提供由装置20来打印存储在外部存储系统30中的电子文件的服务。

<功能结构>

参考图4,描述第一实施例的信息处理系统1的功能结构。图4是示出第一实施例的信息处理系统1的示例功能结构的示意图。

装置20包括ui控制单元210和扫描处理单元220。当安装在装置20中的一个或多个程序使得cpu31执行处理时,ui控制单元210和扫描处理单元220被实体化。

ui控制单元210使得操作面板22显示各种屏幕。此外,ui控制单元210接收用户在操作面板22所显示的各种屏幕上的各种操作。

扫描处理单元220响应由用户输入并且由ui控制单元210接收的操作,然后使用扫描仪26扫描原稿以生成电子文件。

服务提供系统10包括服务处理单元110、文档服务单元150以及外部存储协同单元160。当cpu16执行在服务提供系统10中安装的一个或多个程序时,服务处理单元110、文档服务单元150以及外部存储协同单元160实现。

此外,服务提供系统10包括应用(app)信息存储单元180和资源管理信息存储单元190。应用信息存储单元180和资源管理信息存储单元190可以通过使用hdd18来实现。应用信息存储单元180和资源管理信息存储单元190中的至少一个可以通过使用存储设备来实现,该存储设备通过网络耦接到服务提供系统10。

服务处理单元110响应于来自装置20的请求,执行与(下面描述的)应用信息1000提供的各种服务有关的处理。服务处理单元110包括应用管理单元120、逻辑处理单元130以及数据接口单元140。

应用管理单元120管理存储在应用信息存储单元180中的应用信息1000。例如,应用管理单元120响应于来自装置20的ui控制单元210的请求,返回在应用信息1000中包括的屏幕定义信息1100。屏幕定义信息1100是用于显示服务屏幕的信息,服务屏幕是用于使用由应用信息1000提供的服务的屏幕。

此外,应用管理单元120响应于来自逻辑处理单元130的请求,返回包括在应用信息1000中的处理流信息1200。处理流信息1200是用于将应用信息1000提供的服务(例如,扫描递送服务)实体化的一系列处理(处理流)有关的信息。

逻辑处理单元130响应于来自装置20的ui控制单元210的请求,通过应用管理单元120获取包括在应用信息1000中的处理流信息1200。逻辑处理单元130请求文档服务单元150、外部存储协同单元160的文件处理单元171等根据获取到的处理流信息1200来执行处理,因此系列处理根据处理流信息1200被执行。

此时,逻辑处理单元130使用在资源管理信息存储单元190中存储的资源管理信息190d来管理用于系列处理所使用的参数、系列处理的处理结果等。

逻辑处理单元130通过将下面描述的组件进行组合,根据处理流信息1200来执行系列处理。

由此,应用信息1000所提供的各种服务通过第一实施例的服务提供系统10实体化。随后详细描述逻辑处理单元130。

数据接口单元140响应于从装置20的ui控制单元210接收到的请求,向外部存储协同单元160的数据处理单元172发送各种请求(例如,获取文件夹视图的文件夹视图获取请求)。

文档服务单元150是执行各种处理的程序群组(模块群组)。响应于来自逻辑处理单元130的请求,这些程序由(下面描述的)组件来执行。

文档服务单元150包括“邮件的发送”151,其中制作邮件并且所制作的邮件被发送到指定的目的地。

文档服务单元150可以包括各种程序,诸如对于电子文件执行ocr处理的程序,以及将电子文件转换为装置20能够打印的打印数据的程序。

外部存储协同单元160响应于从逻辑处理单元130或数据接口单元140接收的请求,请求外部存储系统30执行各种处理(例如,获取文件夹视图的文件夹视图获取请求)。

第一实施例的服务提供系统10包括多个外部存储协同单元160,这些外部存储协同单元160分别对应于与服务提供系统10相协同地进行处理的外部存储系统30。换言之,第一实施例的服务提供系统10包括设置为向外部存储系统301发送各种请求的外部存储协同单元1601。类似地,第一实施例的服务提供系统10包括设置为向外部存储系统302发送各种请求的外部存储协同单元1601。

此后,当区分多个外部存储协同单元160时,通过添加后缀来指定单独的单元,诸如“外部存储协同单元1601”和“外部存储协同单元1602”。

外部存储协同单元1601包括用于从逻辑处理单元130接收请求的文件处理单元1711,以及用于从数据接口单元140接收请求的数据处理单元1721。

文件处理单元1711包括共用接口17111和唯一接口17121,其中定义用于对外部存储系统30中存储的电子文件执行文件操作(例如,获取、存储以及编辑)的应用编程接口(api)。

共用接口17111是与例如图5a中所示api相同的在多个外部存储系统30之中共同使用的api。换言之,文件处理单元1711的共用接口17111是用于使用能够被所有外部存储系统30使用的文件操作有关的功能(例如,文件获取和文件存储)的api群组。

唯一接口17121是与例如图5b中所示的api相同的由特定外部存储系统30使用的api。换言之,文件处理单元1711的唯一接口17121是用于使用由特定外部存储系统30提供的文件操作有关的功能(例如,文件到文档的添加)的api群组。

因此,针对所有的外部存储协同单元160相似地定义共用接口17111。另一方面,针对与特定外部存储系统30对应的外部存储协同单元160定义唯一接口1712,在该特定外部存储系统30中能够使用通过唯一接口17121定义的api。

另一方面,数据处理单元1721包括共用接口17211和唯一接口17221,其中定义api,该aip用于获取外部存储系统30中存储的电子文件的目录信息的元数据(例如,文件视图和文件夹视图)。

共用接口17211是与例如图5c中所示的api相同的在多个外部存储系统30之中共用的api。换言之,数据处理单元1721的共用接口17211是用于使用能够被所有的外部存储系统30使用的元数据获取有关的功能(例如,文件视图获取和文件夹视图获取)的api群组。

唯一接口17221是能够被特定外部存储系统30使用的api,例如图5d中所示的api。换言之,数据处理单元1721的唯一接口17221是用于使用与元数据的获取有关并且由特定外部存储系统30来提供的功能(例如,图像文件视图的获取)的多个api的api群组。

因此,针对所有的外部存储协同单元160相似地定义共用接口17211。另一方面,针对与特定外部存储系统30对应的外部存储协同单元160定义唯一接口1712,在该特定外部存储系统30中能够使用通过唯一接口17221定义的api。

如所述,第一实施例的服务提供系统10包括多个外部存储协同单元160,这些外部存储协同单元160分别对应于与服务提供系统10协同进行处理的多个外部存储系统30。因此,在作为协同目的地的外部存储系统30被添加或删除(此后,称之为“添加等”)的情况下,与外部存储系统30对应的外部存储协同单元160可以经历到服务提供系统10的添加等。

因此,在第一实施例的服务提供系统10中,作为协同目的地的外部存储系统30的添加等所引起的影响可以局域化。换言之,在第一实施例的服务提供系统10中,能够在不影响其他功能单元(即,服务处理单元110、文档服务单元150等)的情况下完成作为协同目的地的外部存储系统30的添加等。在此,可以使用软件开发套件(sdk)用于外部存储协同单元160的添加等。

此外,在外部存储协同单元160的文件处理单元1711中,共用接口17111和唯一接口17121被定义为不同的模块等。此外,通过指定唯一识别外部存储系统30的“外部存储器名称”能够使用由共用接口17111和唯一接口17121定义的接口。

由此,在添加外部存储协同单元160的情况下,能够重复使用在其他外部存储协同单元160的文件处理单元1711中定义的共用接口17111。换言之,在添加外部存储协同单元160的情况下,对于待添加的外部存储协同单元160的文件处理单元1711只开发唯一接口17121就足够。类似地,待添加的外部存储协同单元160的数据处理单元1712只开发唯一接口17121就足够,而不开发共用接口17211。

应用信息存储单元180存储与应用对应的应用信息1000,该应用与外部存储系统30协同提供各种服务。应用信息1000包括:屏幕定义信息1100,其用于使得装置20显示服务屏幕;以及处理流信息1200,其是用于实体化该服务的系列处理(处理流)有关的信息。随后详细描述处理流信息1200。

应用信息1000与用于唯一识别该应用信息1000的应用id相关联。例如,应用id“app001”与使用装置20的扫描功能的应用信息1000相关联。类似地,例如应用id“app002”与使用装置20的打印功能的应用信息1000相关联。

因此,用于将第一实施例的“扫描递送”服务实体化的处理流信息1200包括在与应用id“app001对应的应用信息1000中。而且,应用信息1000可以包括多组处理流信息1200。

资源管理信息存储单元190存储用于根据处理流信息的系列处理所使用的参数,或者存储管理系列处理中每个处理的处理结果的资源管理信息190d。随后详细描述资源管理信息190d。

参考图6,描述逻辑处理单元130的详细功能结构。图6是示出第一实施例的示例逻辑处理单元130的功能结构的示意图。

逻辑处理单元130包括流执行单元131、组件管理单元132、组件群组133、类型转换管理单元134、类型转换群组135、资源管理单元136以及参数评价单元137。此外,逻辑处理单元130使用类型转换信息表2000。

流执行单元131响应于来自装置20的ui控制单元210的请求,通过应用管理单元120获取应用信息1000中包括的处理流信息1200。接着,流执行单元131请求组件根据获取到的处理流信息1200来执行处理,从而执行根据处理流信息1200的系列处理。

在此,组件例如是用于根据处理流信息1200来执行系列处理(处理流)中包括的一个处理的模块。因此,根据处理流信息1200的系列处理通过将处理进行组合来实体化,其中的每个处理由至少一个组件执行。组件通过由类、数学函数等来定义。

在流执行单元131获取处理流信息1200之后,流执行单元131通过资源管理单元136,将根据处理流信息执行的系列处理所使用的参数等作为资源管理信息190d存储在资源管理信息存储单元190中。

在此,参数是输入到执行系列处理中所包括的各种处理的组件的各种信息片段。参数包括表示数据项的关键字和表示该关键字中数据项的值的资源。

组件管理单元132响应于来自流执行单元131的请求生成组件。在此,组件的生成指的是通过例如类、数学函数等定义的组件被部署在存储器(例如,ram14)上。

组件群组133是组件的集合。组件群组133包括将电子文件存储(上传)在外部存储系统301(外部存储器a)中的递送a组件1331。组件群组133包括制作邮件并且将邮件发送到指定地址的邮件组件1332。

组件群组133可以包括:用于将电子文件递送到外部存储系统302(外部存储器)的递送b组件,以及用于向电子文件提供ocr处理的ocr组件。如所述,组件群组133中可以包括执行各种处理的各种组件。

此外,这些组件中的每个组件都包括组件共用接口1330。组件共用接口1330是针对这些组件中的每个组件共同定义的应用编程接口(api),并且包括用于生成组件的api和用于请求该组件执行处理的api。

如所述,由于每个组件具有组件共用接口(i/f)1330,所以组件的添加所引起的影响可以局域化。换言之,第一实施例的服务提供系统10能够在不影响例如流执行单元131和组件管理单元132的情况下执行添加等。

类型转换管理单元134管理数据类型的类型转换。每个组件所能够处理的数据类型是先前确定的。因此,类型转换管理单元134响应于来自组件的请求,通过参考类型转换信息报2000,生成类型转换群组135中定义的类型转换。

类型转换管理单元134请求执行所生成的类型转换的类型转换处理。由此,类型转换管理单元134执行类型转换,组件通过该类型转换能够处理请求资源。

在此,参考图7,详细描述类型转换信息表2000。图7示出示例类型转换信息表。

类型转换信息表2000中存储的类型转换信息包括转换前的数据类型、转换后的数据类型、以及待生成的类型转换。换言之,类型转换信息与待生成的类型转换相关联,该待生成的类型转换用于针对每个转换前的数据类型和转换后的数据类型将转换前的数据类型转换为转换后的数据类型。

因此,在数据被从表示流数据的数据类型“inputstream”转换为表示存储在存储器设备等中的电子文件的路径(地址)的数据类型“localfilepath”的情况下,可以生成第一类型转换。

在此,类型转换的生成指的是通过例如类等进行定义的类型转换被部署在存储器(例如,ram14)上。例如,除了上述“inputstream”和“localfilepath”之外,数据类型是表示电子文件的实体的“file”。

类型转换群组135是类型转换的集合。类型转换群组135包括将数据类型“inputstream”的数据转换为数据类型“localfilepath”的数据的第一类型转换1351。

类型转换群组135可以包括各种类型转换,诸如将数据类型为“localfilepath”的数据进行转换以得到数据类型“file”的第二类型转换。

此外,这些类型转换中的每个包括类型转换共用接口1350。类型转换共用接口1350是针对每个类型转换共同定义的api,并且包括用于生成类型转换的api和用于请求类型转换执行处理的api。

如所述,由于每个类型转换具有组件共用接口(i/f)1350,所以类型转换的添加所引起的影响可以局域化。换言之,第一实施例的服务提供系统10能够在不影响例如类型转换管理单元134等的情况下执行添加等。

资源管理单元136管理存储在资源管理信息存储单元190中的资源管理信息190d。换言之,资源管理单元136使得资源管理信息存储单元190将根据处理流信息1200的系列处理所使用的参数等存储为资源管理信息190d。

资源管理单元136响应于来自参数评价单元137的请求,返回资源管理信息存储单元190所存储的资源管理信息190d中包括的参数。

参数评价单元137评价从资源管理单元136返回的参数。参数评价单元137确定所返回的参数是否包括替换指定。替换指定是将参数中包括的关键字的资源替换为另一关键字的资源的指定。

在参数评价单元137确定返回的参数包括替换指定的情况下,参数评价单元137将返回的参数中的替换指定所提供的资源替换为对应的资源。

在此,参考图8,详细描述处理流信息1200。图8示出示例处理流信息。

图8所示的处理流信息1200是应用id“app001”的应用信息1000中包括的处理流信息1200的示例。图8所示的处理流信息1200涉及将服务(扫描递送服务)实体化的系列处理,其中原稿由装置20进行扫描以生成电子文件,所生成的电子文件存储在外部存储器a中,此后所生成的电子文件的存储目的地url通过邮件被发送。

处理流信息1200包括唯一识别识别信息1200的流识别数据(id)1201、指示处理流信息1200的名称的流名称1202、以及指示系列处理的处理内容的详细流1203。

此外,详细流1203包括:表示将电子文件存储在外部存储器a中的递送处理的处理内容1204,以及表示通过邮件发送存储目的地url的邮件处理的处理内容1205。

在处理内容124中,执行递送处理的组件的名称“递送a组件”和输入到该组件的参数被指定。在此,参数以[“key”:“resource”]格式被指定。

因此,处理内容1204中的参数被指定为表示递送目标的电子文件名称的关键字“filename”和表示该关键字的值的资源“null”(空值)。类似地,处理内容1204中的参数被指定为表示外部存储器a中的存储目的地文件夹的关键字“folder”和表示该关键字的值的资源“null”。如所述,处理内容1204中所指定的参数被输入到递送a组件1331。

在处理内容1205中,执行邮件处理的组件名称“邮件组件”和输入到该组件的参数被指定。类似地,处理内容1205中的参数被指定为表示发送邮件的源的关键字“from”和表示该关键字的值的资源“hoge@fuga.com”。类似,处理内容1205中的参数被指定为表示邮件发送源的关键字“to”和资源“null”、表示邮件的抄送(cc)指定的关键字“cc”和资源“null”、以及表示邮件的秘密抄送(bcc)指定的关键字“bcc”和资源“null”。类似地,处理内容1205中的参数被指定为表示邮件的主题线的关键字“subject”和资源“存储目的地url通知”,以及表示邮件主体的关键字“body”和资源“${递送a组件.result.fileurl}”。

在此,关键字“body”的资源“${递送a组件.result.fileurl}”是替换指定。该替换指定是指在递送a组件的处理结果(result)中关键字“body”的资源被关键字“fileurl”的资源替换。在第一实施例中,以“${[组件名称].[参数].[关键字]}”格式来指定替换指定。因此,在具有替换指定所指定的组件名称的组件的处理结果(theresult)中,进行替换指定的关键字的资源可以被所指定的关键字替换。

在第一实施例中,可以以“${[组件名称].[参数].[关键字]}”格式来指定替换指定。由此,进行替换指定的关键字的资源能够被指定组件的参数中所指定的关键字的资源替换。

如所述,处理内容1205中的指定参数被输入到邮件组件1332。此外,输入到邮件组件1332中的参数包括替换指定,通过该替换指定,另一组件(递送a组件1331)的处理结果替换该输入进入到邮件组件1332。

因此,后面的组件(邮件组件1332)能够使用先前组件(递送a组件1331)的处理结果来执行处理。另外,通过替换资源,先前组件能够使用任意关键字来输出处理结果,而不考虑后面的组件能够输入的关键字。换言之,后面的组件能够使用任意先前组件的处理结果来进行处理。

<详细处理>

下面描述第一实施例的信息处理系统1的详细处理。

接着,参考图9描述如下情况的处理:用户u使用装置20来使用服务提供系统10的应用(应用信息1000)所提供的服务。图9是第一实施例的服务使用的示例整体过程的时序图。

用户u使用装置20,执行显示操作以显示由应用信息1000提供的服务视图(步骤s901)。

在装置20的ui控制单元210接收到显示服务视图的显示操作之后,ui控制单元210向服务提供系统10的应用管理单元120发送获取服务视图的服务视图获取请求(步骤s902)。在应用管理单元120接收到服务视图获取请求之后,应用管理单元120返回服务视图屏幕信息。

服务视图屏幕信息被提供以显示由应用信息1000提供的服务视图。服务视图屏幕信息例如以html的数据格式来表示。服务视图屏幕信息包括应用信息1000的应用id,以及应用信息1000中包括的处理流信息1200的流id和流名称。

在装置20的ui控制单元210接收到服务视图屏幕信息之后,ui控制单元210使得操作面板22根据服务视图屏幕信息来显示例如图10中所示的服务视图屏幕3100(步骤s903)。图10中所示的服务视图屏幕3100包括服务名称视图3101,其中基于服务视图屏幕信息中包括的流id和流名称来显示服务名称的视图。

应用信息100中包括的处理流信息1200的流名称是图10中所示的服务视图屏幕3100中的服务名称。然而,服务名称不限于此服务名称,可以显示任意服务名称。

接着,用户u执行从服务视图屏幕3100的服务名称视图3101选择想要的服务的操作(步骤s904)。下面描述用户从服务视图屏幕3100的服务名称视图3101选择“扫描递送1”的情况。

在装置20的ui控制单元210接收到选择服务的选择操作之后,ui控制单元210向服务提供系统10的应用管理单元120发送获取服务屏幕的服务屏幕获取请求(步骤s905)。该服务屏幕获取请求包括提供用户u所选择的服务“扫描递送1”的应用信息1000a的应用id“app001”,以及将该服务实体化的处理流信息1200的流id“flow001”。

在应用管理单元120接收到获取服务屏幕的服务屏幕获取请求之后,应用管理单元120获取与服务屏幕获取请求中所包括的应用id“app001”和流id“flow001”对应的屏幕定义信息1100。

在装置20的ui控制单元210接收到屏幕定义信息1100之后,ui控制单元210向服务提供系统10的数据接口单元140发送显示信息获取请求以获取用于显示服务屏幕的显示信息(步骤s906)。

显示信息是服务屏幕上的选择栏中的每个选择要素。显示信息例如是备选文件夹的文件夹视图(文件夹名称和文件夹id的视图),这些文件夹位于外部存储器的存储目的地。此后,描述如下情况:获取显示信息的显示信息获取请求是获取文件夹视图的获取请求,其中的文件夹视图表示位于外部存储器a中的存储目的地处的备选文件夹。

针对文件夹视图的文件夹视图获取请求能够使用图5c中所示的api“/外部存储器名称/data/folders”来执行。换言之,ui控制单元210向数据接口单元140发送超文本传输协议(http)请求,例如“/存储器-a/data/folders”,从而请求获取外部存储器a的文件夹视图。

在服务提供系统10的数据接口单元140接收到针对显示信息的显示信息获取请求之后,数据接口单元140将获取请求传送到对应的外部存储器协同单元160的数据处理单元172(步骤s907)。换言之,数据接口单元140向外部存储协同单元1601的数据处理单元1721传送接收到的显示信息获取请求,该显示信息获取请求针对被接收的显示信息。

在外部存储协同单元1601的数据处理单元1721之后,输出处理单元1721向外部存储器a发送获取文件夹视图的文件夹视图获取请求,并且获取表示文件夹视图的文件夹视图信息(步骤s908)。换言之,数据处理单元1721利用共用接口17211中定义的api从外部存储器a获取文件夹视图信息。

数据处理单元1721通过数据接口单元140将文件夹视图信息返回到ui控制单元210。

在装置20的ui控制单元210接收到文件夹视图信息之后,ui控制单元210使得文件夹视图信息反映在屏幕定义信息1100中,以便例如图10中所示的服务屏幕3200显示在操作面板22上(步骤s909)。

图10中所示的服务屏幕3200是使用用户u所选择的服务名称“扫描递送1”的屏幕。图10中所示的服务屏幕3200包括文件名输入框3201、存储目的地文件夹选择框3202、目的地指定框3202、cc指定按钮3204、bcc指定按钮3205、以扫描执行按钮3206。

在服务屏幕3200中,基于在步骤s908中从外部存储器a获取的文件夹列表信息来设置存储目的地文件夹选择框3202中的选择要素。

接着,用户u将期望的文件名输入到文件名输入框3201,并且在服务屏幕3200上从存储目的地文件夹框3202选择期望的存储目的地文件夹。此外,用户u将用于报告存储目的地url的邮件地址输入到目的地指定框3203中,该存储目的地url表示外部存储器a中的存储目的地文件夹。用户u可以将邮件地址输入到cc指定按钮3204和bcc指定按钮3205。

当将原稿设置到装置20的扫描仪26时,扫描指定按钮3206被按下(步骤s910)。

此后,描述如下情况:用户在文件名输入框3201中输入文件名“file1”,并且从存储目的地文件选择框3202选择“folderb”。此外,描述如下情况:用户将邮件地址“hogehoge@fuga.com”输入到目的地指定框3203,并且没有向cc指定按钮3204和bcc指定按钮3205进行输入的情况下按下扫描执行按钮3206。

在装置20的ui控制单元210接收到扫描执行按钮3206的按下之后,ui控制单元210向扫描处理单元220发送执行扫描的扫描执行请求(s911)。

在装置20的扫描处理单元220接收到执行扫描的扫描执行请求之后,扫描处理单元220控制扫描仪26,读取已设置的原稿,并且生成电子文件(步骤s912)。扫描处理单元220向ui控制单元210返回表示扫描结束的扫描结果。

在装置20的ui控制单元210接收到扫描结果之后,ui控制单元210向服务提供系统10的逻辑处理单元130发送处理流执行请求以执行将服务“扫描递送1”实体化的处理流(步骤s913)。

该处理流执行请求包括用于提供服务“扫描递送1”的应用信息1000的应用id“app001”,以及将该服务实体化的处理流信息1200的流id“flow001”。此外,处理执行请求包括通过扫描所生成的电子文件,以及用户u在服务屏幕3200中输入的输入信息(文件名“file1”、存储目的地文件夹“folderb”、目的地邮件地址“hogehoge@fuga.com”等)。

服务提供系统10的逻辑处理单元130获取与接收到的处理流执行请求中所包括的应用id和流id对应的处理流信息1200,并且根据处理流信息1200执行系列处理(步骤s914)。然后,逻辑处理单元130向ui控制单元210返回系列处理的处理结果。

由此,第一实施例的服务提供系统10执行将服务“扫描递送1”实体化的系列处理并将该服务提供给装置20。

参考图11,描述上述步骤s914中执行处理流的详细处理流执行过程。图11是执行第一实施例的处理流的示例处理流执行过程的时序图。

在流执行单元131接收到处理流执行请求之后,流执行单元131向应用管理单元120发送获取处理流信息的处理流信息获取请求(步骤s1101)。处理流信息获取请求包括接收到的处理流执行请求中所包括的应用id“app001”和流id“flow001”。

应用管理单元120从应用信息存储单元180获取与接收到的处理流执行请求中所包括的应用id“app001”和流id“flow001”对应的处理流信息1200,并且返回该处理流信息1200。由此,图8中所示的处理流信息1200返回到流执行单元131。

接着,在流执行单元131接收到处理流信息1200之后,流执行单元131向资源管理单元136发送存储资源管理信息的资源管理信息存储请求(步骤s1102)。资源管理信息存储请求包括步骤s1101中从ui控制单元210接收到的处理流执行请求以及处理流信息1200中包括的处理内容1204和1205。

在资源管理单元136接收到存储资源管理信息的资源管理信息存储请求之后,资源管理单元136根据资源管理信息存储请求中所包括的处理流执行请求和处理内容s1204和s1205,生成例如图12a中所示的资源管理信息190d。资源管理单元136将所生成的资源管理信息190存储到资源管理信息存储单元190中(步骤s1103),并且将存储结果返回到流执行单元131中。

图12a中所示的资源管理信息190d包括执行请求191、参数192、以及处理结果193。

执行请求191是资源管理信息的存储请求中所包括的处理流执行请求。参考图12a,从ui控制单元210发送的处理流执行请求是为http格式的请求。

参数192包括递送a组件参数1921和邮件组件参数1922。

递送a组件参数1921根据处理流执行请求中包括的输入信息和处理内容1204来生成。换言之,通过将输入信息中所包括的“file1”和“folderb”分别指定为资源来生成递送a组件参数1921,其中的资源分别针对处理内容1204中参数的关键字“filename”和“folder”。

邮件组件参数1922根据处理流执行请求中包括的输入信息和处理内容1205来生成。换言之,通过将输入信息中所包括的资源“hogehoge@fuga.com”指定到处理内容1205中参数的关键字“to”来生成邮件组件参数1922。

每个组件的处理的处理结果193在执行每个组件的处理的情况下被存储。

接着,在流执行单元131接收到存储结果之后,流执行单元131根据处理流信息1200向组件管理单元132发送获取组件的组件获取请求(步骤s1104)。

换言之,流执行单元131向组件管理单元132发送包括组件名称“递送a组件”的组件获取请求,其中的组件名称“递送a组件”在处理流信息1200的详细流1203中的处理内容1204中被指定。

在组件管理单元132接收到组件获取请求之后,组件管理单元132生成与组件获取请求中所包括组件名称对应的递送a组件1331(步骤s1105)。递送组件1331通过使用生成组件共用接口1330中定义的组件的api来生成。

接着,组件管理单元132将所生成的递送a组件1331返回到流执行单元131。换言之,组件管理单元132将部署有递送a组件1331的存储器(例如,ram14)中的地址返回到流执行单元131。

在递送a组件1331被返回到流执行单元131之后,流执行单元131向参数评价单元137发送参数获取请求以获取待输入到组件的参数、(步骤s1106)。参数获取请求包括递送a组件1331的参数的关键字“filename”和“folder”。

在参数评价单元137接收到针对参数的参数获取请求之后,参数评价单元137将参数获取请求传送到资源管理单元136(步骤s1107)。

在资源管理单元136接收到针对参数的参数获取请求之后,资源管理单元136从图12a所示的资源管理信息190d的递送a组件参数1921获取与参数获取请求中所包括的关键字对应的参数(步骤s1108)。

因此,资源管理单元136获取参数,该参数包括分别与关键字“filename”和“folder”对应的“filename”:“file1”和“folder”:“folderb”。

接着,资源管理单元136将获取到的参数返回到参数评价单元137。

参数评价单元137对返回的参数进行评价(步骤s1109)。换言之,参数评价单元137确定返回的参数中所包括的“filename”:“file1”和“folder”:“folderb”是否具有替换指定。

这里,返回的参数中所包括的“filename”:“file1”和“folder”:“folderb”不具有替换指定。因此,参数评价单元137确定返回的参数不具有替换指定。

然后,参数评价单元137向流执行单元131返回从资源管理单元136返回的参数(步骤s1110)。换言之,参数评价单元137向流执行单元131返回例如图13a中所示的参数4100。

接着,流执行单元131向递送组件1331发送执行处理的处理执行请求(步骤s1111)。该处理执行请求包括图13a中所示的数据和参数4100。

数据是从控制单元210接收的处理流执行请求中包括的电子文件并且具有“inputstream”的数据类型。换言之,流执行单元131将从控制单元210作为具有“inputstream”数据类型进行传送的电子文件像“数据”(不确定数据类型)一样简单地传送到递送a组件1331,并且请求执行处理。在第一实施例中,未确定数据类型的情况下发送和接收的电子文件被简单地表示为“数据”。

在递送a组件1331接收到处理执行请求之后,递送a组件1331向类型转换管理单元134发送类型转换请求(步骤s1112)。这里,类型转换请求包括数据和表示能够由递送a组件1331进行处理的数据类型的“localfilepath”的指定。

在类型转换管理单元134接收到类型转换请求之后,类型转换管理单元134检测上述类型转换请求中所包括的数据的数据类型是否与所指定的数据类型匹配(步骤s1113)。

在此,接收到的类型转换请求中所包括的数据的数据类型是“inputstream”,所指定的数据类型是“localfilepath”。因此,类型管理单元134确定接收到的类型转换请求中所包括的数据的数据类型与所指定的数据类型不匹配。

接着,类型转换管理单元134参考类型转换信息表2000,并且指定将“inputstream”转换为“localfilepath”的类型转换(这里,第一类型转换1351被指定)。接着,类型管理单元134生成所指定的类型转换(步骤s1114)。

类型转换共用接口1350中定义的api用于生成第一类型转换1351。

接着,类型管理单元134向所生成的第一类型转换发送类型转换请求(步骤s1115)。该类型转换请求包括数据。

在第一类型转换1351接收到类型转换请求之后,第一类型转换1351将类型转换请求中所包括的数据的数据类型从“inputstream”转换为“localfilepath”(步骤s1116),第一类型转换1351将已转换的数据返回到类型转换管理单元134。此后,类型转换管理单元134向递送a组件1331发送具有数据转换的数据(步骤s1117)。

在递送a组件1331接收具有类型转换的数据之后,递送组件1331根据参数4100执行处理(步骤s1118)。换言之,递送a组件1331将文件名“file1”给予该数据所指示的电子文件,并且将该电子文件递送(上传)到外部存储器a的文件夹名称为“folderb”的文件夹。

递送a组件1331能够向外部存储协同单元1601的文件处理单元1711提供图5a中所示的api“「/外部存储器名称/process/folder”。换言之,递送a组件1331将数据作为例如“/storage-a/process/folder”发送到文件处理单元1711。

由此,文件名为“file1”的电子文件(通过扫描生成的电子文件)被存储在外部存储器a的文件夹名称为“folderb”的文件夹中。

接着,在递送a组件1331完成处理执行之后,递送a组件1331向资源管理单元136发送存储处理的结果的处理结果存储请求(步骤s1119)。处理结果存储请求包括表示递送a组件1331所获得的处理结果的数据。

在资源管理单元136接收到针对处理结果的处理结果存储请求之后,资源管理单元136根据处理结果存储请求中包括的数据,将处理结果添加到资源管理信息190d中。接着,资源管理单元136将存储结果返回到递送a组件1331。

换言之,资源管理单元136将递送a组件1331的处理结果添加到如图12b中所示的资源管理信息190d的处理结果193。处理结果1931包括表示电子文件的存储文件名的“filename”:“file1”和表示存储目的地url的“fileurl”:“http://storagea.com/folderb/file1.txt”。

如所述,在组件的每次处理执行时,组件的处理结果被添加到资源管理信息190d。在递送a组件1331从资源管理单元136接收到存储结果之后,递送a组件1331将表示处理结果的数据返回到流执行单元131。

接着,在流执行单元131接收到数据之后,流执行单元131根据处理流信息1200向组件管理单元132发送获取组件的组件获取请求(步骤s1121)。

换言之,流执行单元131向组件管理单元132发送获取组件的组件获取请求,其中的组件包括组件名称为“邮件组件”的组件,该组件名称“邮件组件”被指定在处理流信息1200的详细流1203中的处理内容1205中。

在组件管理单元132接收到组件获取请求之后,组件管理单元132生成与组件获取请求中所包括的组件名称对应的邮件组件1332(步骤s1122)。邮件组件1332通过使用api来生成,该api用于生成组件共用接口1330中定义的组件。

接着,组件管理单元132将所生成的邮件组件1332返回到流执行单元131。换言之,组件管理单元132将其上部署有邮件组件1332的存储器(例如,ram14)中的地址返回到流执行单元131。

在邮件组件1332被返回到流执行单元131之后,流执行单元131向参数评价单元137发送参数获取请求以获取待输入到组件的参数(步骤s1123)。参数获取请求包括邮件组件1332中的参数的关键字“from”、“to”、“cc”、“bcc”、“subject”以及“body”。

在参数评价单元137接收到针对参数的参数获取请求之后,参数评价单元137将参数获取请求传送到资源管理单元136(步骤s1124)。

在资源管理单元136接收到针对参数的参数获取请求之后,资源管理单元136从资源管理信息190d的邮件组件参数1922获取与参数获取请求中所包括的关键字对应的参数(步骤s1125)。

换言之,资源管理单元136获取包括如下的参数:“from”:“hoge@fuga.com”、“to”:“hogehoge@fuga.com”、“cc”:null,“bcc”:null、“subject”:“存储目的地url的报告”、“body”:”${递送a组件.result.fileurl}”,这些参数分别与参数获取请求中所包括的关键字“from”、“to”、“cc”、“bcc”、“subject”以及“body”对应。

接着,资源管理单元136将获取到的参数返回到参数评价单元137。

参数评价单元137对返回的参数进行评价(步骤s1126)。换言之,参数评价单元137确定替换指定是否具有返回参数中所包括的“from”:“hoge@fuga.com”、“to”:“hogehoge@fuga.com”,“cc”:null、“bcc”:null、“subject”:“存储目的地url的报告”以及“body”:“${递送a组件.result.fileurl}”。

这里,替换指定被提供给返回参数中所包括的“body”:“${递送a组件.result.fileurl}”。因此,参数评价单元137确定所返回的参数是否具有替换指定。

然后,参数评价单元137请求资源管理单元136发送获取资源的资源获取请求(步骤s1127)。资源获取请求包括替换指定“${递送a组件.result.fileurl}”。

在资源管理单元136接收到资源获取请求之后,资源管理单元136根据资源获取请求中包括的替换指定来获取对应关键字的资源(步骤s1128)。接着,资源管理单元136将获取到的资源返回到参数评价单元137。

换言之,资源管理单元136基于“${递送a组件.result.fileurl}”,从图12b所示的资源管理信息190d的递送a组件1331的处理结果1931获取关键字“fileurl”的资源“http://storagea.com/folderb/file1.txt”。

在参数评价单元137从资源管理单元136接收到资源之后,参数评价单元137将具有替换指定的资源替换为接收的资源(步骤s1129)。换言之,参数评价单元137将“body”:“${递送a组件.result.fileurl}”替换为“body”:“http://storagea.com/folderb/file1.txt”。

然后,参数评价单元137向流执行单元131返回参数,该参数包括具有替换的资源(步骤s1130)。换言之,参数评价单元137向流执行单元131返回例如图13b所示的参数4200。

如所述,在参数中包括的关键字具有替换指定的情况下,第一实施例的服务提供系统10将该关键字的资源替换为指定的资源。由此,使得第一实施例的服务提供系统10能够使用由其他的组件获取的处理结果。

接着,流执行单元131向邮件组件1332发送执行处理的处理执行请求(步骤s1131)。处理执行请求包括表示递送a组件1331获得的处理结果的数据以及图13b中所示的参数4200。

在邮件组件1332接收到处理执行请求之后,邮件组件1332向类型转换管理单元134发送类型转换请求(步骤s1132)。这里,类型转换请求包括数据和表示邮件组件1332能够处理的数据类型“localfilepath”的指定。

在类型转换管理单元134接收到类型转换请求之后,类型转换管理单元134检查上述类型转换请求中所包括的数据的数据类型是否与所指定的数据类型匹配(步骤s1133)。

在此,接收到的类型转换请求中所包括的数据的数据类型是“localfilepath”,所指定的数据类型也是“localfilepath”。因此,类型管理单元134确定类型转换请求中所包括的数据的数据类型与所指定的数据类型匹配。

接着,类型转换管理单元134向邮件组件1332发送类型转换请求中包括的数据(步骤s1134)。如所述,当在检查数据类型中确定数据类型匹配时(步骤s1133的处理),类型转换管理单元134不生成类型转换。

在邮件组件1332从类型转换管理单元134接收到数据之后,邮件组件1135执行处理(步骤s1135)。换言之,邮件组件1332向目的地“hogehoge@fuga.com”发送具有主题“存储目的地url的报告”和主体“http://storagea.com/folderb/file1.txt”的邮件。

邮件组件1332向文档服务单元150的邮件发送151发送处理请求,邮件发送151生成上述邮件并且发送所生成的邮件。

由此,外部存储器a中存储的存储目的地url通过邮件发送到指定地址。

接着,在邮件组件1332完成处理执行之后,邮件组件1332向资源管理单元136发送存储处理结果的处理结果存储请求(步骤s1136)。处理结果存储请求包括表示由邮件组件1332获得的处理结果的数据。

在资源管理单元136接收到针对处理结果的处理结果存储请求之后,资源管理单元136根据处理结果存储请求中包括的数据,将处理结果添加到资源管理信息190d中(步骤s1136)。接着,资源管理单元136将存储结果返回到邮件组件1332。

换言之,资源管理单元136将邮件组件1332的处理结果1932添加到如图12b中所示的资源管理信息190d的处理结果193。处理结果1932包括表示邮件发送源的“from”:“hoge@fuga.com”、表示邮件发送目的地的“to”:“hogehoge@fuga.com”、表示抄送的“cc”:null、以及表示密送的“bcc”:null。此外,处理结果1932包括表示主题的“subject”:“存储目的地url的报告”和表示主体的“body”:“http://storagea.com/folderb/file1.txt”。

如所述,在组件的每次处理执行时,组件的处理结果被添加到资源管理信息190d。在邮件组件1332从资源管理单元136接收到存储结果之后,邮件组件1332将表示处理结果的数据返回到流执行单元131。

如所述,在组件所输入的参数中包括的关键字具有替换指定的情况下,使得第一实施例的服务提供系统10能够利用其它组件的处理结果中包括的资源来替换关键字的资源。由此,在第一实施例的服务提供系统10中,任意组件的处理结果能够由其他组件作为参数进行输入,而不取决于参数中包括的关键字。

例如,在上面的步骤s1118中递送a组件1331的处理执行期间出现故障的情况下,在步骤s1120中故障信息被递送a组件添加为处理结果。换言之,在由于例如不正常的输入而在递送a组件1331中出现故障的情况下,表示由递送a组件1331获得的处理结果(故障信息)的处理结果1933被添加到如图14中所示的资源管理信息190d。

因此,任意组件的处理结果(故障信息)能够作为参数输入到例如其他组件的故障信息作为参数被输入到的组件,而不取决于如上所述的关键字。

第二实施例

接着,描述第二实施例的信息处理系统1。第二实施例与第一实施例的不同之处在于,存在一个模板组件,该模板组件用于将预定信息添加到其他组件获得的处理结果的处理。在第二实施例中,模板组件用于使得除了存储目的地url以外还能够将任意语句添加到邮件的主体,并且能够将该邮件发送到指定目的地。此后,通过与第一实施例相同的附图标记来表示与第一实施例具有基本相同功能的部分和与第一实施例执行相同处理的部分,并且省略这些部分的描述。

<功能结构>

接着,参考图15,描述第二实施例的逻辑处理单元130的详细功能结构。图15是示出第二实施例的示例逻辑处理单元130的功能结构的示意图。

第二实施例的逻辑处理单元130与第一实施例的逻辑处理单元130的不同点在于组件群组133中包括模板组件1333。

模板组件1333根据处理流信息1200中指定的模板信息来处理由其他组件获得的处理结果。

<详细处理>

参考图16,下面描述第二实施例的处理流执行处理。图16是执行第二实施例的处理流的示例处理流执行过程的时序图。

在流执行单元131接收到执行处理流的处理流执行请求之后,流执行单元131向应用管理单元120发送获取处理流信息的处理流信息获取请求(步骤s1601)。在第二实施例中,处理流信息获取请求包括应用id“app001”和流id“flow002”。

应用管理单元120从应用信息存储单元180中获取与接收到的处理流执行请求中所包括的应用id“app001”和流id“flow001”对应的处理流信息1200,并且返回该处理流信息1200。

在第二实施例中,图17中所示的处理流信息1200返回到流执行单元131。

图17所示的处理流信息1200是应用id“app001”的应用信息1000中包括的处理流信息1200的示例。

图17中所示的处理流信息1200包括流id1211、流名称1212以及详细流1213。

此外,详细流1213包括:表示将电子文件存储在外部存储器a中的递处理的处理内容1214,表示将预定信息添加到递送a组件获得的处理结果的添加处理的处理内容1215,以及表示使用邮件发送存储目的地url的邮件处理的处理内容1216。

在处理内容1214中,指定执行递送处理的组件的名称“递送a组件”和输入到该组件的参数。

在处理内容1215中,指定执行添加处理的组件的名称“模板组件”、待输入到组件中的参数、以及表示待添加到处理结果的内容的模板信息。

在此,模板信息被指定为“文件存储在外部存储器a中。存储目的地url是${递送组件.result.fileurl}”。如所述,通过将替换指定嵌入在任意文本等来指定模板信息。

在处理内容1216中,指定执行邮件处理的组件的组件名称“邮件组件”和输入到该组件的参数。

接着,在流执行单元131接收到处理流信息1200之后,流执行单元131向资源管理单元136发送存储资源管理信息的资源管理信息存储请求(步骤s1602)。资源管理信息存储请求包括从ui控制单元210接收到的处理流执行请求,以及处理流信息1200中所包括的处理内容1214、1215和1216。

在资源管理单元136接收到存储资源管理信息的资源管理信息存储请求之后,资源管理单元136根据资源管理信息存储请求中包括的处理流执行请求和处理内容s1214、s1215和s1216,生成例如图18a中所示的资源管理信息190d。资源管理单元136将所生成的资源管理信息190存储到资源管理信息存储单元190中(步骤s1603),并且将存储结果返回到流执行单元131中。

图18a中所示的资源管理信息190d包括执行请求194、参数195、以及处理结果196。

执行请求194是针对资源管理信息的资源管理信息存储请求中所包括的处理流执行请求。在执行每个组件的处理的情况下,存储每个组件的处理的处理结果196。

参数195包括递送a组件参数1951、模板组件参数1952以及邮件组件参数1953。

递送a组件参数1951根据处理流执行请求中包括的输入信息和处理内容1214来生成。邮件组件参数1953根据处理流执行请求中包括的输入信息和处理内容1216来生成。

模板组件参数1952根据处理内容1215来生成。换言之,通过与处理内容1215中的参数相似的方式,在不指定关键字和资源的情况下生成模板组件参数1952。

由于步骤s1604的处理与图11的步骤s1104至s1120中的相似,省略描述。递送a组件1331的处理结果被添加到资源管理信息190d。如图18b中所示,递送a组件1331的处理结果1961被添加到如图18b中所示的资源管理信息190d的处理结果196。

接着,在流执行单元131从递送a组件1331接收到数据之后,流执行单元131根据处理流信息1200向组件管理单元132发送获取组件的组件获取请求(步骤s1605)。

换言之,流执行单元131向组件管理单元132发送获取组件的组件获取请求,其中的组件包括组件名称为“模板组件”的组件,该组件名称“模板组件”被指定在图17中所示的处理流信息1200的详细流1213中的处理内容1215中。

在组件管理单元132接收到组件获取请求之后,组件管理单元132生成与组件获取请求中所包括组件名称对应的模板组件1333(步骤s1606)。模板组件1333通过使用api来生成,该api用于生成组件共用接口1330中定义的组件。

接着,组件管理单元132将所生成的模板组件1333返回到流执行单元131。换言之,组件管理单元132将其上部署有模板组件1333的存储器(例如,ram14)中的地址返回到流执行单元131。

在模板组件1333被返回到流执行单元131之后,流执行单元131向参数评价单元137发送参数获取请求以获取待输入到组件的参数(步骤s1607)。由于模板组件1333中的参数输入中不包括关键字和资源,参数获取请求不包括该关键字。

在参数评价单元137接收到针对参数的参数获取请求之后,参数评价单元137将参数获取请求传送到资源管理单元136(步骤s1608)。接着,资源管理单元136将没有关键字和资源的空值参数返回到参数评价单元137。

参数评价单元137对返回的参数进行评价(步骤s1609)。由于返回的参数不包括关键字和资源,所以参数评价单元137确定返回的参数没有替换指定。

然后,参数评价单元137向流执行单元131返回从资源管理单元136返回的参数(步骤s1610)。换言之,参数评价单元137将例如图19a中所示的参数4300返回到流执行单元131。

接着,流执行单元131向模板组件1333发送执行处理的处理执行请求(步骤s1611)。处理执行请求包括数据、图19a中所示的参数4300、以及图17中所示的处理流信息1200的处理内容1215中所指定的模板信息。

在模板组件1333接收到处理执行请求之后,模板组件1333向类型转换管理单元134发送类型转换请求(步骤s1612)。这里,类型转换请求包括数据和表示模板组件1333能够处理的数据类型“localfilepath”的指定。

在类型转换管理单元134接收到类型转换请求之后,类型转换管理单元134检查上述类型转换请求中所包括的数据的数据类型是否与所指定的数据类型匹配(步骤s1613)。

在此,接收到的类型转换请求中所包括的数据的数据类型是“localfilepath”,所指定的数据类型也是“localfilepath”。因此,类型转换管理单元134确定类型转换请求中所包括的数据的数据类型与所指定的数据类型匹配。

然后,类型转换管理单元134向模板组件1333发送类型转换请求中包括的数据(步骤s1614)。如所述,当在检查数据类型中确定数据类型匹配时(步骤s1613的处理),类型转换管理单元134不生成类型转换。

在模板组件1333从类型转换管理单元134接收到数据之后,模板组件1333向资源管理单元136发送获取资源的资源获取请求(步骤s1615)。资源获取请求包括模板信息中指定的替换指定。换言之,资源获取请求包括替换指定“${递送a组件.result.fileurl}”。

在资源管理单元136接收到资源获取请求之后,资源管理单元136根据资源获取请求中包括的替换指定来获取对应关键字的资源(步骤s1616)。接着,资源管理单元136将获取的资源返回到模板组件1333。

换言之,资源管理单元136基于“${递送a组件.result.fileurl}”,从图18b中所示的资源管理信息190d中的递送a组件1331的处理结果1961获取关键字“fileurl”的资源“http://storagea.com/folderb/file1.txt”。

在模板组件1333从资源管理单元136接收到资源之后,模板组件1333将替换模板信息中指定的替换指定替换为接收到的资源(步骤s1617)。

换言之,模板组件1333将模板信息“文件存储在外部存储器a中。存储目的地url是递送a组件.result.fileurl”替换为“文件存储在外部存储器a中。存储目的地url是http://storagea.com/folderb/file1.txt”。

接着,在模板组件1333向资源管理单元136发送存储处理结果的处理结果存储请求(步骤s1618)之后。处理结果存储请求包括表示被替换的模板信息的数据,该数据是由模板组件1333获得的处理结果。

在资源管理单元136接收到针对处理结果的处理结果存储请求之后,资源管理单元136根据处理结果存储请求中包括的数据,将处理结果添加到资源管理信息190d中(步骤s1619)。接着,资源管理单元136将存储结果返回到模板组件1333。

换言之,资源管理单元136将模板组件1333获得的处理结果1962添加到如图18b所示的资源管理信息190d的处理结果196。处理结果1962包括表示被替换模板信息的“template”:“文件存储在外部存储器a中。存储目的地url是http://storagea.com/folderb/file1.txt”。在模板组件1333从资源管理单元136接收到存储结果之后,模板组件1333将表示处理结果的数据返回到流执行单元131。

如所述,模板组件1333使用其中嵌入替换指定的模板信息,通过添加任意的字符、符号、数字等来处理其他组件的处理结果。

接着,在流执行单元131接收到数据之后,流执行单元131根据处理流信息1200向组件管理单元132发送获取组件的组件获取请求(步骤s1620)。

换言之,流执行单元131向组件管理单元132发送获取组件的组件获取请求,其中的组件包括组件名称为“邮件组件”的组件,该组件名称“邮件组件”被指定在处理流信息1213的详细流1213中的处理内容1216中。

在组件管理单元132接收到组件获取请求之后,组件管理单元132生成与组件获取请求中所包括的组件名称对应的邮件组件1332(步骤s1621)。邮件组件1332通过使用api来生成,该api用于生成组件共用接口1330中定义的组件。

接着,组件管理单元132将所生成的邮件组件1332返回到流执行单元131。换言之,组件管理单元132将其上部署有邮件组件1332的存储器(例如,ram14)中的地址返回到流执行单元131。

在邮件组件1332被返回到流执行单元131之后,流执行单元131将获取待输入到组件的参数的参数获取请求发送到参数评价单元137(步骤s1622)。参数获取请求包括邮件组件1332中的参数的关键字“from”、“to”、“cc”、“bcc”、“subject”,以及“body”。

在参数评价单元137接收到针对参数的参数获取请求之后,参数评价单元137将参数获取请求传送到资源管理单元136(步骤s1623)。

在资源管理单元136接收到参数的参数获取请求之后,资源管理单元136从资源管理信息190d的邮件组件参数1953获取与参数获取请求中所包括的关键字对应的参数(s1624)。

换言之,资源管理单元136获取包括如下的参数:“from”:“hoge@fuga.com”、“to”:“hogehoge@fuga.com”、“cc”:null,“bcc”:null、“subject”:“存储目的地url的报告”、“body”:”${模板组件.result.fileurl}”,这些参数分别对应于参数获取请求中所包括的关键字“from”、“to”、“cc”、“bcc”、“subject”以及“body”。

接着,资源管理单元136将获取到的参数返回到参数评价单元137。

参数评价单元137对返回的参数进行评价(步骤s1625)。换言之,参数评价单元137确定替换指定是否具有返回参数中所包括的“from”:“hoge@fuga.com”、“to”:“hogehoge@fuga.com”,“cc”:null、“bcc”:null、“subject”:“存储目的地url的报告”以及“body”:“${模板组件.result.template}”。

这里,替换指定被提供给返回参数中所包括的“body”:“${模板组件.result.template}”。因此,参数评价单元137确定所返回的参数是否具有替换指定。

然后,参数评价单元137请求资源管理单元136发送获取资源的资源获取请求(步骤s1626)。资源获取请求包括替换指定“${模板组件.result.template}”。

在资源管理单元136接收到资源获取请求之后,资源管理单元136根据资源获取请求中包括的替换指定来获取对应关键字的资源(步骤s1627)。接着,资源管理单元136将获取到的资源返回到参数评价单元137。

换言之,资源管理单元136根据资源获取请求中包括的替换指定,从具有图18b所示的资源管理信息190d的模板组件1333所获得的处理结果1962获取关键字“模板”的资源。因此,资源管理单元136获取资源“文件存储在外部存储器a中。存储目的地url是http://storagea.com/folderb/file1.txt。”,并且将该资源返回到参数评价单元137。

在参数评价单元137从资源管理单元136接收到资源之后,参数评价单元137将具有替换指定的资源替换为接收到的资源(步骤s1628)。

换言之,参数评价单元137将“body”:“${模板组件.result.template}”替换为“body”:“文件存储在外部存储器a中中。存储目的地url是http://storagea.com/folderb/file1.txt。”。

然后,参数评价单元137向流执行单元131返回包括资源的参数,其中的资源具有替换(步骤s1629)。换言之,参数评价单元137将例如图19b中所示的参数4400返回到流执行单元131。

接着,流执行单元131向邮件组件1332发送执行处理的处理执行请求(步骤s1630)。处理执行请求包括表示模板组件1333所获得的处理结果的数据以及图19b中所示的参数4400。

由于步骤s1132至s1134的后续处理与图11相似,因此省略后续处理的描述。

在邮件组件1332从类型转换管理单元134接收到数据之后,邮件组件1332执行处理(步骤s1631)。换言之,模板组件1333将模板信息“文件存储在外部存储器a中。存储目的地url是${递送a组件.result.fileurl}”替换为“文件存储在外部存储器a中。存储目的地url是http://storagea.com/folderb/file1.txt”。

邮件组件1332向文档服务单元150的邮件发送151发送处理请求,邮件发送151生成上述邮件并且发送所生成的邮件。

由此,外部存储器a中存储的存储目的地url通过邮件发送到指定地址。另外,在第二实施例的服务提供系统10中,任意字符等被添加到存储目的地url,并且能够发送添加有任意字符的邮件。

接着,在邮件组件1332完成处理执行之后,邮件组件1332向资源管理单元136发送存储处理结果的处理结果存储请求(步骤s1632)。处理结果存储请求包括表示邮件组件1332所获得的处理结果的数据。

在资源管理单元136接收到存储处理结果的处理结果存储请求之后,资源管理单元136根据处理结果存储请求中包括的数据,将处理结果添加到资源管理信息190d中(步骤s1633)。接着,资源管理单元136将存储结果返回到邮件组件1332。

换言之,资源管理单元136将邮件组件1332所获得的处理结果1963添加到如图18b中所示的资源管理信息190d的处理结果196。处理结果1963包括表示邮件发送源的“from”:“hoge@fuga.com”、表示邮件发送目的地的“to”:“hogehoge@fuga.com”、表示抄送的“cc”:null、以及表示密送的“bcc”:null。此外,处理结果1932包括表示主题的“subject”:“存储目的地url的报告”和表示主体的“body”:“文件存储在外部存储器a中。存储目的地url是http://storagea.com/folderb/file1.txt”。在邮件组件1332从资源管理单元136接收到存储结果之后,邮件组件1332将表示处理结果的数据返回到流执行单元131。

如所述,在第二实施例的服务提供系统10中,在向任意组件所获得的处理结果提供预定处理之后,其他组件能够输入到处理结果以形成参数。

根据本发明的实施例,能够执行通过将组件进行组合而形成的系列处理。

在此阐述的所有示例和条件语言意图用于教导目的以帮助读者理解本发明的原理和发明人对于技术的促进所贡献的观念,并且应当理解为既不限制于这些具体阐述的示例和条件,说明书中的这些示例的组织也不涉及本发明的优势或劣势的展示。虽然已经详细描述信息处理系统,但是应当理解的是,在不偏离本发明的精神和范围的情况下,能够对其作出各种修改、替换和改变。

本发明的实施例的方法顺序不限于该公开所公开的方法处理的顺序。

本发明能够以任何方便的形式来实现,例如使用专用的硬件,或者专用的硬件和软件的组合。本发明可以作为由一个或多个联网处理装置实现的计算机软件来实现。网络能够包括任何常规的地面卫星或者无线通信网络,诸如互联网。处理装置可以包括任何适合编程的装置,诸如通用计算机、个人数字助理、移动电话(诸如,wap或3g兼容电话)等。由于本发明能够作为软件来实现,所以本发明的每个和各个方面因此涵盖了可以在可编程设备上实现的计算机软件。计算机软件可以利用任何常规的载体介质提供给可编程设备。载体介质可以包括瞬态载体介质,诸如携带计算机代码的电、光、微波、声学或无线电频率信号。这样的瞬态介质的示例是在诸如互联网的ip网络上携带计算机代码的tcp/ip信号。载体介质还可以包括用于存储处理器可读代码的存储介质,诸如软盘、硬盘、cdrom、磁带设备或固态存储设备。

硬件平台包括任何期望类型的硬件资源,包括例如中央处理单元(cpu)、随机存取存储器(ram)、以及硬盘驱动器(hdd)。cpu可以通过任何期望类型的任意期望数量的处理器来实现。ram可以通过任何期望类型的易失性或非易失性存储器来实现。hdd可以通过能够存储大量数据的任意期望类型的非易失性存储器来实现。取决于装置的类型,硬件资源可以另外包括输入设备、输出设备或网络设备。可替换地,只要hdd是可访问的,hdd可以提供在装置的外部。在该示例中,cpu(诸如,cpu的高速缓存存储器)和ram可以用作装置的物理存储器或主存储器,而hdd可以用作装置的次级存储器。参考标记列表

1信息处理系统

10服务提供系统

20装置

30外部存储系统

110服务处理单元

120应用管理单元

130逻辑处理单元

131流执行单元

132组件管理单元

133组件群组

134类型转换管理单元

135类型转换群组

136资源管理单元

137参数评价单元

140数据接口单元

150文档服务单元

160外部存储协同单元

180应用信息存储单元

190资源管理信息存储单元

210ui控制单元

220扫描处理单元

1000应用信息

1100屏幕定义信息

1200处理流信息

2000类型转换信息表

本申请要求2015年10月30日提交的日本专利申请号2015-214039和2016年7月27日提交的日本专利申请号2016-147245的优先权的权益,其中将所有申请的全部内容通过参考并入于此。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1