CN1371499A - 传统数据结构的对象特性元模型仿真器 - Google Patents

传统数据结构的对象特性元模型仿真器 Download PDF

Info

Publication number
CN1371499A
CN1371499A CN00812267A CN00812267A CN1371499A CN 1371499 A CN1371499 A CN 1371499A CN 00812267 A CN00812267 A CN 00812267A CN 00812267 A CN00812267 A CN 00812267A CN 1371499 A CN1371499 A CN 1371499A
Authority
CN
China
Prior art keywords
characteristic
data structure
pseudo
packaging group
class
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.)
Pending
Application number
CN00812267A
Other languages
English (en)
Inventor
埃里克·明茨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
UNITED IMAGINATIVE COMPUTER CO
CA Inc
Original Assignee
UNITED IMAGINATIVE COMPUTER CO
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by UNITED IMAGINATIVE COMPUTER CO filed Critical UNITED IMAGINATIVE COMPUTER CO
Publication of CN1371499A publication Critical patent/CN1371499A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99934Query formulation, input preparation, or translation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种包装(50)传统数据结构以使能够以面向对象程序方式使用数据结构,和使一个单一对象能够接入多个传统数据结构(40)中的有关属性的方法。在一个实施例中,为每个要代表的伪特性定义一个接口类(70)。围绕每个传统数据结构建立一个实现在抽象伪特性类中定义的接口的C++包装(50)。

Description

