CN102591645B - 对数据的基于元数据的事件支持操作 - Google Patents
对数据的基于元数据的事件支持操作 Download PDFInfo
- Publication number
- CN102591645B CN102591645B CN201110440149.8A CN201110440149A CN102591645B CN 102591645 B CN102591645 B CN 102591645B CN 201110440149 A CN201110440149 A CN 201110440149A CN 102591645 B CN102591645 B CN 102591645B
- Authority
- CN
- China
- Prior art keywords
- button
- onrelease
- application data
- data
- metadata
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 claims abstract description 62
- 230000004044 response Effects 0.000 claims description 10
- 238000005516 engineering process Methods 0.000 abstract description 10
- 230000009471 action Effects 0.000 description 22
- 230000008859 change Effects 0.000 description 16
- 230000006870 function Effects 0.000 description 13
- 238000013500 data storage Methods 0.000 description 11
- 238000012217 deletion Methods 0.000 description 10
- 230000037430 deletion Effects 0.000 description 10
- 230000015654 memory Effects 0.000 description 10
- 238000006243 chemical reaction Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 230000000712 assembly Effects 0.000 description 2
- 238000000429 assembly Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 208000035126 Facies Diseases 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
描述了对数据的基于元数据的事件支持操作。在此描述了用于提供对数据的基于元数据的事件支持操作的概念和技术。诸如类和事件之类的应用数据可被存储在表中并且可与应用元数据相关联和/或由应用元数据来描述。应用元数据也可指定引用类上的一个或多个方法的一个或多个事件处理程序。事件处理程序可通过各种链接到一个或多个应用元数据表的代表来调用。当接收到对应用数据的创建、更新或删除操作时,应用元数据可被查询来确定应用元数据是否描述与应用数据相关联的事件处理程序。如果存在与应用数据相关联的事件处理程序,则该事件处理程序可被调用。
Description
技术领域
本申请涉及对数据的基于元数据的事件支持操作
背景
随着解决了新的软件使用和目的,软件的使用和范围持续增加。随着个人和专业生活的更多方面由软件解决,各种软件包之间的交互可变得越来越重要。此外,用户或其他实体可能希望将一个软件包或环境内的事件与其他动作或事件相关联。由此,用户或其他实体可能希望定制软件包以与以下内容一起工作和/或对以下内容作出反应:来自其他软件包的信息和/或例如其他软件包的对象(objectsor)程序数据中的改变。
对程序和程序对象的改变可能难以识别另一软件包和/或向另一软件包进行通信,和/或可能需要对与程序和/或程序对象相关联的代码的变更。由于复杂的软件包进行交互来提供与用户的商业和个人需要的各个方面相关联的功能,因此两个或更多个软件包之间不能进行通信可限制软件之间的各种交互,和/或可负面地影响用户或实体软件库的整体有效性。
此处所做出的本公开正是关于这些和其他考虑事项而提出的。
发明内容
在此描述了用于提供对数据的基于元数据的事件支持操作的概念和技术。根据在此公开的概念和技术,描述诸如类和事件之类的应用数据人工产物的信息被存储在表中并且由此通过应用元数据进行描述和/或与应用元数据相关联。应用元数据可包括指定与应用数据相关联的一个或多个事件处理程序(handler)的信息。事件处理程序可引用类上的一个或多个方法,并且可通过各种链接到一个或多个消费者的代表来调用。根据各个实施例,当接收到对应用数据的创建、更新或删除(“CUD”)操作时,应用元数据可被查询来标识与应用数据相关联的事件处理程序。
当事件处理程序被调用时,事件处理程序可由用户或其他实体定制以执行特定的功能。由此,例如,当在表中对应于应用数据的记录被创建、更新或删除时,与表相关联的事件处理程序可被调用。事件处理程序可导致各种设备调用一个或多个方法。由此,当应用数据通过调用与应用数据相关联的事件处理程序而被修改时,可采取各种动作。
根据一个方面,服务器计算机执行服务器应用以用于提供与服务器计算机相关联的功能。服务器应用生成并存储应用数据和/或应用元数据。客户机与服务器计算机进行通信以访问与服务器应用相关联的功能。随着操作被提交给服务器计算机,可通过对应用数据的一个或多个CUD操作来修改应用数据。服务器应用也可被用于定制一个或多个事件处理程序并将其存储在应用元数据中。在一些实施例中,通过服务器应用来呈现用于创建事件处理程序的用户界面(“UI”)。
服务器应用可被配置为检测对应用数据作出的改变。例如,服务器应用可被配置为检测对应用数据执行的创建、更新或删除操作来修改应用数据的一个或多个记录。如果对应用数据作出改变,则服务器应用可查询应用元数据来确定是否在应用元数据内存在链接到应用数据的任何事件处理程序。事件处理程序可由用户或其他实体来定制以允许软件或其他实体订阅公布的对应用数据作出的改变。如果合适,则链接到应用数据的事件处理程序可按特定的次序被调用。当被调用时,事件处理程序可执行由事件处理程序引用的一个或多个方法。
应当理解,上述主题可被实现为计算机控制的装置、计算机进程、计算系统或诸如计算机可读存储介质等制品。通过阅读下面的详细描述并审阅相关联的附图,这些及各种其他特征将变得显而易见。
提供本发明内容以便以简化的形式介绍在以下具体实施方式中进一步描述的一些概念。本发明内容并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在将本概述用来限制所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本发明的任一部分中提及的任何或所有缺点的实现。
附图简述
图1是示出用于本文公开的各实施例的示例性操作环境的系统图。
图2是根据示例性实施例的示意性示出了应用元数据的数据结构的数据结构图。
图3是示出根据示例性实施例的用于创建事件处理程序的方法的各方面的流程图。
图4是示出根据示例性实施例的用于提供对于数据的基于元数据的事件支持操作的方法的各方面的流程图。
图5是示出能够实现本文所提出的实施例的各方面的计算系统的示例性计算机硬件和软件架构的计算机架构图。
具体实施方式
以下详细的描述涉及用于提供对数据的基于元数据的事件支持操作的概念和技术。根据在此描述的概念和技术,诸如类和事件之类的应用人工产物可被存储在表中,并且可与应用元数据相关联和/或由应用元数据来描述。应用元数据也可指定引用类上的一个或多个方法的一个或多个事件处理程序。事件处理程序可通过各种链接到一个或多个应用元数据表的代表来调用。当对应用数据执行创建、更新或删除操作时,事件处理程序可被调用。事件处理程序可提示一个或多个方法的执行,并且可被顺序地调用。由此,通过调用事件处理程序被执行的方法可按特定的次序来执行。
尽管在结合计算机系统上的操作系统和应用程序的执行而执行的程序模块的一般上下文中呈现了此处描述的主题,但是本领域技术人员将认识到,其他实现可以结合其他类型的程序模块来执行。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其它类型的结构。此外,本领域技术人员将明白,可以利用其他计算机系统配置来实施此处描述的主题,这些计算机系统配置包括手持式设备、多处理器系统、基于微处理器的或可编程消费电子产品、小型计算机、大型计算机等等。
在以下详细描述中,参考了构成详细描述的一部分并作为说明示出了各具体实施方式或示例的附图。现在参考附图(全部若干附图中相同的标号表示相同的元素),将呈现用于提供对数据的基于元数据的事件支持操作的计算系统、计算机可读存储介质和计算机实现的方法的各方面。
现在参考图1,将描述用于本文所提出的各实施例的一个操作环境100的各方面。图1中示出的操作环境100包括操作在网络104上或与网络104通信的服务器计算机102。服务器计算机102被配置为执行操作系统(在图1中未示出)以及一个或多个应用程序,比如服务器应用106和/或其他应用程序。操作系统是用于控制服务器计算机102的操作的计算机程序,服务器应用106是可执行的程序,其被配置为在操作系统的顶部执行来提供在此描述的用于提供对数据的基于元数据的事件支持操作的功能。
服务器应用106被配置为在服务器计算机102处和/或在与服务器计算机102通信的数据存储位置处生成、进行操作、高速缓存和/或存储应用数据108。可通过一个或多个用户或其他实体经由一个或多个界面和/或经由其他进程与服务器计算机102通信来生成应用数据108。应用数据108例如可被存储在表中。服务器应用106也可被配置为生成、进行操作、高速缓存和/或存储应用元数据110。根据各个实施例,应用数据108包括由服务器应用106用于提供与服务器计算机102相关联的功能的数据。例如,在顾客关系管理(“CRM”)应用的情况下,应用数据108可包括顾客数据的表,其包括顾客姓名和相关联的联系人信息以及其他数据。应该理解,该实施例是示例性的,并且不应被解释为以任何方式构成限制。
应用元数据110包括描述应用数据108的各方面的信息。此外,在各个实施例中,服务器应用106对应于与基于模型的环境相关联的软件。包括在图1中示出的应用数据108内的模型可被描述为应用元数据110并作为应用元数据110被持久保存在存储位置中。由此,应用元数据110可由服务器应用106解释。应用元数据110包括描述与服务器应用106和/或应用数据108相关联的一个或多个事件的信息。因此,可以理解,应用元数据110可由服务器应用106和/或其他经授权的实体解释来确定与由服务器应用106执行的模型和/或事件相关联的范围和细节。
在一些实施例中,根据发布和订阅模型来发布应用数据108,其中软件可订阅接收在应用数据108内已经发生改变的通知。根据各种实施方式,当对应用数据108作出改变时,服务器应用106可被配置为查询应用元数据110来确定是否在应用元数据110中存在与应用数据108相关联的任何事件处理程序。如将在此更加详细解释的,如果在应用元数据110内存在任何事件处理程序,则事件处理程序可被调用。
根据各种实施方式,服务器应用106被配置为将应用数据108和/或应用元数据110存储在应用数据储存库112中。如图1示出的,应用数据储存库112可以通过直接链接与服务器计算机102进行通信。然而应当理解,应用数据储存库112可经由一个或多个网络连接(未显示)与服务器计算机102进行通信。由此,服务器计算机102可经由网络104和/或经由其他网络和/或通信链接与应用数据储存库112进行通信。
应用数据储存库112的功能可以由一个或多个数据库、存储器设备、大容量存储设备、服务器计算机、桌面计算机、移动电话、膝上型计算机、其他计算系统等等来提供。在所示的实施例中,应用数据储存库112的功能由可通信地链接到服务器计算机102的数据库来提供。应该理解,该实施例是示例性的,并且不应被解释为以任何方式构成限制。
根据各个实施例,操作系统100包括被配置为与服务器计算机102通信的客户端114。客户端114的功能可以由诸如台式计算机、平板电脑或膝上型计算机系统之类的个人计算机(“PC”)来提供。客户端114的功能还可以由其他类型的计算系统来系统,包括但不限于,服务器计算机、手持式计算机、上网本计算机、嵌入式计算机系统、个人数字助理、移动电话、智能电话或其他计算设备。客户端114被配置为执行操作系统116(“OS”)和一个或多个应用程序118。
OS 116是一种计算机程序,其用于控制客户端114的操作,并且所述应用程序是可执行程序,所述可执行程序被配置为在OS 116之上执行以提供各种功能。在一些实施例中,客户端114通过一个或多个应用编程接口(“API”)与服务器计算机102对接。例如,客户端114可以通过基于web的API与服务器计算机102对接,其中所述基于web的API通过传统web浏览器或其他启用web的应用程序118来访问。应该理解,该实施例是示例性的,并且不应被解释为以任何方式构成限制。
客户端114被配置为与服务器应用106进行交互。例如,客户端114可被配置为生成一个或多个操作120并向服务器应用106提交这一个或多个操作120。操作120可被提交给服务器计算机102并且由服务器应用106解释以支持客户端114和服务器应用106之间的各种交互。在各个实施例中,操作120可包括与应用数据108的一个或多个查询、对应用数据108的创建、更新或删除操作等相对应的数据。操作120可通过客户端114和/或通过服务器应用106经由与客户端114的交互来生成。在一些实施方式中,可响应于经由UI、展示的API和/或其他方式与客户端114的交互来通过服务器应用106生成操作102。在一些实施例中,用户或其他实体与一个或多个UI进行交互来生成操作120。
如以上解释的,应用元数据110可描述与对应用数据108执行的操作相关联的事件处理程序。在一些实施例中,例如,对应用数据108的操作120是与由应用元数据110描述的事件处理程序相关联的和/或被绑定到由应用元数据110描述的事件处理程序。服务器应用106可被配置为响应于对应用数据108的操作120,查询应用元数据110来标识并调用与对应用数据108的操作120相关联的事件处理程序。由此,对应用数据108的改变可经由查询应用元数据110和对由此描述的事件处理程序的标识和调用来触发由事件处理程序定义的各种事件,其中事件处理程序由应用元数据110描述。
图1示出了一个服务器计算机102、一个网络104、一个应用数据储存库112以及一个客户端114。然而,应该理解,操作环境100的一些实施方式包括多个服务器计算机102、多个网络104、多个应用数据储存库112、和/或多个客户端114。因此,所示实施例应该被理解为示例性的,并且不应该被解释为以任何方式构成限制。
现在转向图2,描述了根据示例性实施例的,应用元数据110的附加方面的附加细节。尤其,图2是示出应用元数据110的数据结构200的统一建模语言(UML)图。应该理解,所述数据结构200是示例性的,并且不应被解释为以任何方式构成限制。数据结构200包括对应于应用数据108的表202。如图2示出的,表202可包括对应于表的名称的主键,尽管未必非要这样。由此,表202可通过其名称被唯一地标识。
根据各个实施例,表202包括对一个或多个代表204的引用。代表204可通过在图2中示为“代表名称(DelegateName)”的名称被唯一地标识。代表204也可被一个或多个类206引用。类206可通过名称被唯一地标识。除了包括对代表204的引用,类206也可引用一个或多个方法208。方法208和代表204可包括对一个或多个事件处理程序210的一个或多个引用。事件处理程序210包括对类206和表202的引用。根据各个实施例,事件处理程序210被用于在对表202中的一个或多个记录作出改变后,调用各个方法208。
当服务器应用106接收到操作120时,服务器应用106可创建、更新或删除与应用数据108相关联的一个或多个记录。根据各实施方式,服务器应用106对表202执行CUD操作来反映与操作120相关联的改变。一个或多个事件处理程序被绑定到表202,使得对表202(包括对代表204的一个或多个引用)的改变可触发一个或多个方法208。可经由可由代表204引用的一个或多个事件处理程序210来调用方法208。由此,应当理解的是,对应用数据108的CUD操作可被绑定到任意数量的事件处理程序。由此,例如,如果应用数据108的一个或多个记录被创建、更新或删除,则可采取动作并且可通知一个或多个订阅者。虽然没有参考图2详细地描述,但是应当理解的是,各个代表204和方法208都可包括对一个或多个参数212的引用。
虽然没有在图2中显示地示出,但是在一示例性实施例中,代表204包括预创建代表、后创建代表、预更新代表、后更新代表、预删除代表以及后删除代表。每个代表204可包括一个或多个引用的事件处理程序210,其中每个事件处理程序可引用类206上的一个或多个方法208。由此,可以理解,可在对表202的CUD操作之前或之后调用各个方法208。此外,如将在以下参考图4来更加详细描述的,事件处理程序210可按特定的次序来调用。由此,响应于对表202的CUD操作,任意数量的方法208可被执行和/或可按特定的次序被执行。
现在转到图3,将详细描述用于创建事件处理程序的方法300的各方面。应该理解,不一定按任何特定次序来呈现此处公开的方法的操作,并且构想了用替换次序来执行部分或全部操作是可能的。为了易于描述和说明,按所示次序来呈现各操作。可以添加、省略和/或同时执行操作,而不脱离所附权利要求书的范围。
还应该理解,所示方法可以在任何时候结束并且不必完整地执行。本文公开的方法的一些或全部操作和/或基本上等效的操作可以通过执行计算机存储介质上所包括的计算机可读指令来执行,如上面定义的。如在说明书和权利要求书中使用的术语“计算机可读指令”及其变型,在本文是用来广泛地包括例程、应用、应用模块、程序模块、程序、组件、数据结构、算法等等。计算机可读指令可以在各种系统配置上实现,包括单处理器或多处理器系统、小型计算机、大型计算机、个人计算机、手持式计算设备、基于微处理器的可编程消费电子产品、其组合等等。
因此,应该理解,本文所述的逻辑操作被实现为:(1)一系列计算机实现的动作或运行于计算系统上的程序模块;和/或(2)计算系统内的互连的机器逻辑电路或电路模块。取决于计算系统的性能及其他要求,可以选择不同的实现。因此,此处描述的逻辑操作被不同地称为状态操作、结构设备、动作或模块。这些操作、结构设备、动作和模块可以用软件、固件、专用数字逻辑,以及其任何组合来实现。
出于说明和描述本公开的概念的目的,在此公开的方法被描述由服务器计算机102通过执行服务器应用106来执行。应该理解,这些实施例是示例性的,并且不应被视为以任何方式进行限制。附加和/或可替代的设备可以通过执行附加和/或可替代的应用来提供在此所述的功能。方法300在操作302处开始,其中服务器计算机102创建事件处理程序。如以上解释的,应当理解,所创建的事件处理程序可由应用元数据110来描述。
根据一些实施例,服务器应用106是可由服务器计算机102来执行的,以呈现一个或多个UI,通过该一个或多个UI,用户或其他实体经由提交一个或多个操作120来创建事件处理程序。更具体的,在一些实施例中,用户或其他实体经由UI来输入用于创建事件处理程序的数据,用于创建事件处理程序的数据作为操作120被服务器计算机102接收,并且服务器计算机102可存储并创建或更新应用元数据110来更新事件处理程序。在一些实施例中,描述事件处理程序的应用元数据110被高速缓存在诸如存储器或高速缓冲存储器之类的数据存储设备中,直到用户从服务器计算机102断开连接或以其他方式提交对应用元数据110的改变。应当理解的是,用户或其他实体可与服务器计算机102进行交互来在任何时间创建或配置事件处理程序。
方法300从操作302行进到操作304,其中服务器计算机102将事件处理程序关联到事件。由此,如将在此详细解释的,与事件处理程序相关联的事件和/或链接到事件处理程序的事件的发生可导致对事件处理程序的调用和/或执行。如将在此参考图4将更加详细解释的,服务器计算机102可被配置为响应于诸如对应用数据108的创建、更新和/或删除操作之类的各种事件来查询应用元数据110。服务器计算机102可查询应用元数据110来标识并调用与应用数据108相关联的事件处理程序,应用数据108由应用元数据110来描述。
方法300从操作304前进到操作306,其中服务器计算机102确定是否要创建另一事件处理程序。例如,如以上解释的,用户可经由通过一个或多个UI的与服务器计算机102的交互来创建一个或多个事件处理程序。由此,用户或其他实体可在任何特定时间创建一个或多个事件处理程序。如果服务器计算机102在操作306确定要创建附加的事件处理程序,则方法300返回到操作302来创建另一事件处理程序。可以理解的是,如果事件处理程序是经由一个或多个UI创建的,则确定要创建另一事件处理程序可包括确定该一个或多个UI没有被关闭和/或用户或其他实体继续与该一个或多个UI交互。应该理解,该实施例是示例性的,并且不应被解释为以任何方式构成限制。
步骤302-306可被迭代直到服务器计算机102在操作306的任一迭代中确定不创建附加的事件处理程序。如果服务器计算机102在操作306确定不要创建附加的事件处理程序,则方法300行进到操作308。方法300在操作308处结束。
现在转到图4,将详细描述用于提供对数据的基于元数据的事件支持操作的方法400的各方面。方法400在操作402处开始,其中服务器计算机102接收到对对应于应用数据108的表的CUD操作。在一示例性实施例中,用户或其他实体向服务器计算机102提交操作120以用于在顾客或帐户表中创建顾客或帐户,其能被存储为应用数据108或应用数据108的一部分。如果需要,可经由与一个或多个UI的交互来创建顾客或帐户。响应于接收到一个或多个用于创建顾客或帐户的操作120,服务器计算机102可更新应用数据108来反映改变。
方法从操作402行进到操作404,其中服务器计算机102查询应用元数据110来标识与在操作402中接收到的对应用数据108的操作120相关联的事件处理程序。更具体的,服务器计算机102查询应用元数据110来确定与服务器计算机102接收到的操作120相关联的任何事件处理程序是否由应用元数据110来描述。在以上的示例性实施例中,服务器计算机102查询应用元数据110来确定应用元数据110是否描述被绑定到顾客表中顾客的创建的任何事件处理程序。应该理解,该顾客创建的实施例是示例性的,并且不应被解释为以任何方式构成限制。
方法400从操作404行进到操作406,其中服务器计算机102确定应用元数据110是否描述与在操作402接收到的创建、更新或删除操作120相对应的任何事件处理程序,确定可基于以上关于操作404描述的对应用元数据110的查询。如果应用服务器102在操作406中确定与在操作402接收到的创建、更新或删除操作120相对应的事件处理程序是由应用元数据110描述的,则方法400行进到操作408,其中服务器计算机102标识与创建、更新或删除操作120相对应的一个或多个事件处理程序。尽管未在图4中示出,但是从图2的描述中可以清楚地得出,相对于特定的操作120,任意数量的事件处理程序可由应用元数据110来描述。由此,在某些实施例中,操作408包括标识多于一个的事件处理程序并且确定事件处理程序要被调用的次序。
继续以上创建顾客的示例,当创建顾客时,与一个或多个顾客表对应的应用元数据110可被链接到一个或多个事件处理程序以用于采取动作。例如,如果新的顾客被创建,则事件处理程序可被调用以用于更新顾客联系信息数据库或电子表格、更新用于广告的电子邮件列表或市场信息、生成欢迎新顾客的消息或内容、其他目的等等。根据各个实施例,可指定或确定一个或多个事件处理程序与之相对应的和/或其他动作按此被调用的一个或多个次序。在以上的示例中,在用于创建顾客帐户和相关联的顾客号的事件处理程序被调用之后,可调用用于调用邮件程序来向顾客发送欢迎消息的事件处理程序。由此,欢迎消息可包括所创建的顾客号。应该理解,该实施例是示例性的,并且不应被解释为以任何方式构成限制。
方法400从操作408行进到操作410,其中服务器计算机102调用事件处理程序。更具体的,在操作410中,如果想要的,服务器计算机102可按确定的一个或多个次序来调用事件处理程序。应当理解的是,可经由调用事件处理程序来提示一个或多个系统、设备和/或其他实体的动作。从操作410,或如果服务器计算机102在操作406中确定与操作410中接收到的创建、更新或删除操作120相对应的事件处理程序没有由应用元数据110来描述,方法400行进到操作412。方法400在操作412处结束。
图5示出了能够执行在此所述的用于提供对数据的基于元数据的事件支持操作的软件组件的示例性计算机架构500。因此,图5中所示的计算机架构500示出了用于移动电话、PDA、智能电话、诸如服务器计算机102之类的服务器计算机、台式计算机、上网本计算机、平板计算机和/或膝上型计算机的架构。计算机架构500可用于执行本文所呈现的软件组件的任何方面。
图5所示的计算机架构500包括中央处理单元502(“CPU”)、包括随机存取存储器504(“RAM”)和只读存储器(“ROM”)506的系统存储器508、以及将存储器504耦合至CPU 502的系统总线510。基本输入/输出系统被存储在ROM 508中,该系统包含帮助诸如在启动期间计算机架构500中的元件之间传递信息的基本例程。计算机架构500还包括用于存储操作系统514、服务器应用106、应用数据108和应用元数据110的大容量存储设备512。
大容量存储设备512通过连接至总线510的大容量存储控制器(未示出)连接到CPU 502。大容量存储设备512及其相关联的计算机可读介质为计算机架构500提供非易失性存储。虽然对此处包含的计算机可读介质的描述引用了诸如硬盘或CD-ROM驱动器之类的大容量存储设备,但是本领域的技术人员应该明白,计算机可读介质可以是可由计算机体系结构500访问的任何可用计算机存储介质或通信介质。
通信介质包括诸如载波或其它传输机制等已调制数据信号中的计算机可读指令、数据结构、程序模块或其它数据,且包含任何传递介质。术语“已调制数据信号”指的是其一个或多个特征以在信号中编码信息的方式被更改或设定的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接之类的有线介质,以及诸如声学、RF、红外及其他无线介质之类的无线介质。上述的任意组合也应包括在计算机可读介质的范围之内。
作为示例而非限制,计算机存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。例如,计算机介质包括但不限于,RAM、ROM、EPROM、EEPROM、闪存或其他固态存储器技术、CD-ROM、数字多功能盘(“DVD”)、HD-DVD、蓝光(BLU-RAY)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备、或能用于存储所需信息且可以由计算机体系结构500访问的任何其他介质。为了权利要求书的目的,短语“计算机存储介质”及其变型不包括波、信号和/或其他瞬态和/或无形通信介质本身。
根据各实施例,计算机架构500可以使用通过诸如网络104之类的网络到远程计算机的逻辑连接来在联网环境中操作。计算机架构500可以通过连接至总线516的网络接口单元510来连接到网络104。应当理解,网络接口单元516也可以用于连接至其它类型的网络和远程计算机系统,例如应用数据储存库112、客户机114和/或其他设备、系统和/或网络。计算机架构500还可以包括用于接收和处理来自多个其他设备的输入的输入/输出控制器518,这些设备包括键盘、鼠标或者电子指示笔(未在图5中示出)。类似地,输入/输出控制器518可以提供至显示屏、打印机或其他类型的输出设备(也未在图5中示出)的输出。
应当理解,本文所描述的软件组件在被加载到CPU 502中并被执行时可以将CPU 502和总体计算机架构500从通用计算系统变换成为方便本文所提出的功能而定制的专用计算系统。CPU 502可以用任意数量的晶体管或其他分立的电路元件(它们可以分别地或共同地呈现任意数量的状态)构建。更具体地,CPU 502可以响应于包含在本文所公开的软件模块中的可执行指令来作为有限状态机操作。这些计算机可执行指令可以通过指定CPU 502如何在各状态之间转换来变换CPU 502,由此变换了构成CPU 502的晶体管或其它分立硬件元件。
对本文所提出的软件模块的编码也可变换本文所提出的计算机可读介质的物理结构。在本说明书的不同实现中,物理结构的具体变换可取决于各种因素。这样的因素的示例可以包括,但不仅限于:用于实现计算机可读介质的技术、计算机可读介质被表征为主存储器还是辅存储器等等。例如,如果计算机可读介质被实现为基于半导体的存储器,则本文所公开的软件可以通过变换半导体存储器的物理状态而编码在计算机可读介质上。例如,软件可以变换构成半导体存储器的晶体管、电容器或其它分立电路元件的状态。软件还可变换这些组件的物理状态以在其上存储数据。
作为另一示例,本文所公开的计算机可读介质可以使用磁或光技术来实现。在这些实现中,本文所提出的软件可以在其中编码了软件时变换磁或光介质的物理状态。这些变换可以包括改变给定磁性介质内的特定位置的磁性。这些变换还可以包括改变给定光学介质内的特定位置的物理特征或特性,以改变这些位置的光学特性。在没有偏离本说明书的范围和精神的情况下,物理介质的其他转换也是可以的,前面提供的示例只是为了便于此讨论。
鉴于以上内容,应当理解,在计算机架构500中发生许多类型的物理变换以便存储并执行本文所提出的软件组件。还应当理解,计算机架构500可包括其它类型的计算设备,包括手持式计算机、嵌入式计算机系统、个人数字助理、以及本领域技术人员已知的其它类型的计算设备。还可以构想的是,计算机架构500可以不包括图5所示的全部组件、可以包括未在图5中明确示出的其他组件、或者可利用完全不同于图5所示的架构。
基于上述内容,应当理解,在此已经公开了用于提供对数据的基于元数据的事件支持操作的技术。尽管用对计算机结构特征、方法和变换动作、特定计算机器和计算机可读介质专用的语言描述了本文所提出的主题,但可以理解,所附权利要求书中定义的本发明不必限于本文所述的具体特征、动作或介质。相反,这些具体特征、动作和介质是作为实现权利要求的示例形式来公开的。
上述主题仅作为说明提供,并且不应被解释为限制。可对此处所述的主题作出各种修改和改变,而不必遵循所示和所述的示例实施例和应用,且不背离所附权利要求书中所述的本发明的真正精神和范围。
Claims (10)
1.一种计算机实现的用于调用事件处理程序的方法,所述计算机实现的方法包括执行计算机实现的操作,用于:
检测对与应用元数据(110)相关联的应用数据(108)的操作(120),所述应用数据包括具有记录的表,其中所述应用数据根据发布和订阅模型来发布,其中所述表包括对一个或多个代表的引用,所述一个或多个代表包括预操作代表或后操作代表中的至少一个,并且其中如果对所述应用数据的所述操作完成,则通知一个或多个订阅者;
响应于检测到对所述应用数据(108)的操作,确定所述应用元数据(110)是否包括描述与对所述应用数据(108)的所述操作(120)相关联的一个或多个事件处理程序的数据,其中所述一个或多个事件处理程序引用类上的方法;
响应于确定所述应用元数据(110)包括描述所述一个或多个事件处理程序的数据,标识所述一个或多个事件处理程序并调用所述一个或多个事件处理程序,其中调用所述一个或多个事件处理程序包括:标识多个事件处理程序,确定所述多个事件处理程序要按其被调用的次序,以及根据所确定的次序来调用所述事件处理程序。
2.如权利要求1所述的方法,其特征在于,对所述应用数据的操作包括在所述表中创建新的记录。
3.如权利要求1所述的方法,其特征在于,对所述应用数据的操作包括更新所述表中所述多个记录之一。
4.如权利要求1所述的方法,其特征在于,对所述应用数据的操作包括删除所述表中所述多个记录之一。
5.如权利要求1所述的方法,其特征在于,所述操作包括修改所述表中的所述多个记录之一。
6.如权利要求5所述的方法,其特征在于,所述事件处理程序经由一个或多个代表来调用。
7.如权利要求6所述的方法,其特征在于,确定所述应用元数据是否包括所述一个或多个事件处理程序包括,查询所述应用元数据以确定一个或多个事件处理程序是否与所述表相关联。
8.如权利要求1所述的方法,其特征在于,还包括通过创建事件处理程序并将所述事件处理程序与同所述应用数据相关联的表相关联来指定所述一个或多个事件处理程序。
9.如权利要求1所述的方法,其特征在于,还包括:
执行被调用的所述多个事件处理程序中的每一个事件处理程序的方法。
10.一种计算机实现的用于调用事件处理程序的方法,包括:
在与应用数据(108)相关联的应用元数据(110)中指定事件处理程序,其中指定事件处理程序包括创建事件处理程序并将所述事件处理程序与所述应用数据(108)相关联,其中所述应用数据包括具有记录的表,其中所述应用数据根据发布和订阅模型来发布,其中所述表包括对一个或多个代表的引用,所述一个或多个代表包括预操作代表或后操作代表中的至少一个;
与所述应用元数据(110)一起存储所述事件处理程序;
接收用于与所述应用数据(108)进行交互的操作(120);
响应于接收到所述操作(120),修改所述应用数据(108),其中如果对所述应用数据的所述操作完成,则通知一个或多个订阅者;
确定所述应用元数据(110)是否包括描述与所述应用数据(108)相关联的一个或多个事件处理程序的数据,其中所述一个或多个事件处理程序引用类上的方法;以及
响应于确定所述应用元数据(110)包括描述所述一个或多个事件处理程序的数据,
标识所述一个或多个事件处理程序,以及
调用所述一个或多个事件处理程序,包括:标识多个事件处理程序,确
定所述多个事件处理程序要按其被调用的次序,以及根据所确定的次序
来调用所述事件处理程序。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/969,587 | 2010-12-16 | ||
US12/969,587 US8793706B2 (en) | 2010-12-16 | 2010-12-16 | Metadata-based eventing supporting operations on data |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102591645A CN102591645A (zh) | 2012-07-18 |
CN102591645B true CN102591645B (zh) | 2015-05-27 |
Family
ID=46236268
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110440149.8A Active CN102591645B (zh) | 2010-12-16 | 2011-12-15 | 对数据的基于元数据的事件支持操作 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8793706B2 (zh) |
CN (1) | CN102591645B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9977814B2 (en) * | 2011-11-04 | 2018-05-22 | Salesforce.Com, Inc. | Custom metadata in loosely coupled triggers |
JP6378356B2 (ja) * | 2014-03-31 | 2018-08-22 | 華為技術有限公司Huawei Technologies Co.,Ltd. | イベント処理システム |
CN107861958B (zh) * | 2016-09-22 | 2021-10-01 | 腾讯科技(深圳)有限公司 | 一种元数据同步方法及装置 |
US10324993B2 (en) | 2016-12-05 | 2019-06-18 | Google Llc | Predicting a search engine ranking signal value |
US10684950B2 (en) | 2018-03-15 | 2020-06-16 | Bank Of America Corporation | System for triggering cross channel data caching |
US20210089403A1 (en) * | 2019-09-20 | 2021-03-25 | Samsung Electronics Co., Ltd. | Metadata table management scheme for database consistency |
US11265396B1 (en) | 2020-10-01 | 2022-03-01 | Bank Of America Corporation | System for cross channel data caching for performing electronic activities |
US20220350645A1 (en) * | 2021-04-28 | 2022-11-03 | EMC IP Holding Company, LLC | Queue Management System and Method |
US11880307B2 (en) | 2022-06-25 | 2024-01-23 | Bank Of America Corporation | Systems and methods for dynamic management of stored cache data based on predictive usage information |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006017418A2 (en) * | 2004-08-02 | 2006-02-16 | Justsystems Corporation | Document processing and management approach for assigning an event to an action in a markup language environment |
CN101322096A (zh) * | 2005-12-05 | 2008-12-10 | 微软公司 | 元数据驱动的用户界面 |
CN101326515A (zh) * | 2005-12-09 | 2008-12-17 | 微软公司 | 元数据驱动的应用程序部署 |
Family Cites Families (167)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5257577A (en) | 1991-04-01 | 1993-11-02 | Clark Melvin D | Apparatus for assist in recycling of refuse |
US6014138A (en) | 1994-01-21 | 2000-01-11 | Inprise Corporation | Development system with methods for improved visual programming with hierarchical object explorer |
US5606609A (en) | 1994-09-19 | 1997-02-25 | Scientific-Atlanta | Electronic document verification system and method |
US5594660A (en) | 1994-09-30 | 1997-01-14 | Cirrus Logic, Inc. | Programmable audio-video synchronization method and apparatus for multimedia systems |
US5642502A (en) | 1994-12-06 | 1997-06-24 | University Of Central Florida | Method and system for searching for relevant documents from a text database collection, using statistical ranking, relevancy feedback and small pieces of text |
DE69523939T2 (de) | 1995-06-07 | 2002-05-29 | Ibm | Verfahren zur erzeugung von objektstrukturen für den zugriff auf konventionelle, nicht objekt-orientierte geschäftsanwendungen |
US5933851A (en) | 1995-09-29 | 1999-08-03 | Sony Corporation | Time-stamp and hash-based file modification monitor with multi-user notification and method thereof |
US5974455A (en) | 1995-12-13 | 1999-10-26 | Digital Equipment Corporation | System for adding new entry to web page table upon receiving web page including link to another web page not having corresponding entry in web page table |
US5933645A (en) | 1996-03-19 | 1999-08-03 | Oracle Corporation | Non-invasive extensibility of software applications |
US5790789A (en) | 1996-08-02 | 1998-08-04 | Suarez; Larry | Method and architecture for the creation, control and deployment of services within a distributed computer environment |
US5745890A (en) | 1996-08-09 | 1998-04-28 | Digital Equipment Corporation | Sequential searching of a database index using constraints on word-location pairs |
US6745388B1 (en) | 1997-01-08 | 2004-06-01 | International Business Machines Corporation | Expanded object model including roles |
US6285999B1 (en) | 1997-01-10 | 2001-09-04 | The Board Of Trustees Of The Leland Stanford Junior University | Method for node ranking in a linked database |
US6233726B1 (en) | 1997-02-05 | 2001-05-15 | Sybase, Inc. | Development system with reference card and parameter wizard methodologies for facilitating creation of software programs |
US5960383A (en) | 1997-02-25 | 1999-09-28 | Digital Equipment Corporation | Extraction of key sections from texts using automatic indexing techniques |
US5848404A (en) | 1997-03-24 | 1998-12-08 | International Business Machines Corporation | Fast query search in large dimension database |
US6256675B1 (en) | 1997-05-06 | 2001-07-03 | At&T Corp. | System and method for allocating requests for objects and managing replicas of objects on a network |
US6158044A (en) | 1997-05-21 | 2000-12-05 | Epropose, Inc. | Proposal based architecture system |
US6012053A (en) | 1997-06-23 | 2000-01-04 | Lycos, Inc. | Computer system with user-controlled relevance ranking of search results |
JPH1125119A (ja) | 1997-06-30 | 1999-01-29 | Canon Inc | ハイパーテキスト閲覧システム |
US6108661A (en) | 1997-07-14 | 2000-08-22 | Microsoft Corporation | System for instance customization |
US6070191A (en) | 1997-10-17 | 2000-05-30 | Lucent Technologies Inc. | Data distribution techniques for load-balanced fault-tolerant web access |
US6351467B1 (en) | 1997-10-27 | 2002-02-26 | Hughes Electronics Corporation | System and method for multicasting multimedia content |
US6128701A (en) | 1997-10-28 | 2000-10-03 | Cache Flow, Inc. | Adaptive and predictive cache refresh policy |
US6594682B2 (en) | 1997-10-28 | 2003-07-15 | Microsoft Corporation | Client-side system for scheduling delivery of web content and locally managing the web content |
US6078743A (en) | 1997-11-24 | 2000-06-20 | International Business Machines Corporation | Generic IDE interface support for scripting |
US6389436B1 (en) | 1997-12-15 | 2002-05-14 | International Business Machines Corporation | Enhanced hypertext categorization using hyperlinks |
US6145003A (en) | 1997-12-17 | 2000-11-07 | Microsoft Corporation | Method of web crawling utilizing address mapping |
US6185558B1 (en) | 1998-03-03 | 2001-02-06 | Amazon.Com, Inc. | Identifying the items most relevant to a current query based on items selected in connection with similar queries |
US6125361A (en) | 1998-04-10 | 2000-09-26 | International Business Machines Corporation | Feature diffusion across hyperlinks |
US6151595A (en) | 1998-04-17 | 2000-11-21 | Xerox Corporation | Methods for interactive visualization of spreading activation using time tubes and disk trees |
US6098064A (en) | 1998-05-22 | 2000-08-01 | Xerox Corporation | Prefetching and caching documents according to probability ranked need S list |
US6182085B1 (en) | 1998-05-28 | 2001-01-30 | International Business Machines Corporation | Collaborative team crawling:Large scale information gathering over the internet |
US6381734B1 (en) | 1998-06-03 | 2002-04-30 | Microsoft Corporation | Method, software and apparatus for referencing a method in object-based programming |
ATE263988T1 (de) | 1998-06-08 | 2004-04-15 | Kcsl Inc | Methode und verfahren um relevante dokumente in einer datenbank zu finden |
US6638314B1 (en) | 1998-06-26 | 2003-10-28 | Microsoft Corporation | Method of web crawling utilizing crawl numbers |
US6442620B1 (en) | 1998-08-17 | 2002-08-27 | Microsoft Corporation | Environment extensibility and automatic services for component applications using contexts, policies and activators |
US6430705B1 (en) | 1998-08-21 | 2002-08-06 | Advanced Micro Devices, Inc. | Method for utilizing virtual hardware descriptions to allow for multi-processor debugging in environments using varying processor revision levels |
US6549897B1 (en) | 1998-10-09 | 2003-04-15 | Microsoft Corporation | Method and system for calculating phrase-document importance |
US6385602B1 (en) | 1998-11-03 | 2002-05-07 | E-Centives, Inc. | Presentation of search results using dynamic categorization |
US6360215B1 (en) | 1998-11-03 | 2002-03-19 | Inktomi Corporation | Method and apparatus for retrieving documents based on information other than document content |
US6779184B1 (en) | 1999-01-21 | 2004-08-17 | Oracle International Corporation | Method for loosely coupling object oriented and non-object oriented applications in a messaging-based communication infrastructure |
US6922699B2 (en) | 1999-01-26 | 2005-07-26 | Xerox Corporation | System and method for quantitatively representing data objects in vector space |
US6418433B1 (en) | 1999-01-28 | 2002-07-09 | International Business Machines Corporation | System and method for focussed web crawling |
US6789252B1 (en) | 1999-04-15 | 2004-09-07 | Miles D. Burke | Building business objects and business software applications using dynamic object definitions of ingrediential objects |
US6304864B1 (en) | 1999-04-20 | 2001-10-16 | Textwise Llc | System for retrieving multimedia information from the internet using multiple evolving intelligent agents |
US6327590B1 (en) | 1999-05-05 | 2001-12-04 | Xerox Corporation | System and method for collaborative ranking of search results employing user and group profiles derived from document collection content analysis |
US6336211B1 (en) | 1999-05-20 | 2002-01-01 | Xilinx, Inc. | Method and apparatus for implementing type-safe heterogeneous property lists |
US6547829B1 (en) | 1999-06-30 | 2003-04-15 | Microsoft Corporation | Method and system for detecting duplicate documents in web crawls |
US7152228B2 (en) | 1999-07-08 | 2006-12-19 | Science Applications International Corporation | Automatically generated objects within extensible object frameworks and links to enterprise resources |
US6631497B1 (en) | 1999-07-19 | 2003-10-07 | International Business Machines Corporation | Binding data from data source to cells in a spreadsheet |
US7181438B1 (en) | 1999-07-21 | 2007-02-20 | Alberti Anemometer, Llc | Database access system |
US6442606B1 (en) | 1999-08-12 | 2002-08-27 | Inktomi Corporation | Method and apparatus for identifying spoof documents |
US6356933B2 (en) | 1999-09-07 | 2002-03-12 | Citrix Systems, Inc. | Methods and apparatus for efficiently transmitting interactive application data between a client and a server using markup language |
US6405212B1 (en) | 1999-09-27 | 2002-06-11 | Oracle Corporation | Database system event triggers |
US6449624B1 (en) | 1999-10-18 | 2002-09-10 | Fisher-Rosemount Systems, Inc. | Version control and audit trail in a process control system |
US6484276B1 (en) | 1999-10-25 | 2002-11-19 | Lucent Technologies Inc. | Method and apparatus for providing extensible object-oriented fault injection |
US6351755B1 (en) | 1999-11-02 | 2002-02-26 | Alta Vista Company | System and method for associating an extensible set of data with documents downloaded by a web crawler |
US6418452B1 (en) | 1999-11-03 | 2002-07-09 | International Business Machines Corporation | Network repository service directory for efficient web crawling |
US6418453B1 (en) | 1999-11-03 | 2002-07-09 | International Business Machines Corporation | Network repository service for efficient web crawling |
US6539376B1 (en) | 1999-11-15 | 2003-03-25 | International Business Machines Corporation | System and method for the automatic mining of new relationships |
US7016540B1 (en) | 1999-11-24 | 2006-03-21 | Nec Corporation | Method and system for segmentation, classification, and summarization of video images |
US20010047385A1 (en) | 1999-12-30 | 2001-11-29 | Jeffrey Tuatini | Passthru to shared service funtionality |
AU2001227857A1 (en) | 2000-01-14 | 2001-07-24 | Saba Software, Inc. | Method and apparatus for a business applications management system platform |
US6883135B1 (en) | 2000-01-28 | 2005-04-19 | Microsoft Corporation | Proxy server using a statistical model |
US7240067B2 (en) | 2000-02-08 | 2007-07-03 | Sybase, Inc. | System and methodology for extraction and aggregation of data from dynamic content |
US20050091576A1 (en) | 2003-10-24 | 2005-04-28 | Microsoft Corporation | Programming interface for a computer platform |
US6742054B1 (en) | 2000-04-07 | 2004-05-25 | Vitria Technology, Inc. | Method of executing a data transformation specification |
US20010030667A1 (en) | 2000-04-10 | 2001-10-18 | Kelts Brett R. | Interactive display interface for information objects |
US6871344B2 (en) | 2000-04-24 | 2005-03-22 | Microsoft Corporation | Configurations for binding software assemblies to application programs |
AU2001264713A1 (en) | 2000-05-19 | 2001-12-03 | Wu-Hon Francis Leung | Methods and apparatus for preventing software modifications from invalidating previously passed integration tests |
US6741986B2 (en) | 2000-12-08 | 2004-05-25 | Ingenuity Systems, Inc. | Method and system for performing information extraction and quality control for a knowledgebase |
US6772160B2 (en) | 2000-06-08 | 2004-08-03 | Ingenuity Systems, Inc. | Techniques for facilitating information acquisition and storage |
US6625804B1 (en) | 2000-07-06 | 2003-09-23 | Microsoft Corporation | Unified event programming model |
US6850922B1 (en) | 2000-07-14 | 2005-02-01 | International Business Machines Corporation | Business logic support |
US20030167229A1 (en) | 2001-04-03 | 2003-09-04 | Bottomline Technologies, Inc. | Modular business transations platform |
US7080073B1 (en) | 2000-08-18 | 2006-07-18 | Firstrain, Inc. | Method and apparatus for focused crawling |
US20030217052A1 (en) | 2000-08-24 | 2003-11-20 | Celebros Ltd. | Search engine method and apparatus |
US6961900B1 (en) | 2000-08-28 | 2005-11-01 | Microsoft Corporation | Rendering data according to a present schema from an origin response message |
US6598051B1 (en) | 2000-09-19 | 2003-07-22 | Altavista Company | Web page connectivity server |
US6668370B1 (en) | 2000-09-21 | 2003-12-23 | International Business Machines Corporation | Synchronous execution of object-oriented scripts and procedural code from within an interactive test facility |
US6560600B1 (en) | 2000-10-25 | 2003-05-06 | Alta Vista Company | Method and apparatus for ranking Web page search results |
WO2002035351A1 (en) | 2000-10-26 | 2002-05-02 | Navision A/S | A system and method supporting configurable object definitions |
US6622140B1 (en) | 2000-11-15 | 2003-09-16 | Justsystem Corporation | Method and apparatus for analyzing affect and emotion in text |
US6842761B2 (en) | 2000-11-21 | 2005-01-11 | America Online, Inc. | Full-text relevancy ranking |
US6826581B2 (en) | 2000-12-06 | 2004-11-30 | Intel Corporation | Upgrading a device over a network by downloading results of command execution from script file |
US20020078045A1 (en) | 2000-12-14 | 2002-06-20 | Rabindranath Dutta | System, method, and program for ranking search results using user category weighting |
US7356530B2 (en) | 2001-01-10 | 2008-04-08 | Looksmart, Ltd. | Systems and methods of retrieving relevant information |
US20020103798A1 (en) | 2001-02-01 | 2002-08-01 | Abrol Mani S. | Adaptive document ranking method based on user behavior |
US20020107886A1 (en) | 2001-02-07 | 2002-08-08 | Gentner Donald R. | Method and apparatus for automatic document electronic versioning system |
US7225361B2 (en) | 2001-02-28 | 2007-05-29 | Wily Technology, Inc. | Detecting a stalled routine |
US6951022B1 (en) * | 2001-03-14 | 2005-09-27 | Microsoft Corporation | Delegate-based event handling |
US7203678B1 (en) | 2001-03-27 | 2007-04-10 | Bea Systems, Inc. | Reconfigurable query generation system for web browsers |
US7856420B2 (en) | 2001-04-19 | 2010-12-21 | Hewlett-Packard Development Company, L.P. | Zero latency enterprise enriched publish/subscribe |
US7188106B2 (en) | 2001-05-01 | 2007-03-06 | International Business Machines Corporation | System and method for aggregating ranking results from various sources to improve the results of web searching |
US6738764B2 (en) | 2001-05-08 | 2004-05-18 | Verity, Inc. | Apparatus and method for adaptively ranking search results |
US7392546B2 (en) | 2001-06-11 | 2008-06-24 | Bea Systems, Inc. | System and method for server security and entitlement processing |
US20040230572A1 (en) | 2001-06-22 | 2004-11-18 | Nosa Omoigui | System and method for semantic knowledge retrieval, management, capture, sharing, discovery, delivery and presentation |
WO2003015000A1 (en) | 2001-08-08 | 2003-02-20 | Trivium Systems Inc. | Workflow engine for automating business processes in scalable multiprocessor computer platforms |
EP1425662A4 (en) | 2001-08-17 | 2007-08-01 | Wu-Hon Francis Leung | PROCESS FOR ADDING NEW SOFTWARE FEATURES WITHOUT MODIFICATION EXISTING CODES |
US20030037310A1 (en) | 2001-08-18 | 2003-02-20 | David Ge | Visual programming tool and execution environment for developing computer software applications |
US7076483B2 (en) | 2001-08-27 | 2006-07-11 | Xyleme Sa | Ranking nodes in a graph |
US6766422B2 (en) | 2001-09-27 | 2004-07-20 | Siemens Information And Communication Networks, Inc. | Method and system for web caching based on predictive usage |
US20030135384A1 (en) | 2001-09-27 | 2003-07-17 | Huy Nguyen | Workflow process method and system for iterative and dynamic command generation and dynamic task execution sequencing including external command generator and dynamic task execution sequencer |
US6901595B2 (en) | 2001-09-29 | 2005-05-31 | Siebel Systems, Inc. | Method, apparatus, and system for implementing a framework to support a web-based application |
US7080092B2 (en) | 2001-10-18 | 2006-07-18 | Bea Systems, Inc. | Application view component for system integration |
US20030101251A1 (en) | 2001-11-27 | 2003-05-29 | Varros Telecom | Customizable element management system and method using element modeling and protocol adapters |
US7062502B1 (en) | 2001-12-28 | 2006-06-13 | Kesler John N | Automated generation of dynamic data entry user interface for relational database management systems |
US7693830B2 (en) | 2005-08-10 | 2010-04-06 | Google Inc. | Programmable search engine |
US7627631B2 (en) | 2002-05-02 | 2009-12-01 | Bea Systems, Inc. | Systems and methods for collaborative business plug-ins |
US20030221165A1 (en) | 2002-05-22 | 2003-11-27 | Microsoft Corporation | System and method for metadata-driven user interface |
AU2003243533A1 (en) | 2002-06-12 | 2003-12-31 | Jena Jordahl | Data storage, retrieval, manipulation and display tools enabling multiple hierarchical points of view |
EP1376337A1 (en) | 2002-06-12 | 2004-01-02 | Commerce One Operations, Inc. | Action/command/business object application framework |
US20030233477A1 (en) | 2002-06-17 | 2003-12-18 | Microsoft Corporation | Extensible infrastructure for manipulating messages communicated over a distributed network |
US7177859B2 (en) | 2002-06-26 | 2007-02-13 | Microsoft Corporation | Programming model for subscription services |
US20040056894A1 (en) | 2002-09-19 | 2004-03-25 | Igor Zaika | System and method for describing and instantiating extensible user interfaces |
US6886010B2 (en) | 2002-09-30 | 2005-04-26 | The United States Of America As Represented By The Secretary Of The Navy | Method for data and text mining and literature-based discovery |
US7472401B2 (en) | 2003-02-28 | 2008-12-30 | Bea Systems, Inc. | Computer product for a dynamically generated wrapper class |
US7650572B2 (en) | 2003-02-28 | 2010-01-19 | Bea Systems, Inc. | Graphical user interface navigation method |
US7080089B2 (en) | 2003-03-12 | 2006-07-18 | Microsoft Corporation | Customization of process logic in a software system |
US7085752B2 (en) | 2003-03-12 | 2006-08-01 | Microsoft Corporation | Customization of metadata describing objects in a computing environment |
US20040181515A1 (en) | 2003-03-13 | 2004-09-16 | International Business Machines Corporation | Group administration of universal resource identifiers with members identified in search result |
US20040186764A1 (en) | 2003-03-18 | 2004-09-23 | Mcneill Kevin M. | Method and system for evaluating business service relationships |
US7197512B2 (en) | 2003-03-26 | 2007-03-27 | Microsoft Corporation | Type bridges |
US7124145B2 (en) | 2003-03-27 | 2006-10-17 | Millennium It (Usa) Inc. | System and method for dynamic business logic rule integration |
US7028029B2 (en) | 2003-03-28 | 2006-04-11 | Google Inc. | Adaptive computation of ranking |
US7451130B2 (en) | 2003-06-16 | 2008-11-11 | Google Inc. | System and method for providing preferred country biasing of search results |
US7912820B2 (en) | 2003-06-06 | 2011-03-22 | Microsoft Corporation | Automatic task generator method and system |
US8027922B2 (en) | 2003-07-14 | 2011-09-27 | Sprint Communications Company L.P. | Integration infrastructure |
US7293253B1 (en) | 2003-09-12 | 2007-11-06 | Nortel Networks Limited | Transparent interface migration using a computer-readable mapping between a first interface and a second interface to auto-generate an interface wrapper |
US7693827B2 (en) | 2003-09-30 | 2010-04-06 | Google Inc. | Personalization of placed content ordering in search results |
US7346839B2 (en) | 2003-09-30 | 2008-03-18 | Google Inc. | Information retrieval based on historical data |
US20050071328A1 (en) | 2003-09-30 | 2005-03-31 | Lawrence Stephen R. | Personalization of web search |
US7552109B2 (en) | 2003-10-15 | 2009-06-23 | International Business Machines Corporation | System, method, and service for collaborative focused crawling of documents on a network |
US20050086192A1 (en) | 2003-10-16 | 2005-04-21 | Hitach, Ltd. | Method and apparatus for improving the integration between a search engine and one or more file servers |
US7313756B2 (en) | 2003-12-15 | 2007-12-25 | Microsoft Corporation | Schema editor extensions |
US7698348B2 (en) | 2003-12-19 | 2010-04-13 | Kinaxis Holdings Inc. | Extended database engine providing versioning and embedded analytics |
US20060047649A1 (en) | 2003-12-29 | 2006-03-02 | Ping Liang | Internet and computer information retrieval and mining with intelligent conceptual filtering, visualization and automation |
US20050144162A1 (en) | 2003-12-29 | 2005-06-30 | Ping Liang | Advanced search, file system, and intelligent assistant agent |
US7690000B2 (en) | 2004-01-08 | 2010-03-30 | Microsoft Corporation | Metadata journal for information technology systems |
US7483891B2 (en) | 2004-01-09 | 2009-01-27 | Yahoo, Inc. | Content presentation and management system associating base content and relevant additional content |
US7197586B2 (en) | 2004-01-14 | 2007-03-27 | International Business Machines Corporation | Method and system for recording events of an interrupt using pre-interrupt handler and post-interrupt handler |
US7509653B2 (en) | 2004-01-22 | 2009-03-24 | International Business Machines Corporation | Efficient and scalable event partitioning in business integration applications using multiple delivery queues |
US7499913B2 (en) | 2004-01-26 | 2009-03-03 | International Business Machines Corporation | Method for handling anchor text |
US7310632B2 (en) | 2004-02-12 | 2007-12-18 | Microsoft Corporation | Decision-theoretic web-crawling and predicting web-page change |
US7281002B2 (en) | 2004-03-01 | 2007-10-09 | International Business Machine Corporation | Organizing related search results |
US20050203956A1 (en) | 2004-03-09 | 2005-09-15 | Dweck Jay S. | Systems and methods for facilitate state transitions for managed business objects |
EP1594049A1 (en) | 2004-05-07 | 2005-11-09 | Hewlett-Packard Development Company, L.P. | Web application framework |
US7257577B2 (en) | 2004-05-07 | 2007-08-14 | International Business Machines Corporation | System, method and service for ranking search results using a modular scoring system |
US20050267765A1 (en) | 2004-05-26 | 2005-12-01 | Jun-Jang Jeng | Apparatus and method for policy-driven business process exception handling |
US7363296B1 (en) | 2004-07-01 | 2008-04-22 | Microsoft Corporation | Generating a subindex with relevant attributes to improve querying |
US7493313B2 (en) | 2004-09-17 | 2009-02-17 | Microsoft Corporation | Durable storage of .NET data types and instances |
US8185555B2 (en) | 2004-10-22 | 2012-05-22 | International Business Machines Corporation | Model extension framework |
US9766953B2 (en) | 2004-12-16 | 2017-09-19 | Openspan, Inc. | System and method for non-programmatically constructing software solutions |
US8099713B2 (en) | 2005-01-18 | 2012-01-17 | Siemens Aktiengesellschaft | Program system, and method and system arrangement for configuring it |
US7987158B2 (en) * | 2005-02-09 | 2011-07-26 | International Business Machines Corporation | Method, system and article of manufacture for metadata replication and restoration |
US7472375B2 (en) | 2005-03-29 | 2008-12-30 | Intel Corporation | Creating managed code from native code |
US7971194B1 (en) | 2005-06-16 | 2011-06-28 | Sap Portals Israel Ltd. | Programming language techniques for client-side development and execution |
US7774713B2 (en) | 2005-06-28 | 2010-08-10 | Microsoft Corporation | Dynamic user experience with semantic rich objects |
US7945531B2 (en) | 2005-09-16 | 2011-05-17 | Microsoft Corporation | Interfaces for a productivity suite application and a hosted user interface |
US8533692B2 (en) | 2005-12-30 | 2013-09-10 | Sap Ag | Dynamic software enhancement parameters |
US7873967B2 (en) | 2006-02-27 | 2011-01-18 | Microsoft Corporation | Pluggable business logic |
US7490214B2 (en) | 2006-06-12 | 2009-02-10 | Sun Microsystems, Inc. | Relocating data from a source page to a target page by marking transaction table entries valid or invalid based on mappings to virtual pages in kernel virtual memory address space |
US20090070786A1 (en) | 2007-09-11 | 2009-03-12 | Bea Systems, Inc. | Xml-based event processing networks for event server |
US9589250B2 (en) | 2008-01-11 | 2017-03-07 | Oracle International Corporation | System and method for asset registration workflows utilizing an eventing infrastructure in a metadata repository |
US20120144367A1 (en) | 2010-12-06 | 2012-06-07 | Microsoft Corporation | Events fired pre- and post-method execution |
US20120159429A1 (en) | 2010-12-15 | 2012-06-21 | Microsoft Corporation | Metadata based eventing |
-
2010
- 2010-12-16 US US12/969,587 patent/US8793706B2/en active Active
-
2011
- 2011-12-15 CN CN201110440149.8A patent/CN102591645B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006017418A2 (en) * | 2004-08-02 | 2006-02-16 | Justsystems Corporation | Document processing and management approach for assigning an event to an action in a markup language environment |
CN101322096A (zh) * | 2005-12-05 | 2008-12-10 | 微软公司 | 元数据驱动的用户界面 |
CN101326515A (zh) * | 2005-12-09 | 2008-12-17 | 微软公司 | 元数据驱动的应用程序部署 |
Also Published As
Publication number | Publication date |
---|---|
US20120159516A1 (en) | 2012-06-21 |
US8793706B2 (en) | 2014-07-29 |
CN102591645A (zh) | 2012-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102591645B (zh) | 对数据的基于元数据的事件支持操作 | |
Keogh | J2ME: The complete reference | |
US8751437B2 (en) | Single persistence implementation of business objects | |
US20150293764A1 (en) | Method and system to compose and execute business rules | |
US9182994B2 (en) | Layering of business object models via extension techniques | |
CN108388622B (zh) | Api接口动态生成方法、装置、计算机设备及存储介质 | |
US8490053B2 (en) | Software domain model that enables simultaneous independent development of software components | |
CN102591710B (zh) | 共享对象表示 | |
CN102567797A (zh) | 用于文档生成的主模板 | |
CN112800370A (zh) | 业务单据的处理方法、装置、计算机设备和存储介质 | |
CN110825807B (zh) | 基于人工智能的数据交互转换方法、装置、设备及介质 | |
US10489167B2 (en) | Dynamically binding data in an application | |
CN102436344A (zh) | 上下文菜单 | |
US10719488B2 (en) | Configurable provider for layered repository | |
CN103150145A (zh) | 数据仓库环境中的语义分组数据的并行处理 | |
US11829707B2 (en) | Providing way to store process data object state as snapshots at different points of process | |
CN102426680A (zh) | 使用求散列的逻辑帐户表 | |
US8468159B2 (en) | Data element categorization in a service-oriented architecture | |
US20150317348A1 (en) | Gateway enablement of analytic database services | |
US20200219159A1 (en) | Real-Time Collaborative Product Configurator | |
US20210133652A1 (en) | Methods and systems for user interface interaction | |
CN113448960A (zh) | 一种导入表格文件的方法和装置 | |
CN102479077A (zh) | 一种动态构建功能操作的方法、装置及应用系统 | |
US11526366B2 (en) | Dynamically binding data in an application | |
CN117827352A (zh) | 自定义组件前后端交互的方法、装置、电子设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150721 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20150721 Address after: Washington State Patentee after: Micro soft technique license Co., Ltd Address before: Washington State Patentee before: Microsoft Corp. |