CN1278231C - 将抽象句法表示法1数据模型化成对象模型的方法及*** - Google Patents
将抽象句法表示法1数据模型化成对象模型的方法及*** Download PDFInfo
- Publication number
- CN1278231C CN1278231C CNB011436255A CN01143625A CN1278231C CN 1278231 C CN1278231 C CN 1278231C CN B011436255 A CNB011436255 A CN B011436255A CN 01143625 A CN01143625 A CN 01143625A CN 1278231 C CN1278231 C CN 1278231C
- Authority
- CN
- China
- Prior art keywords
- data
- produce
- tag types
- subroutine
- analyze
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Stored Programmes (AREA)
Abstract
提供一种将ASN.1数据映射到对象模型的方法、程序和***。本发明包括识别数据流的开始,并接着产生该数据的新对象名;然后分析数据以获得识别符和数据长度;接着分析数据的标签类型,如果标签类型是简单型,则为该数据产生一类图,并产生该数据的源代码,如果标签类型不是简单型,则在产生类图和源代码之前,调用子例程进一步分析该数据。
Description
技术领域
本发明一般涉及计算机软件开发。更具体地,本发明涉及将ASN.1(抽象句法表示法1)编码的数据动态映射到对象模型以产生ASN.1数据结构的方法。
背景技术
抽象句法表示法1(ASN.1)是一种定义相互可操作性的抽象数据和消息格式的国际标准。尽管最初ASN.1用于描述开放***互联环境中的电子邮件消息,但从那时起ASN.1已经被更广范围的其他应用所采用,如应用在网络管理、安全、移动(蜂窝)电话、空中交通管制以及因特网上的语音和视频中。实例包括X.509认证、公钥加密标准、Kerberos(科伯罗思)、类属安全服务API(应用编程接口)以及认证管理协议。
ASN.1数据类型是从基本数据类型(即,整型、实型、布尔型和空)中建立的,使用三种主要的构建机制:重复(SEQUENCE OF(之序列)和SETOF(之组))、选择(CHOICE)以及字段列表(SEQUENCE(序列)和SET(组))。一旦已经定义了ASN.1数据,该ASN.1数据可以确定地用在其他ASN.1数据类型的定义中,就好象它是基本数据类型一样。这样的数据类型可以在使用前或在(向前引用)后定义。这种递归定义的数据结构可能增加,结果变得非常复杂,特别是在要求将编码ASN.1描述编码成特异编码法(DER)编码字节数组,并解码它们的情况下。DER是编码ASN.1数据结构以在开放***互联(OSI)的应用层和表示层之间转送的标准编码法。它提供了一种方法,使表示层可以可靠地与其它计算机***交换任何任意数据结构,同时应用层可以将编码的数据映射成适合终端用户的任何类型的表示或语言。
现在,越来越多的企业已经采用面向对象设计和编程,因为它具有许多优点,诸如可复用性和易于维护等。Java是面向对象、独立平台和安全语言的一个例子,它已经从新兴技术变成为一种成功的安全电子商务应用的主流语言。
因此,将会需要一种工具,将ASN.1编码的数据映射到对象模型,并能够将ASN.1编码的数据翻译成原始的Java源代码,以帮助企业有效地开发或移植到面向对象的、跨平台的应用。
发明内容
本发明提供一种将ASN.1数据映射成对象模型的方法、程序和***。本发明具体如下:识别ASN.1数据中的各对象;识别各对象的属性;识别各对象之间的关系;以及产生对象模型。在产生对象模型之后,还可以包括以下步骤:识别数据流的开始,并接着产生该数据的新对象名;然后分析(parse)数据获得识别符和数据长度;接着分析数据的标签(tag)类型,如果标签类型是简单型,则为该数据产生一类(class)图,并产生该数据的源代码,如果标签类型不是简单型,则在产生类图和源代码之前,调用子例程进一步分析该数据。
附图说明
通过结合阅读附图,下面的对说明性实施例的详细描述将使本发明自身以及本发明的使用优选模式、更进一步的目的和优点得到最好的理解。
图1描述了可以实现本发明的数据处理***的网络示图;
图2描述了根据本发明优选实施例的可以用做服务器的数据处理***的方框图;以及
图3描述了说明可以实现本发明的数据处理***的方框图;
图4描述了根据本发明的从ASN.1数据类型中产生的对象图;
图5描述了说明根据本发明的分析数据流以及创建分类以及ASN.1数据类型的例程流程图;
图6描述了说明根据本发明的分析数据的子例程的流程图;
图7描述了根据本发明的输出类别图;
图8描述了说明根据本发明的分析子例程执行顺序的对象图。
具体实施方式
现在参照附图,图1描述了可以实现本发明的数据处理***的网络示图。网络数据处理***100是可以实现本发明的计算机网络。网络数据处理***100包括:网络102,为用于在网络数据处理***100中连接在一起的各种设备和计算机之间提供通信链路的介质。网络102可以包括诸如有线、无线通信链路或光缆的连接。
在所述实例中,服务器104连接到网络102及存储单元106。另外,客户机108、110和112也连接到网络102。例如这些客户机108、110和112可以是个人计算机或网络计算机。在所述实例中,服务器104向客户机108-112提供诸如引导文件、操作***映像(image)以及应用程序之类的数据。客户机108、110和112是服务器104的客户机。网络数据处理***100可以包括未示出的附加的服务器、客户机和其他设备等。
在所述实例中,网络数据处理***100是具有代表世界范围的使用TCP/IP系列协议彼此进行通信的网络和网关的集合的网络102的因特网。在因特网的中心是在包括数以千计的商业、政府、教育以及传递数据和消息的其他计算机***的主节点或主计算机之间的高速数据通信链路的主干。当然,网络数据处理***100还可以被实现成多个不同类型的网络,例如,诸如企业内部网、局域网(LAN)或广域网(WAN)之类的网络。图1仅作为一个实例,而不是作为本发明的结构限制。
参照图2,根据本发明优选实施例描述了可以实现为一个服务器(例如图1中的服务器104)的数据处理***的方框图。数据处理***200可以是包括连接到***总线206上的多个处理器202和204的对称多处理器(SMP)***。或者,也可以使用单个处理器***。并且存储器控制器/高速缓存器208也连接到***总线206,其中提供了到本地存储器209的接口。I/O总线桥210连接到***总线206并提供到I/O总线212的接口。存储器控制器/高速缓存器208和I/O总线桥210也可以以上述连接方式集成在一起。
连接到I/O总线212的外设部件互联(PCI)总线桥214提供到PCI本地总线216的接口。多个调制解调器可以连接到PCI总线216。典型的PCI总线的实现将支持4个PCI扩展槽或附加(add-in)连接器。可以通过附加板连接到PCI本地总线216上的调制解调器218和网络适配器220提供图1中至网络计算机108-112的通信链接。
附加PCI总线桥222和224为附加PCI总线226和228提供接口,从中可以支持附加调制解调器或网络适配器。在这种方式中,数据处理***200允许与多个网络计算机的连接。正如所述的,存储器映射图形适配器230和硬盘232也可以直接或间接地连接到I/O总线212。
本领域普通技术人员会理解,图2所示硬件可以改变。例如,除了使用或取代所述的硬件以外,也可以使用诸如光盘驱动器等的其它外部设备。所述实例并不意味着对本发明结构的限制。
例如图2中描述的数据处理***可以是运行着高级交互执行体(AIX)操作***的、位于纽约Armonk的国际商用机器公司的产品IBM RISC/System6000***。
现在参考图3,描述说明可以实现本发明的数据处理***的方框图。数据处理***300是客户计算机的实例。数据处理***300采用外部部件互联(PCI)本地总线结构。尽管所描述的实例使用PCI总线,也可以使用诸如加速图形接口(AGP)和工业标准结构(ISA)的其它的总线结构。处理器302和主存储器304通过PCI桥308连接到PCI本地总线306上。PCI桥308也可以包括用于处理器302的集成的存储器控制器和高速缓存器。可以通过直接部件互联或通过附加板产生与PCI本地总线306的附加连接。在所述的实例中,局域网(LAN)适配器310、SCSI(小型计算机***接口)主总线适配器312以及扩展总线接口314通过直接部件互联连接到PCI本地总线306上。相反,音频适配器316、图形适配器318和音频/视频适配器319通过***在扩展槽中的附加板连接到PCI本地总线306。扩展总线接口314提供键盘和鼠标适配器320、调制解调器322和附加存储器324的连接。小型计算机***接口(SCSI)主总线适配器312提供硬盘驱动器326、磁带驱动器328以及CD-ROM驱动器330的连接。典型的PCI本地总线的实现将支持3至4个PCI扩展槽或附加连接器。
操作***运行在处理器302上并用于协调和提供图3中的数据处理***300中的各种部件的控制。操作***可以是市场可得的操作***,诸如可从微软公司得到的视窗2000。诸如Java的面向对象编程***可以结合操作***运行,并提供从Java程序向操作***的调用或在数据处理***300上的执行的应用程序。“Java”是太阳微***公司的商标。用于操作***、面向对象的操作***和应用或程序的指令放置在诸如硬盘驱动器326的存储设备上,也可以载入到用于处理器302执行的主存储器304中。
本领域普通技术人员会理解图3的硬件可以根据实现来改变。除了使用图3中所述的硬件以外,还可以使用诸如快闪ROM(或等价的非易失性存储器)或光盘驱动器等之类的其它内部硬件或外部设备,或替代图3中的硬件。并且,本发明的处理可以应用到多处理器数据处理***中。
作为另一个实例,不管数据处理***300是否包括某种网络通信接口,数据处理***300都可以是一个独立配置可引导的***,而不依赖某种网络通信接口。作为再一个实例,数据处理***300可以是个人数字助理(PDA)设备,其中配置有ROM和/或快闪ROM以便为存储操作***文件和/或用户生成的数据提供非易失性存储器。
图3中所述实例和上述实例不意味着结构限制。例如,除了采取PDA形式,数据处理***300也可以是笔记本计算机或手持计算机。数据处理***300还可以是信息台(kiosk)或网络(web)应用。
本发明将ASN.1数据译成对象模型,接着产生源代码,在图形用户接口(GUI)上显示每一属性值。ASN.1数据可能是用ASN.1表示编写的一条编码数据、一个二进制文件、一个由ASN.1表示法写成的文本文件,或仅是从输入设备键入的ASN.1表示。GUI可以在JavaBean(Java豆)中实现并封装在运行于Beanbox(豆盒)或能够***到诸如Visual Cafe(可视室)的Java开发环境中的Java Archive(JAR)(Java档案)文件中。
输入数据的实例在表1中说明,表1包括以十六进制显示的二进制编码的数据流。
表1:
00000000:3081CD02 01010201 003081C5 302D0201
00000010:01041841 5A4E5F50 45524D49 4E464F5F
00000020:41554449 544C4556 454C0030 0E300C02
00000030:01010201 02040400 00000030 2B020101
00000040:0416415A 4E5F5045 524D494E 474F5F51
00000050:4F505F55 494E5400 300E300C 02010102
00000060:01020404 00000000 302E0201 01041941
00000070:5A4E5F55 45524D49 4E464F5F 5741524E
00000080:494E474D 4F444500 300E300C 02010102
00000090:01020404 00000000 30370201 01042241
000000A0:5A4E5F50 45524D49 4E464F5F 5741524E
000000B0:494E474D 4F444550 45524D49 54544544
000000C0:00300E30 0C020101 02010204 04000000
从表1所示的数据流中产生的ASN.1数据类型如下所示:
ClassA::=Sequence{
attribute1 INTEGER,
attribute2 INTEGER,
attribute3 OCTETSTRING
}
ClassB::=SEQUENCEOF{
attribute1 ClassA
}
ClassC::=SEQUENCE{
attribute1 INTEGER,
attribute2 OCTETSTRING,
attribute3 ClassB
}
ClassD::=SEQUENCEOF{
ClassC
}
ClassE::=SEQUENCE{
attribute1 INTEGER,
attribute2 INTEGER,
attribute3 ClassD
}
现在参照图4,根据本发明描述从上面说明的ASN.1数据类型中产生的对象图。图4中对象图采用新对象模型建立技术(OMT)表示法。菱形链接表示聚集关系,其中一个类是由多个类组成的。用表示类别对象的方形框显示对象模型。类名、属性和方法列在框中,并且各类别的关系用链接指示。每一类具有特性表,并且对于二进制输入,该表列出了其中的每一对象的值。
参照图5,描述说明根据本发明的分析数据流和创建类及ASN.1数据类型的例程的流程图。将DER数据用做一个实例。但是对于基本编码法(BER)数据流来说,该步骤也是适合的。BER或DER编码数据具有三部分:识别ASN.1值标签类型的识别符八位位组、给出作为数据内容的字节数的长度八位位组以及真实数据的内容八位位组。
使用DER法开始该例程以识别编码数据的开始(步骤501)。编码数据从识别符八位位组开始。通常它在输入字节流或二进制文件的开始,但是也不是必须如此。接着,产生新对象名,通常是类名(步骤502)。为方便命名起见,对象名可能是诸如“类A”或“对象A”之类的一般名字。该例程接着分析一个或多个字节数据以获得识别符(步骤503)。在这点上,对从数据的1至127字节的任何地方进行分析以获得数据长度(步骤504)。在步骤503和504依据BER法分析数据。
获得识别符和数据长度之后,下面的步骤是识别数据所具有的标签类型(步骤505)。如果标签类型是简单型,则产生类图和ASN.1表示(步骤507)。简单型数据具有诸如INTEGER(整型)、GENERAL STRING(通用字符串)、OCTET STRING(八位位组字符串)等之类的简单编码类型的标签。在这种情况下,通过扩展编码类型所对应的超类(superclass)来构建类,例如INTEGER对应于Java2标准编辑API中java.lang.Integer类、GENERALSTRING对应于java.lang.Integer类、OCTET STRING对应于java.lang.Integer类。在图7中说明了输出类图的一个实例,并且ASN.1表示法是ClassA::=GeneralString。最后的步骤是产生数据的源代码(步骤508)。
如果标签类型不是简单型,则调用子例程分析数据内容(步骤506)。
现在参考图6,描述说明根据本发明的分析数据的子例程的流程图。“获得识别符”的步骤601和“获得数据长度”的步骤602是和参考图5描述的相同。下面的步骤是分析标签类型(步骤603)。
如果标签类型是简单型,则接着子例程确定所述调用是否来自主例程(步骤608)。如果调用是来自主例程,则为进一步的引用(具有相同标签号的类是相同的类)记录标签号,并且将类简单地返回到主例程(步骤611)。如果调用不是来自主例程,则创建新的属性名,记录数据值,并且将属性与其类相关联(步骤609)。为方便起见,可将属性命名为“attributeA”。如果到达数据末尾,则返回主例程(步骤611)。如果没有到达数据末尾,子例程返回到步骤601。
如果构建了步骤603中分析的标签,则产生新的类名(步骤607),并且子例程返回到步骤601,以便它能够进一步分析所构建类型内的数据内容。子例程能够递归调用以便分析在所构建类型中的所有的数据内容等。所构建的类型包括构件(component)。所构建类型的实例如SEQUENCE、SEQUENCEOF等。SEQUENCE包括一个或多个不同的类型。SEQUENCE OF包括一个或多个给定的类型。
如果在步骤603分析的标签类型是显性的,将直接到“获得识别符”(步骤604)和“获得数据长度”(步骤605),与步骤601和602相似。显性标注的类型是来自于简单型或通过将标签放在基础类型上构建的类型。因此分析显性标注的类型以确定隐含标签类型(underlying tag type)(步骤606)。
如果构建了隐含标签类型,则产生新类名(步骤607)并再次调用子例程分析在该构建的类型中的数据内容(返回步骤601)。如果隐含标签类型是简单型,则在进行方便的命名之后产生新的属性名(步骤610)。
如果已经到达编码数据的末尾,则将所创建的类返回到主例程(步骤611)。如果还没有到达编码数据的末尾,则处理返回到子例程的开始(步骤601)继续分析数据的剩余部分。
对于文本输入,字符串分析器和语法检查器是和底层相关联的。他们在数据结构上执行递归检查。对于二进制输入,字节分析器与底层相关联,它分析字节并识别类、标签号、数据长度和字节流中的内容。
参照图8,描述说明根据本发明的分析子例程执行顺序的对象图。这个流程是显示从编码数据流中如何产生类图的一个实例。
在分析数据时创建类的顺序如下:
a.开始类的创建(创建该类名);
b.开始构件类1的创建(创建类名);
c.开始和完成子构件类1的构建(如果是显性标注的类型,则创建类名、识别属性和相关联的值、记录标签号);
d.开始和完成子构件类2的构建(如果是显性标注的类型,则创建类名、识别属性和他们的相关联的值、记录标签号);以及
e.完成构件类1的构建(识别构件类1的构建机制。如果子构件类1和2是相同的,则重复构建机制。构件类1具有两个为“子构件类1”和“子构件类2”类型的属性。如果它是显性标注的类型,则识别属性和他们相关联的值,记录标签号)。
构件类2和构件类3依照与构件类1相似的过程。最后因为识别了类的所有属性,所以完成了类的构建。
源代码引擎是用于产生在Java源代码中Java类的“skeletal(骨架)”结构的。适当的编码/解码例程被***到Java代码中以提供功能类(functionalclass)。这些例程产生对包括基本数据类型的编码和解码方法的实用程序(utility)的调用。实用程序库是由Java安全组开发的,作为Java公钥加密标准产品包的一部分。
ASN.1和DER编码是固有的复杂操作。一些存在的工具包提供基本DER类,但他们仍要求开发者对他们的ASN.1定义进行模型化并确定如何调用DER编码/解码例程。当前现存的工具不能帮助开发者和编程者(architect)对面向对象形式中的ASN.1定义进行模型化。本发明提供了这项关键功能,并且因此允许开发者和编程者专注于他们试图解决的问题,而不是机制问题。
本发明降低了在异质类型环境中的与分析、实现和测试的代码相关的时间和成本,允许软件开发者更多关注在商业模型和结构开发上。本发明还帮助开发者和编程者分析当前结构中的数据模型并增强了基于对象表示的设计。另一优点是帮助测试者和网络管理员分析通过动态构建基于数据输入流的对象模型和在图形用户接口中将其显示来分析在网络上传输的数据。
注意下面所述是很重要的,即虽然已经在上文中描述了本发明的全部功能的数据处理***,本领域普通技术人员将理解本发明的处理能够以指令的计算机可读介质的形式和各种形式传播,并且可以等价应用本发明而不论实际用于实现传播的信号承载介质的具体类型。计算机可读介质的实例包括诸如软磁盘、硬盘驱动器、RAM、CD-ROM、DVD-ROM之类的可记录型介质和诸如数字和模拟通信链路、使用例如射频和光波传输的传输形式的有线或无线通信链路的传输型介质。对于具体数据处理***中的实际使用,计算机可读介质可以使用被解码的编码格式的形式。
为说明和描述的目的已经给出了本发明的描述,但该描述不是试图穷举或限制本发明的公开形式。对本领域普通技术人员来说许多改进和变型是显然的。选择并描述实施例以最好地解释本发明的原理、实际应用,并使被指控试图具体使用的具有各种改进的各种实施例的本领域的其他普通技术人员能够理解本发明。
Claims (12)
1.一种将抽象句法表示法1数据映射成对象模型的方法,该方法包括步骤:
识别抽象句法表示法1数据中的各对象;
识别各对象的属性;
识别各对象之间的关系;以及
产生对象模型。
2.如权利要求1的方法,在产生对象模型之后,还包括步骤:
识别数据流的开始;
产生该数据的新对象名;
分析该数据以获得数据识别符;
分析该数据以获得数据长度;
分析该数据的标签类型;
如果标签类型是简单型,则为该数据产生一类图;以及
产生该数据的源代码。
3.如权利要求2的方法,其特征在于,还包括如果标签类型不是简单型,执行一子例程以进一步分析数据内容的步骤。
4.如权利要求3的方法,其特征在于,分析子例程包括步骤:
分析数据内容以获得识别符;
分析数据内容以获得数据长度;以及
分析标签类型。
5.如权利要求4的方法,其特征在于,还包括步骤:
如果标签类型是简单型,确定对子例程的调用是否来自主例程;
如果调用来自主例程,则为进一步引用记录数据标签号并将该数据返回到主例程;以及
如果调用不是来自主例程,则为该数据产生属性名,并且如果已经到达数据末尾,则将该数据返回到主例程。
6.如权利要求5的方法,其特征在于,还包括如果没有到达数据末尾则再调用分析子例程的步骤。
7.如权利要求4的方法,其特征在于,还包括步骤:
如果构建了标签类型,则为该数据产生一新的类名;以及
再调用分析子例程。
8.如权利要求4的方法,其特征在于,还包括步骤:
如果标签类型是显性的,则进一步分析数据内容以获得数据识别符和数据长度;以及
分析显性的标签类型以确定隐含标签类型。
9.如权利要求8的方法,其特征在于,还包括步骤:
如果隐含标签类型是简单型,则为该数据产生一属性名;以及
如果已经到达数据末尾,则将该数据返回到主例程。
10.如权利要求9的方法,其特征在于,还包括如果还没有到达数据末尾,则再调用分析子例程的步骤。
11.如权利要求8的方法,其特征在于,还包括步骤:
如果构建了隐含标签类型,则为该数据产生一新类名;以及
再调用分析子例程。
12.一种将抽象句法表示法1数据映射成对象模型的***,该***包括:
用于识别抽象句法表示法1数据中的对象的装置;
用于识别各对象的属性的装置;
用于识别各对象之间的关系的装置;以及
用于产生对象模型的装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/738,246 US6883164B2 (en) | 2000-12-15 | 2000-12-15 | Strategy for dynamically modeling ASN.1 data to an object model |
US09/738,246 | 2000-12-15 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1359065A CN1359065A (zh) | 2002-07-17 |
CN1278231C true CN1278231C (zh) | 2006-10-04 |
Family
ID=24967197
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB011436255A Expired - Fee Related CN1278231C (zh) | 2000-12-15 | 2001-12-14 | 将抽象句法表示法1数据模型化成对象模型的方法及*** |
Country Status (6)
Country | Link |
---|---|
US (1) | US6883164B2 (zh) |
JP (1) | JP2002236586A (zh) |
KR (1) | KR20020048282A (zh) |
CN (1) | CN1278231C (zh) |
SG (1) | SG104952A1 (zh) |
TW (1) | TWI262439B (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7349905B1 (en) * | 2001-09-12 | 2008-03-25 | Everdream Corporation | Local client database for remote support |
US20040006765A1 (en) * | 2002-04-16 | 2004-01-08 | Goldman Kenneth J. | Live software construction with dynamic classes |
FI114948B (fi) * | 2002-09-20 | 2005-01-31 | Nokia Corp | Hallintaobjektin osoittaminen |
KR20040029616A (ko) * | 2002-10-01 | 2004-04-08 | 주식회사 서진정보기술 | 기업형 프로그램 소스의 유지/보수 관리 및 분석 기능을갖춘 시스템 및 방법 |
KR100488805B1 (ko) * | 2002-12-10 | 2005-05-12 | 한국전자통신연구원 | Asn.1 편집에서의 데이터의 처리 시스템 및 그 방법 |
CN100464546C (zh) * | 2003-02-25 | 2009-02-25 | 华为技术有限公司 | 一种asn.1协议处理器 |
FI116958B (fi) * | 2003-07-01 | 2006-04-13 | Nokia Corp | Hallintasolmujen määrittäminen laitteenhallintajärjestelmässä |
US8219968B2 (en) * | 2003-07-17 | 2012-07-10 | Raytheon Company | Designing computer programs |
EP1528463A1 (en) * | 2003-10-31 | 2005-05-04 | Hewlett-Packard Development Company, L.P. | Generating access functions for accessing sub data structures |
US8010955B2 (en) * | 2004-03-05 | 2011-08-30 | International Business Machines Corporation | Reducing the run-time cost of incorporating custom tags in a server page |
US7548348B2 (en) * | 2004-09-24 | 2009-06-16 | Seiko Epson Corporation | Method and apparatus for forming a print data stream with embedded commands |
US7567943B2 (en) * | 2004-12-17 | 2009-07-28 | Microsoft Corporation | System and method for composition of mappings given by dependencies |
US7793260B2 (en) * | 2005-04-25 | 2010-09-07 | Microsoft Corporation | System for defining and activating pluggable user interface components for a deployed application |
US7853590B2 (en) | 2005-12-02 | 2010-12-14 | Microsoft Corporation | Remote read-write access to disparate data stores |
US8225285B2 (en) * | 2006-04-03 | 2012-07-17 | International Business Machines Corporation | Generating a test suite to test support for routines |
CN101159743B (zh) * | 2007-10-22 | 2010-06-23 | 中兴通讯股份有限公司 | Asn.1编解码函数自动生成中的数据类型选择方法 |
US8234626B2 (en) * | 2008-06-04 | 2012-07-31 | Dell Products L.P. | Modular ASL component |
CN101316241B (zh) * | 2008-07-02 | 2013-05-01 | 中兴通讯股份有限公司 | 用于通信数据的tlv格式处理方法 |
US20100211894A1 (en) * | 2009-02-18 | 2010-08-19 | Google Inc. | Identifying Object Using Generative Model |
US20100269089A1 (en) * | 2009-04-21 | 2010-10-21 | Vinod R Panicker | Method and system for generation of reusable design patterns |
US9141919B2 (en) * | 2010-02-26 | 2015-09-22 | International Business Machines Corporation | System and method for object migration using waves |
US11042513B2 (en) * | 2012-01-03 | 2021-06-22 | International Business Machines Corporation | Extended tagging method and system |
US20160234554A1 (en) * | 2015-02-05 | 2016-08-11 | Electronics And Telecommunications Research Institute | Renewable conditional access system and request processing method for the same |
CN110601794B (zh) * | 2019-08-20 | 2022-05-24 | 浙江合众新能源汽车有限公司 | 一种asn.1编解码模块、报文数据编解码方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63181033A (ja) * | 1987-01-23 | 1988-07-26 | Hitachi Ltd | プログラム自動生成方式 |
JPH0650489B2 (ja) * | 1988-02-05 | 1994-06-29 | 日本電気株式会社 | Asn.1情報データ化方式 |
US5291583A (en) * | 1990-12-14 | 1994-03-01 | Racal-Datacom, Inc. | Automatic storage of persistent ASN.1 objects in a relational schema |
US5317742A (en) | 1991-06-21 | 1994-05-31 | Racal-Datacom, Inc. | Dynamic translation of network management primitives to queries to a database |
EP0567137A1 (en) | 1992-04-23 | 1993-10-27 | Nec Corporation | Protocol data unit encoding/decoding device |
EP0727739B1 (en) | 1995-02-17 | 2002-11-06 | International Business Machines Corporation | Object-oriented programming interface for developing and running network management applications on a network communication infrastructure |
US5864862A (en) * | 1996-09-30 | 1999-01-26 | Telefonaktiebolaget Lm Ericsson (Publ) | System and method for creating reusable components in an object-oriented programming environment |
ES2142564T3 (es) | 1996-08-20 | 2000-04-16 | Cit Alcatel | Procedimiento para administrar la especificacion de objetos. |
US5870749A (en) | 1996-12-19 | 1999-02-09 | Dset Corporation | Automatic translation between CMIP PDUs and custom data structures |
US6052526A (en) | 1997-04-17 | 2000-04-18 | Vertel Corporation | Data structure and method for dynamic type resolution using object-oriented programming language representation of information object sets |
US6898792B1 (en) | 1998-02-18 | 2005-05-24 | Iona Technologies, Plc | Foreign object definition information repository |
US6427153B2 (en) * | 1998-12-04 | 2002-07-30 | Sun Microsystems, Inc. | System and method for implementing Java-based software network management objects |
-
2000
- 2000-12-15 US US09/738,246 patent/US6883164B2/en not_active Expired - Fee Related
-
2001
- 2001-12-04 KR KR1020010076121A patent/KR20020048282A/ko not_active Application Discontinuation
- 2001-12-06 SG SG200107625A patent/SG104952A1/en unknown
- 2001-12-12 TW TW090130775A patent/TWI262439B/zh not_active IP Right Cessation
- 2001-12-14 JP JP2001381003A patent/JP2002236586A/ja active Pending
- 2001-12-14 CN CNB011436255A patent/CN1278231C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002236586A (ja) | 2002-08-23 |
CN1359065A (zh) | 2002-07-17 |
US20020129331A1 (en) | 2002-09-12 |
KR20020048282A (ko) | 2002-06-22 |
TWI262439B (en) | 2006-09-21 |
SG104952A1 (en) | 2004-07-30 |
US6883164B2 (en) | 2005-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1278231C (zh) | 将抽象句法表示法1数据模型化成对象模型的方法及*** | |
CN1297936C (zh) | 用来比较两个计算机文件的方法及*** | |
CN1848774A (zh) | 一种远程调用通信组件的***及方法 | |
US20180136914A1 (en) | Programming Language with Extensions using a Strict Meta-Model | |
US7460996B2 (en) | Using strong data types to express speech recognition grammars in software programs | |
CN1783090A (zh) | 用于对象模型与xml间转换的可共享双向方法和*** | |
CN1713179A (zh) | 在对象模型中的影响分析 | |
CN1105802A (zh) | 增量建立*** | |
CN1750119A (zh) | 创建用于字母数字概念的语音识别语法 | |
CN1949179A (zh) | 利用只读进程组件对服务进程建模的方法和*** | |
CN1627259A (zh) | 软件应用程序中名空间或模式库支持的可编程对象模型 | |
CN101036123A (zh) | 自动翻译程序和程序翻译服务器 | |
CN1858717A (zh) | 一种数据编解码方法及其编解码器 | |
CN116860949B (zh) | 问答处理方法、装置、***、计算设备及计算机存储介质 | |
CN114513566A (zh) | 自定义网络协议解析方法、***、介质及电子设备 | |
US7669178B2 (en) | System and method for interacting with computer programming languages at semantic level | |
CN1525317A (zh) | 在标记中用于定义和使用子级说明的***和方法 | |
Irwin et al. | Object oriented metrics: Precision tools and configurable visualisations | |
Zhao et al. | Pattern-based design evolution using graph transformation | |
CN112988163A (zh) | 编程语言智能适配方法、装置、电子设备和介质 | |
US7657869B2 (en) | Integration of external tools into an existing design environment | |
CN1809811A (zh) | 用于借助中心xml配置文件生成分布式java应用的方法和装置 | |
CN1855052A (zh) | 一种从树型结构数据和一组代码片断结构体生成目标源代码的方法 | |
CN1499368A (zh) | 一种基于描述的界面生成方法及生成*** | |
CN1290886A (zh) | 优化单字节字符处理的方法、***及计算机程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20061004 Termination date: 20100114 |