传统数据结构的对象特性元模型仿真器
相关申请的交叉参考
本申请要求1998年7月24日申请的美国临时申请60/094,107的利益。
发明领域
本发明涉及计算机软件程序。更具体地讲,本发明涉及面向对象的软件程序和非面向对象的软件程序之间的接口。
发明背景
面向对象编程已经成为一种日益流行的编写计算机软件的模型。“对象”包含代码(指令序列)和数据(指令对其操作的信息)。对象的使用可以改进软件的维护性,可复用性和可修改性。面向对象编程语言的例子包括C++,Smalltalk,和Java。
但是,许多比较老的软件程序是用非面向对象语言编写的。可以把这些程序称为“传统(legacy)”程序,并且可以用诸如Fortran,Basic,和C语言之类的语言编写。许多这些传统程序包括需要以新的面向对象的语言方式使用的数据结构和代码结构。重建这些数据结构以便使它们能够与面向对象语言兼容要用大量的时间和花费高昂的代价。因此,希望有一种方式把这些传统数据结构与新的面向对象的代码连接在一起。
根据上述原因,需要有一种连接传统软件应用程序和面向对象的软件应用程序的方法和系统。
发明综述
本发明的一个实施例是一种包装传统数据结构从而使面向对象程序能够仿佛它们是特性一样地操作它们的字段的方法。在一个实施例中,为每个要操作的伪特性定义一个接口类。围绕实现抽象伪特性类中定义的接口的每个传统数据结构建立一个C++包装。
附图简要说明
图1是说明一个具有数据结构的“传统”应用程序的示例输出的示意图;
图2是与例如图1中所示的用C编写的程序这样的传统程序连接的本发明的一个实施例的结构图;
图3是根据本发明的一个实施例的,当一个用户选择图1接口显示的一个构件时执行的步骤的流程图;
图4是根据本发明的一个实施例的一个OnInitData事件执行的步骤的流程图;
图5是根据本发明的一个实施例的,当接收到一个Apply消息和存储数据时执行的步骤的流程图;
图6是根据本发明的一个实施例的,当确认数据时执行的步骤的流程图;
图7是根据本发明的一个实施例的,当存储特性值时执行的步骤的流程图。
详细说明
本发明的一个实施例是一种包装传统数据结构从而使该数据结构能够以面向对象程序方式使用并且一个单一的特性页能够操作包含在所有可用数据结构中的数据的方法。在一个实施例中,为每个要操作的伪特性定义一个接口类。围绕每个实现在抽象伪特性类中定义的接口的传统数据结构建立一个C++包装。
图1是说明从一个具有数据结构的“传统”应用程序输出的示例的示意图。为了说明本专利申请,传统应用程序是一个用诸如Fortran,Basic或C语言之类的非面向对象的软件编程语言编写的应用程序。
图1的传统程序是一个包括一个图形接口10的事务处理应用程序。传统程序示出了事务处理过程并且存储事务处理过程的每个方面的数据和数据结构。
在图1所示的示例中,示出了一个“清洗狗”的处理过程。接口10包括不同的构件。例如,接口10包括方框12-14,每个方框代表一种活动。方框12代表洗涤狗的活动,方框13代表漂洗狗的活动,方框14代表干燥狗的活动。
接口10进一步包括箭头20至23。每个箭头代表活动之间的关系,包括输入和输出信息。箭头20表示把一个脏狗输入到活动12中,箭头21表示将一个擦了肥皂的狗从活动12输出并且输入到活动13。此外,箭头22表示将一个湿狗从活动13输出并且输入到活动14,箭头23表示从活动14输出了一个干净的狗。
接口10也包括一个表示在活动12和13中使用了一个浴盆的属性30。接口10还可以包括一个实体构件,和许多图1中未示出的其它类型的构件。
用户可以选择和编辑接口10的每个可见构件。例如,用户可以点击活动13,或箭头20。如果与接口10结合的程序是用C++之类的面向对象的语言编写的,那么就可以把每个构件看成是一个“类”。但是,在C之类的非面向对象语言中,它们被认为是数据结构。当选择一个要进行编辑的构件时,出现每个构件的独立的对话。
接口10的每个构件具有一个或更多的与之相关的属性或特性。属性包含在数据结构中。属性的例子包括用户可以附加到每个构件上的附注,构件名称,构件定义,构件的活动持续时间,等等。
一个属性或特性一般可以是与接口10的一个构件相关的任何值,或与接口10相关的字典中的一项,或一个列表中的一项,或任何数据结构中的一个字段。关于面向对象软件,具体化与一个对象相关的属性和特性的概念是众所周知的,并且被称为“对象特性元模型”。
接口10和与之相关的传统程序存在的一个问题是,在传统编码中每个构件(例如,箭头,活动,等等)是以实质上不同的方式表示的。例如,如上所述,每个构件可以具有一个附注属性。用程序建模的用户可以注释一个活动、一个箭头、一个数据存储、等等,以建立一个以后参考的附注。但是,传统编码包含每个构件的一个独立的对话例程。因此,传统编码需要编写一个把数据放在箭头上的第一对话,把数据放在活动上的第二对话,把数据放在数据存储上的第三对话,等等。编码独立的对话以编辑每个构件是要花费许多时间和高昂代价的。
本发明的一个实施例允许用户开发一个把一个附注放在任何一个构件上,然后从其扇出到活动、数据存储、实体、属性、等等的单一特性页。例如,一个特性页可以允许用户建立有关任意一个构件的附注和定义特性。这使得用户能够重复使用一个公共特性页设置任何一个支持它们的构件的特性。在一个实施例中,使用了C++中的继承和动态类型转换来完成这一工作。
图2是一个与图1中所示的用C语言编写的程序这样的传统程序连接的本发明的构造图。传统程序40包含多个以无规则方式散开的数据结构41-45。每个数据结构具有诸如名称、说明之类的共同特性。但是,利用C语言这样的传统编程语言无法将数据结构之间的共同特性链接到一起。本发明能够使这些共同特性连接到一起。
将一个包装模块50连接到传统程序40。包装模块50是一个用诸如C++之类的面向对象语言编写的包装对象。与包装对象连接的是每个特性的对象51-53,例如,名称对象51,说明对象52,和价格对象53。包装模块50和特性页60合作使用运行时类型标识符命令向传统程序40的数据结构发布命令。
将一个特性页或页60连接于包装对象50。特性页是用C++之类的面向对象语言编写的。
接口模块70包括本发明的其余功能。接口模块70包括一个执行在程序40的接口10中选中一个构件时进行的步骤的命中处理程序。
一般,本发明结合一个用于操作一个值的固定集的单一特性页,并且无论这些值发生在何处,都使用这个单一特性页来操作它们。因此,例如,将操作定义文本和辅助文本的特性页用于任何具有这种特性的对象。
实际上,本发明模拟一个对象/特性元模型。这种技术将特性值与包含它们的对象隔离。不是包含一个名称值,而是把一个具有一个“名称”特性的对象与“名称”特性类的一个实例结合。当系统需要一个对象的名称时,它向对象请求它的“名称”特性的值。对象扫描它的特性列表,以查找“名称”特性的一个实例,并且如果找到一个实例,那么它返回它的值。否则,它返回一个失败指示。这种过程通用于任何基本类型的任何特性。
本发明定义了一个基本包装类。新的特性页经过来源于基本包装的类与传统数据结构相互作用。这使得特性页的实现能够与传统数据结构的细节分离,并且提供了伪特性的操作的公共接口。
本发明进一步为系统中每个特性定义了一个策略类(一个基本特性类)。这些类定义了操作特性的值的方法,但是并不实现这些方法。对于像“附注”这样的简单特性,基本特性类规定了取得和设置特性的值的方法。一些特性值需要确认;这种特性的策略类定义必须公布确认方法。对于列表特性,基本特性类定义了提供接入遍历和操作特性值的迭代程序的方法。这些迭代程序本身被指定为最大灵活性的策略类。
当一个程序员要利用本发明操作与图1的接口10的一个构件结合的特性时,程序员要如下操作:
1.确定操作会影响哪些传统数据结构。在一些场合,屏幕上的构件是用多种数据结构表示的。
2.确定使哪些特性与要操作的图形构件结合和汇编或创建必要的伪特性策略接口类。
3.定义一个构件包装类。这个类是从基本包装类(以便能够接入特性页框架)和与需要操作的每个特性结合的策略类继承的。
4.实现在上一个步骤中定义的构件包装类。实现的细节取决于潜在传统数据结构的性质。
5.汇编(或实现,如果需要的话)操作希望的特性的特性页。
特性页如下操作包装的传统数据结构:
·提取和显示特性值;
·确认用户编辑(即,新的或改变的特性值);和
·把新特性值列入到包装的传统数据结构。
为了达到这一目的,程序员利用本发明的一个实施例实现特性页中的以下方法。
方法                         目的LoadFrom()    从包装的传统数据结构提取数据并将它们显示在屏幕上。Validate()    确认所有用户编辑(即,新输入的或改变的特性值)。SaveTo()      将所有用户改变列回到包装的传统数据结构。
每个方法接收一个指向一个基本包装对象的指针,并且必须经过这个指针提取操作的特性值。它们利用一种动态类型转换技术将基本包装指针转换成一个指向希望特性的策略类的指针来达到这一目的。如果类型转换成功(即,返回一个非零结果),那么特性页确保接入它的希望的特性。如果类型转换失败,那么特性页采取适当的动作。
本发明使用了这种C++动态类型转换语句,以查询包装是否存在一个伪特性。这是在传统“C”数据结构的操作过程中模拟对象/特性元模型(其中特性值与它们的拥有对象分离存储)的新方式。这种技术可以用支持运行时类型标识符的任何面向对象语言(例如,SMALLTALK,Java,EIFFEL,等等)实现。
以下的流程说明包装模块50,特性页60和接口模块70的组合功能。
图3是根据本发明的一个实施例的,在用户选择图1的接口10显示的一个构件时执行的步骤的流程图。
在步骤100,确定选择的构件的类型(例如,箭头,行为,等等)。如果可以通过接口10显示多种类型的图,那么也在步骤100确定选择的图的类型。在一个实施例中,接口10可以显示三种图类型中的一种。
在步骤110,将在步骤100中确定的信息转到一个方法论登记对象。登记对象是一个知道如何处理不同构件和图类型的代码集。这个类正确地具有系统中的一个实例。
在步骤120,方法论登记对象查找基于适当方法论用户接口(“UI”)的处理程序对象,以处理事件。每个图类型具有一个独特的处理程序对象。
在步骤130,确定适当的命中程序程序的位置。图中用户可以选择的每种类型的构件或对象具有一个命中程序程序。构件的例子包括与一个行为结合的方框,垂直或水平线段,等等。
在步骤140,将事件数据传送到步骤130定位的命中处理程序。将构件类型从事件数据中剥除,因为命中处理程序已经知道构件类型。命中处理程序是专用于用户选择的构件的。
在步骤150,命中处理程序整编命中将影响的传统程序40的数据结构。这随处理的构件类型而改变。
在步骤160,命中处理程序建立一个围绕整编的数据结构的包装。每个可能命中或由用户选择的对象和每个图类型具有一个专用的包装。因此,例如,一个处理图中的方框具有与数据流图中的方框不同的包装结构。
在步骤170,命中处理程序创建应用于活动构件的特性页。这些页可以包括名称、状态、定义等的页。特性页一般显示为一个全部特性表的图形“标签(tab)”。
在步骤180,命中处理程序创建一个包含特性页的特性表。特性表构造将表结合到包装结构。
在步骤190,命中处理程序将特性页结合到特性表。结合的顺序确定显示的标签顺序。
在步骤200,命中处理程序通过调用“显示和执行更新”方法,命令特性表执行更新。这个步骤在特性页与接口10之间发生相互作用处进行。
最后,在步骤210,命中处理程序执行任何需要的后处理。命中处理程序也放弃所有特性页和特性表以及用于处理选择的构件的包装结构。
以下的流程提供了特性页如何执行有关包装模块50的功能的细节。每个特性页逻辑被从标准窗口事件中分离出来。处理的主要事件是:
1)OnInit Dialog——建立特性页显示;
2)OnApply——确认和存储数据;和
3)OnCancel——取消编辑。
其它事件管理帮助显示和显示状态(外貌)。
特性页开始是未初始化的。当用户显示特性页时,它们被初始化。框架忽略未初始化的页。
图4是为OnInitData事件执行的步骤的流程图。在步骤300,一个特性页接收到一个OnInitData事件。当在图1的接口10选择了一个构件,或选择了一个特性表标签时,执行步骤300。OnInitData事件告诉特性页,它要被第一次显示,和它应当执行一个建立。
在步骤310,特性页框架执行初始化,并且调用一个专用的LoadFrom方法。这个方法对于每个特性页都是不同的。
在步骤320,为了显示每个特性值,执行运行时类型标识。在一个实施例中,这是在C++中通过将包装指针类型转换成希望的特性类型实现的。将包装指针变成LoadFrom调用。类型转换经过一种动态类型转换操作,并且如果希望的伪特性不属于包装则失败。属于要经过多重继承。
在步骤330,确定类型转换是否成功。如果类型转换成功,那么在步骤340,提取特性值(即,名称、附注、定义等等),并且将特性值列入到特性页显示。
如果在步骤330失败,那么在步骤350如果需要进行改正行动,则进行改正行动。
图5是在接收到Apply消息和存储数据时执行的步骤的流程图。Apply消息指示系统应当取得任何改变的值,并把它应用到潜在的系统(即,存储数据)。
在步骤400,由于用户按下了特性表上的OK或Apply,接收到一个Apply消息。
在步骤410,接收特性页将事件传递到包含特性表,以进行处理。
在步骤420,对于特性表中的每个特性页,确定页是否是活动的。如果是,那么在步骤430要求页确认它的所有编辑。
在步骤450,确定是否发生错误。如果发生了错误,那么在步骤460将具有错误的页停留在带有标签的对话前。
如果在步骤450没有发生错误,那么为其中发生了编辑的系统中的每个初始化的显示,存储用户改变了的特性。
图6是在根据本发明的一个实施例确认数据时执行的步骤的流程图。最初,将指向基本包装的指针转到调用。
在步骤500,为每个与需要确认的特性页结合的特性,使用动态类型转换提取指向特性的指针。
在步骤510,确定类型转换是否成功。如果不成功,那么在步骤520执行错误处理,否则,在步骤530调用特性页的确认方法。最后,在步骤540返回操作状态。
图7是在存储特性页时执行的步骤的流程图。在步骤710,为页操作的每个特性(例如,名称、定义,等等),经过运行时类型标识(即,动态类型转换)提取一个指针。
在步骤730,确定类型转换是否成功。如果不成功,那么在步骤740执行错误处理。否则,在步骤750通过调用特性类中的适当方法存储新的特性值。
如上所述,本发明提供了一种能够以面向对象程序方式使用传统数据结构的方法。因此,例如,一个单一的特性页可以存取全部传统数据结构中的有关属性。这使得旧的传统编码能够具有某些面向对象编码的优点。
在这里显示和/或说明了本发明的几个特定实施例。但是,应当知道上述说明和附属权利要求的范围内包括本发明的修改和变化,而不脱离本发明的精神和范围。

Claims (8)

1.一种操作传统数据结构的属性的方法,所述方法包括:
(a)接收一个指向一个结合于传统数据结构的包装对象的指针;
(b)定义一个构件包装类;
(c)查询包装类是否存在一个伪特性;和
(d)创建一个可以接入伪特性的对象。
2.根据权利要求1所述的方法,其中步骤(c)包括执行运行时类型标识。
3.根据权利要求1所述的方法,其中步骤(c)包括执行一个动态类型转换。
4.根据权利要求1所述的方法,其中数据结构是用C语言编写的。
5.根据权利要求1所述的方法,其中所述对象是用C++语言编写的。
6.根据权利要求1所述的方法,其中所述对象是用Java语言编写的。
7.根据权利要求1所述的方法,其中所述对象是一个特性页。
8.一种操作传统数据结构的属性的方法,所述方法包括:
(a)定义一个基本包装类;
(b)为被操作的每个属性类型定义伪特性策略类;
(c)为要操作的传统数据结构的每个独特集定义一个或更多的包装类;
(d)以基本包装类为基础建立每个包装类;
(e)以伪特性策略类为基础建立每个包装类;
(f)重复使用伪特性策略类以代表独特数据结构中的相关属性;
(g)创建一个操作基本包装类的对象;
(h)查询包装类是否存在伪特性;和
(i)经过实现在一个包装对象中的伪特性操作数据结构中的属性。
CN00812267A 1999-07-23 2000-07-21 传统数据结构的对象特性元模型仿真器 Pending CN1371499A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/359,038 US6305007B1 (en) 1998-07-24 1999-07-23 Object property meta model emulator for legacy data structures
US09/359,038 1999-07-23

Publications (1)

Publication Number Publication Date
CN1371499A true CN1371499A (zh) 2002-09-25

Family

ID=23412054

Family Applications (1)

Application Number Title Priority Date Filing Date
CN00812267A Pending CN1371499A (zh) 1999-07-23 2000-07-21 传统数据结构的对象特性元模型仿真器

Country Status (12)

Country Link
US (1) US6305007B1 (zh)
EP (1) EP1236102B1 (zh)
JP (1) JP2003535383A (zh)
KR (1) KR20020035567A (zh)
CN (1) CN1371499A (zh)
AU (1) AU779588B2 (zh)
BR (1) BR0012715A (zh)
CA (1) CA2380256A1 (zh)
HK (1) HK1050936A1 (zh)
IL (1) IL147775A0 (zh)
WO (1) WO2001008008A1 (zh)
ZA (1) ZA200200613B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1306430C (zh) * 2002-12-31 2007-03-21 上海科泰世纪科技有限公司 基于构件的用户自定义事件方法

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7225229B1 (en) 1998-12-18 2007-05-29 Tangis Corporation Automated pushing of computer user's context data to clients
US6801223B1 (en) 1998-12-18 2004-10-05 Tangis Corporation Managing interactions between computer users' context models
US7046263B1 (en) 1998-12-18 2006-05-16 Tangis Corporation Requesting computer user's context data
US6968333B2 (en) 2000-04-02 2005-11-22 Tangis Corporation Soliciting information based on a computer user's context
US7779015B2 (en) 1998-12-18 2010-08-17 Microsoft Corporation Logging and analyzing context attributes
US6791580B1 (en) 1998-12-18 2004-09-14 Tangis Corporation Supplying notifications related to supply and consumption of user context data
US9183306B2 (en) 1998-12-18 2015-11-10 Microsoft Technology Licensing, Llc Automated selection of appropriate information based on a computer user's context
US6513046B1 (en) 1999-12-15 2003-01-28 Tangis Corporation Storing and recalling information to augment human memories
US8225214B2 (en) 1998-12-18 2012-07-17 Microsoft Corporation Supplying enhanced computer user's context data
US7231439B1 (en) 2000-04-02 2007-06-12 Tangis Corporation Dynamically swapping modules for determining a computer user's context
US8181113B2 (en) 1998-12-18 2012-05-15 Microsoft Corporation Mediating conflicts in computer users context data
US6920616B1 (en) 1998-12-18 2005-07-19 Tangis Corporation Interface for exchanging context data
US6842877B2 (en) 1998-12-18 2005-01-11 Tangis Corporation Contextual responses based on automated learning techniques
US6578195B1 (en) * 1999-12-29 2003-06-10 Lucent Technologies Inc. Process for data encapsulation in large scale legacy software
US7464153B1 (en) 2000-04-02 2008-12-09 Microsoft Corporation Generating and supplying user context data
US20020054130A1 (en) 2000-10-16 2002-05-09 Abbott Kenneth H. Dynamically displaying current status of tasks
US20100223295A1 (en) * 2000-12-06 2010-09-02 Io Informatics, Inc. Applied Semantic Knowledgebases and Applications Thereof
AU2002230765A1 (en) * 2000-12-06 2002-07-16 Biosentients, Inc. System, method, software architecture and business model for an intelligent object based information technology platform
US20020156792A1 (en) * 2000-12-06 2002-10-24 Biosentients, Inc. Intelligent object handling device and method for intelligent object data in heterogeneous data environments with high data density and dynamic application needs
US20020147962A1 (en) * 2001-02-12 2002-10-10 International Business Machines Corporation Method and system for incorporating legacy applications into a distributed data processing environment
US20020116700A1 (en) * 2001-02-12 2002-08-22 Clemente Izurieta Method for linking non-object oriented data models to object oriented data models using a technique to achieve zero-size object mapping
US7493391B2 (en) * 2001-02-12 2009-02-17 International Business Machines Corporation System for automated session resource clean-up by determining whether server resources have been held by client longer than preset thresholds
US6842905B2 (en) * 2001-03-29 2005-01-11 International Business Machines Corporation Method and system for implementing collection program interface for accessing a collection of data associated with a legacy enumeration application interface
US7107595B2 (en) * 2001-04-05 2006-09-12 Hewlett-Packard Development Company, L.P. Mechanism for mapping Java objects onto an LDAP repository
WO2003036464A2 (en) * 2001-10-22 2003-05-01 Sun Microsystems, Inc. Inter-process communication using different programming languages
KR100456023B1 (ko) * 2001-12-19 2004-11-08 한국전자통신연구원 절차 지향 프로그램을 컴포넌트 기반의 시스템으로래핑하기 위한 방법 및 그 장치
US7089529B2 (en) * 2002-08-26 2006-08-08 International Business Machines Corporation System and method for creating reusable management instrumentation for IT resources
CA2400590A1 (en) * 2002-08-29 2004-02-29 Ibm Canada Limited-Ibm Canada Limitee Method and apparatus for converting legacy programming language data structures to schema definitions
US7298836B2 (en) 2002-09-24 2007-11-20 At&T Bls Intellectual Property, Inc. Network-based healthcare information systems
US7263102B2 (en) * 2002-11-27 2007-08-28 At&T Intellectual Property, Inc. Multi-path gateway communications device
US7224698B2 (en) * 2002-11-27 2007-05-29 Bellsouth Intellectual Property Corporation Edge side assembler
US7379464B2 (en) * 2002-11-27 2008-05-27 At&T Bls Intellectual Property, Inc. Personal digital gateway
US7356139B2 (en) * 2002-12-31 2008-04-08 At&T Delaware Intellectual Property, Inc. Computer telephony integration (CTI) complete hospitality contact center
US7573999B2 (en) 2002-12-31 2009-08-11 At&T Intellectual Property I, L.P. Computer telephony integration (CTI) complete healthcare contact center
US7620170B2 (en) 2002-12-31 2009-11-17 At&T Intellectual Property I, L.P. Computer telephony integration (CTI) complete customer contact center
US7248688B2 (en) 2003-01-27 2007-07-24 Bellsouth Intellectual Property Corporation Virtual physician office systems and methods
US7440567B2 (en) * 2003-01-27 2008-10-21 At&T Intellectual Property I, L.P. Healthcare virtual private network methods and systems
US8149823B2 (en) * 2003-01-27 2012-04-03 At&T Intellectual Property I, L.P. Computer telephony integration (CTI) systems and methods for enhancing school safety
US7308679B2 (en) * 2003-09-26 2007-12-11 International Business Machines Corporation Method and computer program product for providing a meta-data programming language level interface
US7739164B1 (en) 2003-10-07 2010-06-15 Trading Technologies International, Inc. System and method for displaying risk data in an electronic trading environment
US7752118B1 (en) 2003-10-07 2010-07-06 Trading Technologies International, Inc. System and method for risk grid display in an electronic trading environment
US20050234976A1 (en) * 2004-04-20 2005-10-20 Relativity Technologies, Inc. System and method for deriving an object oriented design from the business rules of a legacy application
US20050235266A1 (en) * 2004-04-20 2005-10-20 Relativity Technologies, Inc. System and method for business rule identification and classification
US20050273709A1 (en) * 2004-06-04 2005-12-08 Ira Lough System and method for conversion of legacy language conforming data entries to industry-standard language conforming data entries
US20080163159A1 (en) * 2007-01-03 2008-07-03 Relativity Technologies, Inc. System and method for extracting UML models from legacy applications
CN102915215B (zh) 2011-08-03 2015-05-27 精工爱普生株式会社 控制装置以及控制方法
CN104484518A (zh) * 2014-12-03 2015-04-01 中国航空工业集团公司第六三一研究所 一种需求模型到仿真模型的模型转换方法
US11475030B2 (en) 2016-11-10 2022-10-18 Ronald Scott Visscher System with a unique and versatile evaluation method
CN111859695B (zh) * 2020-07-28 2021-07-02 中国科学技术大学 基于高分五号卫星紫外可见高光谱的大气污染成分反演方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995003586A1 (en) * 1993-07-21 1995-02-02 Persistence Software, Inc. Method and apparatus for generation of code for mapping relational data to objects
US5764973A (en) 1994-02-08 1998-06-09 Enterworks.Com, Inc. System for generating structured query language statements and integrating legacy systems
US6016392A (en) 1995-11-03 2000-01-18 Intergraph Corporation Method for object-oriented programming using dynamic interfaces
US5960200A (en) * 1996-05-03 1999-09-28 I-Cube System to transition an enterprise to a distributed infrastructure
US5924074A (en) * 1996-09-27 1999-07-13 Azron Incorporated Electronic medical records system
US5809509A (en) * 1996-10-25 1998-09-15 International Business Machines Corporation Method for using a non-object-oriented datastore as a generic persistent datastore for persistent objects
US6161219A (en) * 1997-07-03 2000-12-12 The University Of Iowa Research Foundation System and method for providing checkpointing with precompile directives and supporting software to produce checkpoints, independent of environment constraints
US6016495A (en) * 1997-09-19 2000-01-18 International Business Machines Corporation Object-oriented framework mechanism for providing persistent storage
US6073129A (en) * 1997-12-29 2000-06-06 Bull Hn Information Systems Inc. Method and apparatus for improving the performance of a database management system through a central cache mechanism
US6202069B1 (en) * 1998-04-30 2001-03-13 International Business Machines Corporation Execution paradigm for accessing hierarchical data using an object framework
US6192369B1 (en) * 1998-06-15 2001-02-20 International Business Machines Corporation Object-oriented paradigm for accessing transactional requests by modeling I/O message queues into an object framework

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1306430C (zh) * 2002-12-31 2007-03-21 上海科泰世纪科技有限公司 基于构件的用户自定义事件方法

Also Published As

Publication number Publication date
BR0012715A (pt) 2003-07-15
EP1236102A4 (en) 2003-07-16
ZA200200613B (en) 2003-04-30
EP1236102B1 (en) 2016-03-30
KR20020035567A (ko) 2002-05-11
CA2380256A1 (en) 2001-02-01
EP1236102A1 (en) 2002-09-04
US6305007B1 (en) 2001-10-16
AU779588B2 (en) 2005-02-03
WO2001008008A1 (en) 2001-02-01
JP2003535383A (ja) 2003-11-25
IL147775A0 (en) 2002-08-14
HK1050936A1 (zh) 2003-07-11
AU6358700A (en) 2001-02-13

Similar Documents

Publication Publication Date Title
CN1371499A (zh) 传统数据结构的对象特性元模型仿真器
CN1181428C (zh) 软件翻译的内省编辑器系统、程序和方法
CN1171147C (zh) 自动的承接软件/适配器生成器
Jones et al. The Glasgow Haskell compiler: a technical overview
CN1149478C (zh) 从本地码有效调用Java方法的方法和设备
CA2306118C (en) Combining multiple class files into run-time image
Hudak et al. A history of Haskell: being lazy with class
US5911074A (en) Process for manipulating data models used in software engineering
EP1836568B1 (en) Source code translator
US20120151437A1 (en) Method for translating a cobol source program into readable and maintainable program code in an object oriented second programming language
CN1949186A (zh) 一种程序调测系统及用于程序调测系统的映射方法
CN1821964A (zh) 将本机函数内嵌到编译的Java代码中的方法和系统
CN1848088A (zh) 将本机接口函数调用转换为更简单操作的方法和系统
CN1838088A (zh) 探测具有限制性调用约定代码的方法
CN1885265A (zh) 在无需修改源代码的情况下本地化java gui应用的系统和方法
US20040003377A1 (en) Converting byte code instructions to a new instruction set
CN1105802A (zh) 增量建立系统
CN103718159B (zh) 图像处理软件开发方法、图像处理软件开发装置
CN1282914A (zh) 采用外观类进行软件翻译的内观编辑器系统、程序和方法
CN1234553A (zh) 减少编译代码中动态类初始化检查的代价的技术
US20070169018A1 (en) Method and an apparatus for translating programming language code
CN1238500A (zh) 用于进行静态初始化的方法和系统
CN1855053A (zh) 用于执行java虚拟机的指令的方法和设备
US20030115573A1 (en) Efficient generic code in a dynamic execution environment
CN1737755A (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
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication