KR100287045B1 - 객체의 명명 및 결합들 위한 방법 및 시스템 - Google Patents

객체의 명명 및 결합들 위한 방법 및 시스템 Download PDF

Info

Publication number
KR100287045B1
KR100287045B1 KR1019930012598A KR930012598A KR100287045B1 KR 100287045 B1 KR100287045 B1 KR 100287045B1 KR 1019930012598 A KR1019930012598 A KR 1019930012598A KR 930012598 A KR930012598 A KR 930012598A KR 100287045 B1 KR100287045 B1 KR 100287045B1
Authority
KR
South Korea
Prior art keywords
identifier
moniker
raw data
identifier object
primitive
Prior art date
Application number
KR1019930012598A
Other languages
English (en)
Other versions
KR940006027A (ko
Inventor
로버트지.앳킨슨
안토니에스.윌리암스
에드워드케이.정
Original Assignee
존 비. 메이슨
마이크로소프트 코포레이션
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 존 비. 메이슨, 마이크로소프트 코포레이션 filed Critical 존 비. 메이슨
Publication of KR940006027A publication Critical patent/KR940006027A/ko
Application granted granted Critical
Publication of KR100287045B1 publication Critical patent/KR100287045B1/ko

Links

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/30Arrangements for executing machine instructions, e.g. instruction decode
    • 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
    • G06F9/449Object-oriented method invocation or resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/289Object oriented databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/134Hyperlinking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/137Hierarchical processing, e.g. outlines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/174Form filling; Merging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • G06F40/18Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
    • 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/465Distributed object oriented systems
    • 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/543User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]
    • 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/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Document Processing Apparatus (AREA)
  • Steroid Compounds (AREA)
  • Transition And Organic Metals Composition Catalysts For Addition Polymerization (AREA)
  • Image Generation (AREA)

Abstract

본 발명은 데이타객체를 명명하고 결합하는 방법 및 체제에 관한 것이며, 양호한 실시예에서는 편입된 객체에 대한 링크가 모니커로서 기억되고, 모니커는 편입된 데이타에 접근하기 위해 요구된 정보를 포함하고 편입된 데이타에 결합하는 방법을 제공하는 객체이다.

Description

객체의 명명 및 결합을 위한 방법 및 시스템
제1도는 예시적 혼합문서(compound document)를 나타내는 도면.
제2도는 스케줄링 데이터와 분배(budgeting)데이터 및 설명 데이터가 혼합문서에 편입되는 방법을 나타내는 도면.
제3도는 어떤 연결된 객체(a linked object)와 그 원시 (source)의 관계를 나타내는 도면.
제4도는 예시적 객체의 블록선도.
제5도는 객체의 공시를 나타내는 블록선도.
제6도는 아이모니커 인터페이스(IMoniker interface)의 범례를 나타내는 블록선도.
제7도는 제3도의 관리요약적 혼합문서(303; a executive summary compound document))에 기억된 모니커(moniker)를 나타내는 블록선도.
제8도는 범용 복합모니커의 객체데이터구조를 나타내는 블록선도.
제9도는 범용 복합모니커방법(a generic composite moniker method)의 "구성하기(ComposeWith)"의 구현(implenentation)법을 나타내는 순서도.
제10도는 "모니커가 범용 콤포지트를 만들기(MkCreateGenericComposite)"의 함수를 위한 순서도.
제11도는 두 개의 모니커를 만드는 범용 구현법의 "최종요소를 찾기(FindLastElt)"의 순서도.
제12도는 범용 구현법의 "제 1 요소를 찾기(FindFirstElt)"를 위한 순서도.
제13도는 범용 구현법을 위한 "객체에 결합하기(BindToObject)"의 순서도.
제14도의 파일 모니커(file moniker)의 범용 구현법을 위한 "객체에 결합하기"의 순서도.
제15도는 아이템 모니커(item moniker)의 범용 구현법을 위한 "객체에 결합하기"의 순서도.
제16도는 워드프로세싱 아이템 모니커(WltemMoniker)의 범용 구현법을 위한 "객체에 결합하기"의 순서도.
제17도는 범용 복합모니커 인터페이스를 위한 감축된 방법(reduced method)을 위한 개략적 순서도.
제18도는 파일모니커의 범용 구현법을 위한 감축된 방법을 위한 개략적 순서도.
제19도는 워드프로세싱 아이템 모니커(WItemMoniker)의 범용 구현법을 위한 감축된 방법의 개략적 순서도.
제20도는 "모니커가 이용자명을 분석하기(MkParseUserName)"의 함수를 위한 개략적 순서도.
제21도는 파일모니커의 범용 구현법을을 위한 "이용자명을 분석하기(ParseUserName)"의 방법을 위한 개략적 순서도.
제22도는 어떤 연결된 객체를 나타내는 선도.
〈도면의 주요부분에 대한 부호의 설명〉
101, 2201, 2202 : 혼합문서 102 : 스케줄링 데이터
103 : 분배데이터 104 : 설명데이터
201 : 프로젝트 관리프로그램 203 : 클립보드
204 : 전개식 프로그램 206 : 워드프로세싱 프로그램
301 : 주간 프로젝트 리포트 302 : 전개식 프로그램
304 : 원시문자열 305 : 분배챠트
401, 601 : 객체 데이터구조 402 : 포인터
403 : 부류식별자 404 : 핸들
405 : 데이터 406 : 전용 데이터구조
407 : 포인터 408, 603, 802 : 가상함수표
413 : 인터페이스 데이터구조 502, 503, 504, 505, 506 : 인터페이스
602 : 포인터 701 : 복합모니커
702, 703, 704 : 부분모니커 801 : 데이터구조
803 : 부류확인자(CLASS_ID) 804 : 포인터
805 : 목록 806 : 엔트리
809, 810, 811 : 혼합모니커
[기술 분야]
본 발명은 일반적으로 객체(object)를 명명(naming)하고 결합(binding)시키는 방법(method) 및 시스템(system)에 관한 것이며, 특히, 각각의 객체를 포함하는 연결된 객체(a linked object)를 명명하고 그 것을 그 원시(source)에 배치(locating)하고 결합시키며 객체를 결합시키기 위해 요구되는 서버호출(server invocation)의 수를 감소시키는 일반화된 방법 및 시스템에 관한 것이다.
[발명의 배경]
현행 문서처리용 컴퓨터시스템은 이용자가 혼합문서를 마련할 수 있게 한다. 혼합문서는 다양한 형식(format)으로 정보를 포함하고 있는 문서이다. 일례로, 혼합문서는 문자열 형식과 챠트형식 및 숫자형식 등으로 데이터를 포함할 것이다. 제 1 도는 혼합문서의 일례이다. 이러한 예에서 혼합문서 (101)는 특정한 제조프로젝트를 위한 리포트로서 만들어진다. 혼합문서(101)는 챠트형식으로 주어지는 스케줄링 데이터(102 : scheduling data)와 전개형식(spreadsheet format)으로 주어지는 분배데이터(103 : budgeting data) 및 문자열형식으로 주어지는 설명데이터(104 : explanatory data)를 포함한다. 전형적인 종래의 시스템에서는 프로젝트관리 컴퓨터프로그램을 이용한 스케줄링 데이터(102)와 전개식 컴퓨터프로그램을 이용한 분배데이터(103)를 만들었다. 이러한 데이터가 생성된 후에 이용자는 혼합문서(101)를 만들고 설명데이터(104)를 입력하며 워드프로세싱컴퓨터프로그램을 이용하여 스케줄링 데이터(102)와 분배데이터(103)를 편입시킨다.
제 2 도는 스케줄링 데이터와 분배데이터 및 설명데이터가 혼합문서에 편입될 수 있는 방법을 나타낸다. 이용자는 프로젝트관리프로그램(201)을 이용하여 스케줄링 데이터를 만들고, 이어서, 클립보드(203 : clipboard)에 그러한 데이터를 기억한다. 이용자는 전개식 프로그램(204)을 이용하여 분배데이터를 생성시키고, 이어서, 클립보드(203)에 그러한 데이터를 기억한다. 클립보드(203)는 통상적으로 모든 프로그램으로 접근가능한 기억부(디스크나 메모리)이다. 프로젝트관리프로그램(201)과 전개식 프로그램(204)은 통상적으로 사전선택형식(presentation format)으로 클립보드속에 그러한 데이터를 기억시킨다. 사전선택형식은 데이터가 출력장치에 용이하게 표시되는 형식이다. 일례로, 사전선택형식은 표준비트맵블록전송연산(standard bitmap block transfer operation ; BitBlt)으로 표시될 수 있는 비트맵(bitmap)일 것이다. 데이터를 클립보드속에 기억시키는 것은 클립보드에 "복사(copying)"하는 것이라고 말해진다.
데이터가 클립보드(203)에 복사된 후에 이용자는 혼합문서(101)를 만들기 위한 워드프로세싱프로그램(206)을 시작한다. 이용자는 설명데이터(104)에 들어가서 클립보드(203)에 있는 스케줄링 데이터 및 분배데이터가 복사될 혼합문서(101)내의 위치를 정한다. 클립보드로부터 문서로의 데이터복사는 클립보드로부터의 "페이스팅(pasting)" 이라고 말해진다. 워드프로세싱프로그램(206)은 이어서 클립보드(203)로부터 혼합문서(101)내의 특정위치에 스케줄링 데이터(102) 및 분배데이터(103)를 복사한다. 클립보드로부터 혼합문서속으로 복사되는 데이터는 "내장(embeded)"데이터라고 말해진다. 워드프로세싱 프로그램(206)은 혼합문서(101)를 출력장치에 띄울 때 BitBlt(표준비트맵블록전송연산)로 표시되는 간단한 비트맵으로서의 내장데이터를 처리한다. 일부의 종래 시스템에서는 클립보드가 한 번에 1부(one copy)의 명령을 위한 데이터를 기억할 수 있을 뿐일 수도 있다. 그러한 시스템에서는 스케줄링 데이터는 클립보드에 복사되고, 이어서, 혼합문서속에 페이스트될 수 있다. 이어서, 분배데이터는 클립보드에 복사되고 혼합문서속에 페이스트될 수 있다.
워드프로세서는 통상적으로 문자열데이터만을 처리하므로 워드프로세싱프로그램의 이용자는 내장데이터를 이동시키거나 지울 수 있지만 데이터가 문자열형식으로 있지 않는 한 내장데이터를 변화시킬 수는 없다. 따라서, 이용자가 일례로, 혼합문서(101)에 있는 분배데이터(103)를 변화시키는 것을 원한다면, 이용자는 전개식 프로그램(204)을 시작해서 파일로부터 분배데이터(103)를 싣고 변경작업을 하며 변경된 것을 클립보드(203)에 복사하고 워드프로세싱프로그램(206)을 사작하며 혼합문서(101)에 싣고 변경된 클립보드데이터를 혼합문서(101)에 페이스트해야 한다.
일부의 종래 시스템은 데이터를 실제적으로 내장하기보다는 혼합문서에 포함될 데이터에 대한 링크를 기억한다. 워드프로세싱프로그램이 클립보드로부터 혼합 문서속에 데이터를 페이스트할 때 링크는 혼합문서내에 기억된다. 링크는 포함될 데이터(통상적으로 파일에 있는)로 향해진다. 이러한 종래 시스템은 통상적으로 워드프로세싱프로그램이 사전선택형식으로서 인식할, 즉, 처리할 형식으로의 데이터에 대한 링크를 마련한다. 일례로, 워드프로세싱프로그램(206)이 이용자로부터 스케줄링 데이터 및 분배데이터를 혼합문서속에 내장(embedding)보다는 연결(linking)에 의해 페이스트할 것을 지시받을 때는 스케줄링 데이터 및 분배데이터가 사전선택형식으로 있는 파일명이 문서에 삽입된다. 수개의 혼합문서가 동일 데이터에 대한 링크를 포함하여 1 부(one copy)의 데이터가 수개의 혼합문서에 의해 공유되게 할 수 있다.
[발명의 개요]
본 발명의 목적은 혼합문서내에 편입된 데이터에 대한 링크를 생성시키는 방법 및 시스템을 제공하려는 것이다.
본 발명의 또다른 목적은 언더라잉 데이터(underlying data)에 링크를 결합시키는 방법 및 시스템을 제공하려는 것이다.
본 발명의 또다른 목적은 언더라잉데이터와 독립적으로 이러한 링크를 인터페이스시키는 방법 및 시스템에 관한 것이다.
본 발명의 또다른 목적은 혼합문서내의 임의레벨(arbitrary level)에 내포된 데이터에 대해 링크시키는 방법 및 시스템에 관한 것이다.
본 발명의 상기 및 기타의 목적은 다음의 설명에서 보다 명료해질 것이며, 이는 데이터객체를 명명하고 결합시키는 방법 및 시스템에 의해 달성된다. 양호한 실시에에서는 편입된 객체에 대한 링크가 모니커로서 기억된다. 모니커는 편입된 데이터에 접근하기 위해 필요한 정보를 캡슐화하고 편입된 데이터에 결합하는 방법을 제공하는 객체이다.
[발명의 설명]
본 발명은 연결된 데이터를 명명하고 결합시키는 일반화된 방법을 제공한다. 양호한 실시예에서는 연결된 데이터를 편입시키는 혼합문서가 링크원시(link source)에 대한 인용문인 "모니커(moniker)"로 불리우는 지속적인 데이터핸들을 기억한다. 모니커는 연결된 데이터를 확인하고 응용프로그램의 연결된 데이터에 결합할 수 있는 방법을 제공하는 정보를 포함하는 데이터객체이다.
결합프로세스는 접근될 수 있는 연결된 데이터로 통하는 인터페이스의 사례(instance)를 복귀시킨다. 어떤 경우에는 모니커는 또다른 혼합문서의 내장데이터이기도 한 데이터를 연결시킬 수도 있다. 일례로, 모니커는 워드프로세싱 문서내에 포함된 전개식표내의 일정범위의 셀(cell)에 연결될 것이다. 모니커는 혼합문서내의 모든 레벨에서 데이터에 연결될 것이다. 결합프로세스의 과정에서 수개의 응용프로그램이 링크데이터를 배치하기 위해 호출될 것이다. 일례로, 전개식 표내, 즉, 워드프로세싱 문서내의 일정범위의 셀에 연결시키기 위해 워드프로세싱프로그램은 내장된 전개식 데이터를 배치시키도록 호출되고 전개식 프로그램은 일정 범위의 셀에 결합하도록 호출될 것이다.
본 발명은 접근될 모니커로 통하는 앱스트랙 클래스(abstract class : 일종의 인터페이스)를 형성한다. 통상적으로, 혼합문서에 연결될 수 있는 데이터를 제공하는 각각의 응용프로그램은 지원할 모니커인터페이스를 구현시킨다.
본 발명의 양호한 실시예에서는 혼합문서를 생성시키는 응용프로그램이 또다른 응용프로그램에 의해 발생된 연결되거나 내장된 데이터의 조작을 제어한다. 객체 위주의 팰런스(object-oriented parlance)에서는 이러한 데이터는 객체라고 말해진다(참고문헌인 매디슨-웨즐리출판사의 1991 년판인 티. 버드의 "객체위주의 프로그래밍에 대한 개설"은 객체위주의 개념과 용어에 대한 개설을 제공한다.) 혼합문서에 연결되거나 내장된 객체는 그 문서내에 "포함"된다. 또한, 혼합문서는 "수용기(container)" 객체라고 말해지며, 혼합문서내에 포함된 객체는 "수용자(containee)" 객체라고 말해진다. 제 1 도 및 제 2 도를 보면 스케줄링 데이터(102) 및 분배데이터(103)는 수용자객체이고 혼합문서(101)는 수용기객체이다. 이용자는 분배데이터(103)와 같이 이용자가 수용자 객체를 편집하고 싶은 워드프로세서에 지시할 수 있다. 이용자가 분배데이터(103)가 편집되어야 할 것을 지시할 때는 워드프로세싱프로그램은 분배데이터를 편집하기 위해 사용되어야 할 응용프로그램(일례로, 전개식 프로그램)을 결정하고 그러한 응용프로그램을 시작(launching 또는 starting up)한다. 이용자는 시작된 응용프로그램을 이용하여 분배데이터를 조작하고 그렇게 변화된 것이 혼합문서에 반영될 수 있다. 분배데이터가 내장객체로서 기억되든지 연결객체로서 기억되든지 간에 동일한 절차가 이용된다.
제 3 도는 예시적 혼합문서를 나타내는 블록선도이다. 주간프로젝트리포트(301)는 제 1 도와 동일한 혼합문서이다. 실행상의 요약적 문서(303: 리포트)는 주간프로젝트(301)에 연결되는 분배챠트(305)를 포함한다. 주간프로젝트(301)는 내장된 전개식 프로그램(302)을 포함한다. 내장된 전개식 프로그램(302)은 제 2 도의 전개식 프로그램(204)에 의해 생성된다. 프로젝트를 위한 분배에서 이러한 전개식 프로그램을 위한 데이터는 그 것이 내장객체이므로 주간 프로젝트 리포트(301)의 기억부내에 기억된다. 실행상의 요약적 문서(303)는 원시문자열(304 : native text)과 수용자 객체인 분배챠트 (305)를 수용한다. 분배챠트(305)는 혼합 문서(301)에 내장된 전개식 프로그램(302)내에 수용된 데이터에 연결된다.
양호한 실시예에서는 다수의 응용프로그램(application program 또는 applications)이 객체연결 및 내장기능을 이용하여 혼합문서를 만들고 조작하기 위해 상호협력한다. 혼합문서를 만드는 응용프로그램은 클라이언트 응용프로그램(client application)이라고 말해지며 수용자객체를 생성하고 조작하는 응용프로그램은 서버 응용프로그램(server applications)이러고 말해진다. 하나의 응용프로그램이 클라이언트 응용프로그램과 서버 응용프로그램인 양자 모두로서의 특성을 가질 수도 있다. 제 2 도를 보면 프로젝트 관리프로그램(201)과 전개식 프로그램(204)은 서버 응용프로그램이고 워드프로세싱 프로그램(206)은 클라이언트 응용프로그램이다. 클라이언트 응용프로그램은 수용기객체내의 다양한 객체의 선택 및 선택된 수용자객체를 조작하기 위해 적절한 서버 응용프로그램의 호출을 위한 것이다. 서버 응용프로그램은 수용자객체의 내용을 조작하기 위한 것이다.
양호한 실시예에서는 응용프로그램은 객체연결 및 내장기능을 제공하는 응용프로그래밍 인터페이스(Application Programming Interface : API)를 구비한다. API 는 클라이언트 응용프로그램과 서버 응용프로그램에 의해 호출되는 한 세트의 함수(function)이다. 이러한 함수는 여러가지 중에서 서버 응용프로그램으로나 서버 응용프로그램으로부터 메시지 및 데이터를 보내거나 수용하는 클라이언트 응용 프로그램을 위해 필요한 설정(setup) 및 초기화(initialization)를 처리한다. API는 특정 수용자객체에 작용하고 수용자객체를 조작하기 위해 정확한 서버응용프로그램을 호출하는 함수를 제공한다.
또한, 객체연결 및 내장용 API 는 클라이언트 응용프로그램이 거기에 포함된 객체와 통신할 때 통과하는 "인터페이스"를 형성한다. 인터페이스는 특정한 입력과 출력 및 작동법칙에 의해 이행되는 한 세트의 방법이다. 수용된 객체가 특정한 인터페이스를 지원하면 클라이언트 응용프로그램은 한정된 작동을 실행하기 위해 그 인터페이스의 방법을 호출할 수 있다. 양호한 실시예에서는 클라이언트응용 프로그램은 객체데이터에 대한 직접 접근을 허용하지 않으며 지원된 인터페이스를 이용하여 객체를 조작해야만 한다. 클라이언트 응용프로그램은 인터페이스의 방법을 호출함으로써 객체에 접근한다. 클라이언트 응용프로그램은 인터페이스에 대한 포인터(pointer)를 통해 수용된 객체에 결합된다. 객체데이터에 접근하기 위해 방법은 특정한 접근을 요구하는 서버응용프로그램에 메시지를 보낸다. 양호한 실시예에서는 메시지는 언더라잉 운영 시스템에 의해 구비된 프로세스간 통신기구를 이용하여 클라이언트 응용프로그램 및 서버응용프로그램의 사이로 보내진다.
클라이언트프로세스와 서버프로세스의 사이의 관계를 설명하기 위해 하나의 예를 제시한다. 제 1 도를 다시 보면, 이용자가 혼합문서(101)의 분배데이터(103)를 편집하고 싶으면 다음 순서의 경우(event)가 생긴다. 첫째, 이용자는 객체연결 및 내장용 API에 동적으로 연결되는 워드프로세서 프로그램을 시작한다. 둘째, 이용자는 편집을 위한 혼합문서를 개방한다. 셋째, 이용자는 수용자객체인 분배데이터를 선택하고 선택된 객체가 편집될 것을 표시한다. 넷째, 클라이언트응용프로그램이 클라이언트 API 루틴을 지나는 객체상에서 동작(action)을 수행하는 클라이언트 API 루틴과 객체에 대한 핸들(선택된 객체를 독특하게 확인하는) 및 동작이 편집될 지시기(indicator)를 호출한다. 다섯째, 클라이언트 API 루틴은 전개식 프로그램이 분배데이터를 위한 동작(action)을 부여하는 것을 결정한다. 여섯째, 클라이언트 API 코드는 서버프로세스로서의 전개식 프로그램이 아직 시작되지 않았으면, 이를 시작한다. 일곱째, 워드프로세서 응용프로그램은 전개식 프로그램에 그 것이 분배데이터를 편집해야 한다는 메시지를 보낸다. 여덟째, 서버 API 코드는 편집요구를 수용하고 데이터편접용 전개식 프로그램의 루틴을 호출한다. 편집이 완료되었을 때 전개식 루틴은 서버 API 코드로 복귀한다. 서버 API 코드는 편집이 완료된 것을 표시하는 메시지를 워드프로세서 응용프로그램으로 보낸다. 클라이언트 API 코드는 메시지를 수용하고 그 호출상태로부터 복귀한다. 호출상태로부터의 복귀시에 워드프로세서 응용프로그램은 편집이 완료된 것을 안다.
클라이언트 API 및 서버 API에 더하여 본 발명의 객체연결 및 내장기능은 지속성의 전역 "레지스트리(registry)"를 통해 클라이언트 응용프로그램 및 서버 응용프로그램에 대해 정보를 제공한다. 이러한 레지스트리는, (1) 각각의 종류의 객체마다에 그러한 객체를 이행하는 서버응용프로그램과, (2) 각각의 서버응용프로그램이 클라이언트 응용프로그램에 대해 가하는 동작(action)과, (3) 각각의 서버 응용프로그램을 위한 실행가능한 파일이 배치되는 위치 및, (4) 각각의 서버응용프로그램이 어떤 편입된 객체 핸들러(an associated object handler)를 갖는지의 여부 등과 같은 정보의 데이터베이스이다.
객체위주의 팰런스에서는 인터페이스가 데이터 및 방법의 정의(definition)는 없는 부류(class)인 "앱스트랙 클래스"이다. 객체 "부류(class)"가 객체를 조작하기 위해 이용가능한 실제코드(actual code)를 제공하게 하는 것이 서버응용프로그램의 역할이다.
제 4 도는 견본사례의 객체의 블록선도이다. 양호한 실시예에서의 견본사례의 배치(layout)는 본원에서 참고로 인용하며 명칭이 "객체위주의 프로그래밍언어를 위한 콤파일러에서 가상함수(Virtual Functions) 및 가상 베이스(Virtual Bases)를 이행하는 방법"인 미국특허출원 제 07/682,537 호에 기재된 모델과 일치한다. 견본사례는 각각의 지원된 인터페이스를 위해 객체데이터구조(401 : object data structure) 및 인터페이스 데이터구조(413 : interface data structure)를 포함한다. 객체데이터구조(401)는 인터페이스 데이터구조(413)에 대한 포인터(402 : pointer)를 포함하며 견본사례의 전용데이터(private data)를 포함할 수도 있다. 이러한 견본사례의 전용데이터는 부류식별자(403 : class identifier)와, 객체용기억부에 대한 핸들(404) 및, 객체의 상태를 추적(tracking)하는 데이터(405)를 포함한다. 부류식별자는 객체를 위해 적절한 서버응용프로그램에 접근하기 위해 이용된다. 그것은 프로그래밍 언어로 이용되는 데이터구조 "형태(type)"와 유사하다. 인터페이스는 지속적인 전역 레지스트리에 대한 인덱스(index)로서 부류확인자(CLASS_ ID)를 이용함으로써 객체를 위한 서버응용프로그램을 결정할 수 있다. 제 4 도에 보이듯이, 각각의 인터페이스 데이터구조(413)는 전용데이터구조(406)와 가상함수표(408 : virtual function table)를 포함한다. 전용데이터구조(406)는 가상함수 표(408)에 대한 포인터(407)를 포함한다. 가상함수표(408)는 인터페이스의 방법을 구현시키는 코드에 대한 포인터를 포함한다.
표 1은 객체데이터구조(401)에서의 제 1 엔트리 pintf1을 위한 인터페이스의 정의를 나타낸다. 표 1에서 단어 "interface"는 C++ class 를 의미하는 것으로 정의된다. 정의는 3 개의 방법을 그 인자(argument)와 함께 보인다. 각각의 인자목록(argument list)의 끝에 있는 "=0"은 방법이 코드구현(code implementation)을 갖지 않음을 나타낸다. C++ 프로그래밍언어에서는 이러한 함수는 "순수가상함수(pure virtual functions)"라고 말해진다. 모든 순수가상함수를 갖는 부류는 엡스트랙 클래스라고 말해진다.
제 5 도는 객체의 공시(public view)를 나타내는 블록선도이다. 객체의 공시는 객체가 지원하는 다양한 인터페이스(502-506)이다. 각각의 인터페이스는 클라이언트 응용프로그램이 객체로 접근하는 방법을 제공한다. 각각의 객체는 아이언논 인터페이스(502 : IUnknown interface)를 지원한다. 응용프로그램은 아이언논 인터페이스(502)를 이용하여 그 객체가 지원하는 다른 인터페이스를 결정한다. 특정객체를 위한 아이언논 인터페이스의 구현은 그것이 지원한 다른 인터페이스를 알고 호출한 응용프로그램 포인터(application pointer)를 그러한 인터페이스로 복귀시킨다. 양호한 실시예에서는 방법 아이언논 : 퀴리인터페이스(IUnknown : Querylnterface)가 이러한 목적으로 사용된다. 인터페이스 503 내지 506 은 객체에 의해 지원될 수 있는 범용 인터페이스의 일례이다. 일례로, 인터페이스 503 은 새로은 사례의 객체를 생성시키는 방법을 제공한다. 아이수용기 인터페이스(504 : IContainer interface)는 객체내에 수용되는 수용자객체를 목록화하는 방법을 제공한다. 아이데이터 클라이언트사이트 인터페이스(505 : IDataClientsite interface)는 수용기객체와 통신하는 서버응용프로그램에 의해 이용될 방법을 제공한다. 아이테이터 객체인터페이스(506 : IDataObject interface)는 객체데이터를 조작하는 방법을 제공한다.
제 6 도는 아이모니커인터페이스의 일반적인 사례를 나타내는 블록선도이다. 어펜딕스(A: Appendex)는 아이모니커 인터페이스의 방법의 상세한 설명을 수용한다. 사례데이터구조는 객체데이터구조(601)와 가상함수표(603)를 수용한다. 객체 데이터구조(601)는 가상함수표(603) 및 전용 사례데이터(private instance data)에 대한 포인터(602)를 포함한다. 표 2 는 아이모니커인터페이스를 위한 부류정의(class definition)이다.
이러한 방법에 더하여 아이모니커구현은 통상적으로 아래에서 설명하는
"모니커가 이용자을 명분석하기 (MkParseUserName)"와,
"모니커가 아이결합문맥을 만들기 (MkCreateIBindContext)"와,
"모니커가 범용 복합모니커를 만들기 (MkCreateGenericComposite)"와,
"모니커가 파일모니커를 만들기 (MkCreateFileMoniker)"와,
"모니커가 아이템모니커를 만들기 (MkCreateltemMoniker)" 및,
"모니커가 안티모니커를 만들기 (MkCreateAntiMoniker)"의 함수를 지원한다.
제 22 도는 연결된 객체를 도시한 선도이다. 이러한 예에서, 혼합문서 2201는 혼합문서 101 에 기억된 리포트 등과 같은 다양한 프로젝트리포트의 컴파일(compilation)이다. 혼합문서 2201 는 혼합문서 2202 에 대한 링크를 포함한다. 링크는 파일 "VAC1. DOC"에 기억된 혼합문서가 논리상 혼합문서 2201 내에 있는 것을 나타낸다. 양호한 실시예에서는 링크가 모니커로서 기억된다. 모니커는 링크의 원시에 접근하는 방법을 제공하는 부류(모니커객체)의 사례이다. 모니커객체는 링크원시를 확인하는 데이터를 캡슐화하고 응용프로그램이 링크원시에 접근하는 방법을 제공한다. 일례로, 혼합문서 2201 로부터 혼합문서 2202 로의 링크가 생길 때 워드프로세서는 "VAC1. DOC" 파일로 향하는 모니커객체를 사례화(instantiation)하기 위한 함수를 호출한다. 함수는 포인터를 새로운 모니커객체로 복귀시킨다. 워드프로세서는 이어서 혼합문서 2201 내에 모니커객체를 기억한다. 워드프로세서는 모니커객체의 방법을 통해 링크원시에 접근된다. 일례로, 모니커부류는 "결합(bind)" 방법을 지원한다. 결합방법은 링크원시가 배치되는 위치를 결정하고 원시를 나타내는 객체로 포인터를 복귀시킨다. 이러한 예에서, 모니커객체의 결합방법은 원시가 파일 "VAC.DOC"에 기억되는지를 결정하고 파일을 나타내는 객체를 사례화하며 포인터를 사례화된 객체로 복귀시킨다. 워드프로세서는 이어서 원시데이터에 접근하는 복귀된 파일객체의 방법을 호출할 수 있다.
제 7 도는 제 3 도의 실행상의 요약적 혼합문서(303)에 기억된 모니커를 나타내는 블록선도이다. 이러한 모니커는 연결된 챠트객체(305)를 나타낸다. 링크는 혼합문서내에 내장된 데이터로 향하기 때문에 모니커는 혼합문서를 확인하기 위해 필요한 링크와 혼합문서내의 데이터를 확인하기 위해 필요한 링크의 콤포지트로서 나타내어진다. 링크는 복합모니커라고 말해진다. 복합모니커는 내장계층도에서 좌측 또는 우측에 배치되는 부분모니커(component moniker)를 포함한다. 복합 모니커(701)는 3 개의 부분모니커(702, 703, 704)를 포함한다. 부분모니커(702)는 부류확인자(CLASS_ID : 파일모니커)와 혼합문서(301)의 이용자 판독명 "C: VAC1. DOC"를 포함한다. 부분모니커(703)는 내장객체의 혼합문서 (301)를 조회한다. 워드프로세싱 응용프로그램은 부분모니커(703)를 이해하고 내장된 전개식 프로그램을 배치시키기 위해 이용된다. 부분모니커(703)는 부류확인자(CLASS_ID ; 더블유 아이템모니커)와 내장된 전개식 프로그램의 이용자 판독명을 수용한다. 부류확인자 "더블유아이템모니커"는 워드프로세서가 이러한 부분모니커를 인식하는 것을 지시한다. 부분모니커(704)는 내장된 전개식 객체(302)내의 일정범위의 데이터를 조회한다. 부분모니커(704)는 부류확인자(에스아이템 모니커)와 일정범위의 데이터의 이용자 판독명을 수용한다. 부류확인자 "에스아이템모니커"는 전개식 프로그램이 이러한 부분모니커를 인식하는 것을 지시한다. 복합모니커의 객체데이터구조는 데이터구조(801)와 가상함수표(802)를 포함한다. 데이터구조 (801)는 부류확인자(803)와 연결된 목록(805)에 대한 포인터(804)를 수용한다. 본 예에서 부류 확인자는 아이디 범용 복합모니커(ID GenCompositeMoniker)형 모니커를 지시한다.
제 8 도는 통상적인 복합모니커의 객체데이터 구조를 나타내는 블록선도이다. 연결된 목록(805)은 각각의 부분모니커 마다에 하나의 엔트리(806)를 수용한다. 각각의 엔트리는 부분모니커(809 내지 811)에 대한 포인터를 수용한다.
제 9 도는 "범용 복합모니커방법 :: 구성하기 (GenCompositeMoniker :: ComposeWith)"의 구현의 순서도이다. "범용 복합모니커방법 :: 구성하기"는 좌측에서의 특정 모니커를 갖는 새로운 복합모니커와 그 새로운 복합모니커의 우측부로서의 지정된 모니커를 만든다. 이러한 방법은 포인터를 새로운 복합모니커로 복귀시킨다. 스텝 901 에서의 방법은 지정된 모니커가 범용 복합모니커인지의 여부를 결정하기 위해 "범용 콤포지트인가 ? (IsGenericComposite ?)"를 묻는 방법이다. 만일 그 대답이 "아니오"이면 방법은 스텝 904 로 계속되지만, 그렇지 않으면, 방법은 스텝 902로 계속된다. 스텝 902에서 방법은 포인터를 최초의 부분모니커로 복귀시키는 지정된 모니커의 "제 1 요소를 찾기(FindFirstElement)"의 방법과 부분 모니커의 잔부에 대한 포인터를 호출한다. 스텝 903 에서 방법은 제 1 부분모니커의 부류확인자를 추출한다. 스텝 904 에서 함수는 지정된 모니커의 부류확인자를 추출한다. 스텝 903 과 스텝 904 가 완료되었을 때 방법은 새로운 복합모니커의 우측부로서 이용할 모니커의 부류확인자를 얻는다. 스텝 907 에서 방법은 좌측에 특정모니커가 있고 우측에 지정모니커가 있는 새로운 범용 복합모니커를 만들기 위해 "모니커가 범용 복합모니커를 만들기(MkCreateGenericComposite)"함수를 호출하며, 이어서, 방법은 포인터를 새로운 복합모니커로 복귀시킨다.
제 10 도는 "모니커가 범용 복합모니커를 만들기" 함수를 위한 순서도이다. 이러한 함수는 좌우측에 두개의 모니커를 갖고 좌우측의 모니커를 포함하는 하나의 새로운 모니커를 만들며 포인터를 새로운 모니커로 복귀시킨다. 스텝 1001 에서 함수는 좌측모니커가 범용 복합모니커인지의 여부를 결정하기 위해 pmk 제 1 의 "범용 복합모니커인가 ? (pmkFirst :: IsGenericComposite ?)"를 묻는 것이다. 만일 그 대답이 "예" 이면 함수는 스텝 1004 로 계속되며, 그렇지 않으면 스텝 1002로 계속된다. 스텝 1002 와 스텝 1004 에서 함수는 새로운 범용 복합모니커를 정위치에 배분하고 그 제 1 요소로서 1 부의 좌측모니커를 기억한다. 스텝 1002 에서 함수는 새로운 범용 복합모니커 노드(composite moniker node)를 연결된 목록에서 정위치에 배분하고 이전의 변수에 이러한 값을 기억한다. 스텝 1003 에서 함수는 pcm에 의해 가리켜진 새로운 복합모니커의 제 1 요소로서 pmk 제 1 (pmkFirst)로 지나는 좌측모니커를 삽입한다. 이어서, 방법은 스텝 1008 로 계속된다. 스텝 1004 내지 스텝 1007 에서 함수는 최초의 좌측모니커의 다수의 부분모니커를 포함하는 새로운 복합모니커를 이루기 위한 루프를 이룬다. 루프는 최초의 좌측모니커의 연결된 목록의 요소를 가로지르고 새로운 복합모니커속으로 1 부의 부분모니커를 삽입한다. 스텝 1004 에서 함수는 좌측모니커의 최종요소를 찾기 위해 몇개의 변수를 조기화한다. 이렇게 하기 위해 그 것은 이전의 변수가 연결된 목록의 제 1 요소로 향해지고 현재의 변수가 연결된 리스트의 두번째 요소로 향해지며 pcm 이 연결된 목록의 제 1 요소에 의해 가리켜진 제 1 모니커로 향해지도록 설정한다. 스텝 1005 에서 함수는 현재의 변수가 널(NuLL)인지의 여부를 결정한다. 만일 그 대답이 "예"이면 이전의 변수는 모든 부분모니커가 새로운 복합모니커속에 무효 처리된 것을 지시하는 좌측복합모니커의 최종요소로 향하고 함수는 스텝 1008 로 계속되며, 그렇지 않으면 함수는 스텝 1006 으로 계속된다. 스텝 1006 에서 함수는 현재의 변수에 의해 가리켜진 모니커로 지나는 변수 pcm 에 의해 가리켜진 모니커의 "구성하기(ComposeWith)"의 방법을 호출한다. 스텝 1007 에서 함수는 이러한 새로운 복합모니커로 향하도록 변수 pcm 을 설정하고, 연결된 목록의 이후의 두개의 요소로 향하도록 이전 및 현재의 변수를 갱신(update)하며 이전의 변수가 연결된 목록의 끝을 향하는지의 여부를 결정하도록 스텝 1005 를 향해 루프를 이룬다. 스텝 1008 에서 함수는 우측모니커가 범용 복합모니커인지의 여부를 결정하기 위해 "pmk 잔부가 범용복합모니커인가 ? (pmkRestIsGenericComposite?)"를 묻는 것이다. 만일, 그 대답이 "아니오" 이면, 함수는 스텝 1010 으로 계속되고, 그렇지 않으면, 스텝 1009 로 계속된다. 스텝 1009 에서 함수는 새로운 좌측모니커에 대해 우측모니커의 연결된 목록을 첨부한다. 이어서, 함수는 스텝 1012 로 계속된다. 스텝 1010 과 스텝 1011 에서 함수는 새로운 좌측모니커에 대해 우측모니커를 향하는 새로운 요소를 첨가한다. 스텝 1012 에서 함수는 복귀치 ppmk 복합모니커를 새로이 구성된 모니커인 pcm 로 설정하고 복귀한다.
제 11 도는 전형적인 구현의 "최종요소를 찾기 (FindLastElt)" 방법의 순서도이다. 이러한 방법은 두개의 모니커를 만든다. 제 1 모니커는 특정모니커의 최종부분모니커에 대응한다. 제 2 모니커는 특정모니커의 잔부에 대응한다. 스텝 1101 에서 방법은 현재의 변수가 연결된 목록의 제 2 요소로 향하고, 이전의 변수가 연결된 목록의 제 1 요소로 항하며, 잔여변수가 제 1 부분모니커로 향하도록 설정한다. 스텝 1102 내지 스텝 1105 는 제 2 모니커를 만드는 특정 모니커의 연결된 목록을 가로지른다. 스텝 1102 에서 현재의 변수가 최종요소를 향하면 방법은 스텝 1106으로 계속되고, 그렇지 않으면 방법은 스텝 1103 으로 계속된다. 스텝 1106 에서 방법은 현재의 변수에 의해 가리켜진 모니커로 향하도록 최종요소인자를 설정한다.
제 12 도는 전형적인 구현의 "제 1 요소를 찾기 (FindFirstElt)"의 방법을 위한 순서도이다. 이러한 방법은 "최종요소를 찾기(FindLast Elt)"의 방법과 유사하지만 포인터를 제 1 부분모니커로 복귀시키며, 또한, 포인터를 잔여부분 모니커를 갖는 새로운 복합모니커로 복귀시킨다.
제 13 도는 전형적인 구현의 "객체에 결합하기 (BindToObject)" 방법의 순서도이다. "객체에 결합하기" 방법은 배치에 이용될 객체(또는, 기억부)를 얻고 특정 모니커에 의해 지시된 객체에 결합하기 위해 "객체에 결합하기 (또는, 기억부에 결합하기"를 반복적으로 호출한다. 일반적으로, "객체에 결합하기" 방법은 접두 부분모니커 (prefix component moniker)의 방법을 이용하여 특정 모니커에 의해 지시된 객체 또는 기억부로 복귀한다. 이러한 방법은 우측의 접두모니커(prefixmoniker)의 다수의 "객체에 결합하기" 방법을 좌측으로 호출하는 최종부분 모니커의 "객체에 결합하기" 방법을 호출한다. "객체에 결합하기" 방법은 여섯개의 인자, 즉, 결합문맥에 대한 포인터와, 제 3 의 인자의 인터페이스확인기와, 접두모니커에 대응하는 객체의 인터페이스에 대한 포인터와, 접두모니커와, 콜러(caller)가 결합하려는 인터페이스 및, 사례화한 인터페이스에 대응하는 출력인자를 갖는다. 스텝 1301 에서 방법은 최종부분모니커를 찾기 위해 특정 모니커의 "최종요소를 찾기" 방법을 호출한다. 스텝 1302 에서 방법은 최종부분모니커의 "아이 아이디 객체에 결합하기(IidBindToObject)" 방법을 호출한다. 스텝 1303 에서 본 방법이 아이디_널(ID_NULL)로 복귀하면 최종부분모니커의 "객체에 결합하기" 방법이 결합을 위해 요구되는 인터페이스를 결정하기 위해 호출되어야 하고 방법은 스텝 1304 로 계속되며, 그렇지 않으면 방법은 스텝 1305 로 계속된다. 스텝 1304 에서 "객체에 결합하기" 방법은 접두모니커로서의 복합모니커의 제 1 부분으로 지나는 최종복하모니커의 "객체에 결합하기" 방법을 호출하고 복귀한다. 스텝 1305 에서 최종부분모니커의 "아이아이디 객체에 결합하기" 방법에 의해 복귀된 인터페이스가 아이디_기억부(ID_STORAGE)와 동등하면 방법은 스텝 1306 으로 계속되고, 그렇지 않으면 스텝 1307로 계속된다. 스텝 1306 에서 방법은 접두모니커(변수잔존)의 "기억부에 결합하기 (BindToStorage)" 방법을 호출한다. 그것이 복귀할 때 변수 pv 는 접두모니커에 대응하는 기억부객체의 결합 사례로 향하고 스텝 1308 로 계속된다. 스텝 1307 에서 방법은 접두모니커의 "객체에 결합하기" 방법을 호출한다. 이러한 경우에 그 것은 최종부분모니커에 의해 요구된 인터페이스를 지나고 그 인터페이스에 대응하는 사례화한 객체가 변수 pv 로 복귀된다. 스텝 1308 에서는 변수 pv 에 의해 가리켜진 사례화한 객체는 경과된 결합문맥(bind context)에 지정(register)된다. 결합문맥은 "객체에 결합하기" 방법의 이전의 호출에 의해 결합된 것과 대응하는 현재의 사례화한 객체의 연결된 목록이다. 결합문맥은 특정 모니커에 의해 인용된 객체가 이미 사례화되었는지의 여부를 결정하기 위해 "객체에 결합하기" 방법에 의해 이용된다. 스텝 1309 에서 방법은 최종부분모니커에 의해 요구되는 인터페이스와 접두모니커에 대응하는 사례화한 인터페이스 및 최초의 "객체에 결합하기"에서 요구된 최초의 인터페이스를 갖는 최종부분모니커를 위한 "객체에 결합하기" 방법을 호출한다. 이어서, 방법은 복귀한다.
제 11 도는 파일모니커의 전형적인 구현을 위한 "객체에 결합하기" 방법의 순서도이다. 이러한 방법은 특정파일 모니커에 대응하는 객체가 실행객체표(Running Oboect Table)에 의해 지시된 바와 같이 존재하는지의 여부를 결정하며 포인터를 객체로 복귀시킨다. 실행객체표는 현재의 사례화된 모든 객체에 대한 포인터를 포함한다. 그렇지 않으면 이러한 방법은 적절한 서버응용프로그램을 배치하고 파일에 대한 인터페이스를 사례화한다. "파일모니커 :: 객체에 결합하기" 방법은 일반적인 복합모니커의 "객체에 결합하기" 방법에 목록화된 것과 동일한 여섯개의 인자를 갖는다. 스텝 1401 내지 스텝 1404 에서 방법은 특정파일모니커가 존재하는지의 여부를 결정하기 위해 대응하는 객체에 대한 실행객체를 이용한다. 스텝 1401 에서 방법은 특정모니커가 실행객체표에 목록화 되었는지의 여부를 결정한다. 만일, 그 대답이 예이면 방법은 스텝 1402 로 계속되고, 그렇지 않으면 스텝 1405 로 계속된다. 스텝 1402 에서 방법은 요구된 인터페이스가 실행객체표의 인터페이스에 필적하는지의 여부를 결정한다. 만일, 그 대답이 예이면, 스텝 1403 에서 방법은 포인터를 인터페이스로 복귀시킨다. 그렇지 않으면, 스텝 1404 에서 방법은 실행객체표에서 찾아진 객체의 퀴리인터페이스방법을 통하여 요구된 인터페이스를 얻고 복귀한다. 스텝 1405 에서는 특정모니커가 실행객체표에서 발견되지 않았기 때문에 이러한 방법은 특정모니커(파일명)에 대응하는 서버응용프로그램을 찾는다. 스텝 1406 에서 방법은 그 부류의 사례를 만들기 위해 서버응용프로그램을 이용한다. 스텝 1407 에서 방법은 결합을 위한 인터페이스를 얻기 위해 이러한 사례의 퀴리인터페이스 방법을 이용한다. 스텝 1408 에서는 방법은 결합용 인터페이스의 적재(Load) 방법을 이용하고 복귀한다.
제 15 도는 아이템모니커의 전형적인 구현을 위한 "객체에 결합하기" 방법의 순서도이다. 상기 예에서는 워드프로세싱아이템모니커와 에스아이템모니커가 모두 유사한 구현 방법을 갖는다. 본 방법은 그 "객체를 얻기(Get Object)"의 방법을 호출하기 위해 접두모니커의 인터페이스객체를 이용한다. "객체를 얻기"의 방법은 아이템모니커에 의해 배치된 객체의 사례를 배치시키고 그것에 결합한다. 본 방법은 범용복합모니커의 "객체에 결합하기" 방법으로 보내지는 동일한 여섯개의 인자를 갖는다. 스텝 1501 에서 방법은 객체가 결합을 위해 보내졌는지의 여부를 결정한다. 만일, 그 대답이 "예" 이면 방법은 스텝 1502 로 계속되고, 그렇지 않으면 스텝 1503 으로 계속된다. 스텝 1502 에서 방법은 아이템모니커에 의해 지시된 객체를 사례화하기 위해 통과되는 인터페이스의 "객체를 얻기"의 방법을 호출하고 복귀한다. 스텝 1503 에서는 방법이 요구된 아이수용기인터페이스 (IContainer interface)의 "객체를 얻기" 방법을 호출한다.
제 16 도는 더블유아이템모니커의 전형적인 구현을 위한 "기억부에 결합하기" 방법의 순서도이다. 본 방법은 접두모니커의 "기억부에 결합하기" 방법을 호출하고, 이어서, 그것이 접두모니커를 위한 기억핸들을 얻었을 때 그 것은 특정모니커와 관련된 기억부를 얻는다. 스텝(1601)에서 방법은 통과되는 접두모니커가 널(NULL)인지의 여부를 결정하고, 그 대답이 "예"이면 방법은 복귀하며, 그렇지 않으면 방법은 스텝 1602 로 계속된다. 스텝 1602 에서 방법은 접두모니커의 "기억부를 얻기(GetStorage)" 방법을 호출하고 요구된 인터페이스로 보낸다. 스텝 1603 에서 방법은 현재의 워드프로세싱아이템모니커의 특정객체를 위해 스텝 1602 에서 복귀된 기억인터페이스를 독특한 확인자로 통과시키는 "기억부를 얻기 (GetStorage)" 방법을 호출한다. 이어서, 방법은 종료한다.
제 17 도는 범용 복합모니커 인터페이스(GenericCompositeMoniker interface)를 위한 감축(Reduce) 방법을 위한 개략적인 순서도이다. 본 루틴은 각각의 부분모니커의 감축방법을 이용하여 각각의 부분모니커를 감축하기 위한 시도이고 감축된 부분을 갖는 새로운 범용부분모니커를 구성한다. 방법은 3 개의 인자, 즉, 결합문맥에 대한 포인터와, 접두모니커 및, 감축된 모니커를 위한 출력인자를 갖는다. 스텝 1701 에서 방법은 특정모니커를 포함하는 부분모니커의 연결된 목록에서 제 1 요소를 찾는다. 스텝 1702 내지 스텝 1709 에서 방법은 각각의 부분모니커의 감축된 방법을 호출하고 감축된 부분을 갖는 새로운 복합모니커를 만든다. 스텝 1702 에서 연결된 목록의 모든 요소가 처리되었으면 방법은 스텝 1703 으로 계속되고, 그렇지 않으면 스텝 1704 로 계속된다. 스텝 1703 에서 방법은 새로운 감축된 복합모니커에 대한 출력인자를 설정하고 복귀한다. 스텝 1704 에서 방법은 결합문맥 및 접두모니커에 대한 포인터를 따라 지나는 변수 엠_요소(M_Element)에 의해 가리켜진 부분모니커의 감축 방법을 호출한다. 접두모니커는 지금까지 만들어진 새로운 구성된 모니커에 대응한다. 스텝 1705 에서 방법이 접두모니커로 향하는 변수가 널(NULL)인 것을 결정하면 스텝 1706 으로 계속되고, 그렇지 않으면 스텝 1707 으로 계속된다. 스텝 1706 에서 접두모니커로 향하는 변수가 널(NULL)(루프를 통해 최초에 일어나는)을 가리키면 그것은 스텝 1704 로 복귀된 감축된 부분모니커로 설정되고, 방법은 1709 로 계속된다. 스텝 1707 에서 접두모니커로 향하는 변수가 널(NULL)이 아니면 방법은 스텝 1704 로 복구된 새로운 감축된 모니커를 갖는 접두모니커를 합성하기 위해 접두모니커의 "구성하기(ComposeWith)"의 방법을 호출한다. 스텝 1708 에서 접두모니커로 향하는 변수는 발생된 모든 모니커감축을 수용하는 새로이 구성된 결과모니커로 재설정된다. 스텝 1709 에서 변수 엠_요소(M_Element)는 부분모니커의 연결된 목록의 이후의 요소로 진행되고 방법은 스텝 1702 에서의 루프의 정상으로 복귀한다.
제 18 도는 파일모니커의 전형적인 구현을 위한 감축방법은 순서도이다. 감축방법은 통과되는 접두모니커를 고찰하여 접두모니커의 최종부분이 또다른 파일모니커인지의 여부를 결정한다. 만일, 또다른 파일모니커가 있으면 본 방법은 두개의 파일모니커를 하나로 조합한 새로운 구성된 파일모니커로 복귀한다. 그것은 또한 통과되는 접두모니커로 부터 소모된 파일모니커를 제거한다. 이 기능은 3 개의 인자, 즉, 결합문맥에 대한 포인터와, 접두모니커에 대한 포인터 및, 새로이 감축된 모니커가 복귀되는 출력인자를 갖는다. 스텝 1801 에서 함수는 혹시 널(NULL) 인지를 알아보기 위해 통과되는 접두모니커를 시험한다. 만일, 그 것이 널(NULL)이면 기능은 복귀하고, 그렇지 않으면 함수는 스텝 1802 로 계속된다. 스텝 1802 에서 함수는 혹시 일반적인 복합모니커인지를 알아보기 위해 접두모니커를 고찰한다. 만일, 그러하면 함수는 스텝 1804 로 계속되고, 그렇지 않으면 스텝 1803 으로 계속된다. 스텝 1803 에서 함수는 접두모니커가 단순모니커(simple moniker)이기 때문에 접두모니커에 대한 최종요소를 설정하고 스텝 1805 로 복귀한다. 스텝 1804 에서 함수는 접두복합모니커에 최종요소를 얻기 위해 접두모니커의 "최종요소를 찾기" 방법을 호출한다. 스텝 1805 에서 최종요소의 부류확인자(CLASS_ID)가 혹시 파일모니커인지를 알기 위해 검사된다. 만일, 그렇지 않다면 함수는 스텝 1806 으로 계속되고, 그러면 스텝 1807 으로 계속된다. 스텝 1806 에서 함수는 아무런 감축도 발생되지 않았기 때문에 출력인자를 그대로 설정하고 복귀한다. 스텝 1807 에서 함수는 최종요소에 의해 가리켜진 모니커의 파일명에 대해 그 모니커와 관련된 파일명을 첨가한다. 이제, 스텝 1808 에서 함수는 새로운 파일명기호열(filename string)을 갖는 그 자체의 생성방법을 호출한다. 스텝 1809 에서는 함수가 접두모니커를 접두모니커에서 최종요소를 뺀 것과 동일한 것으로 두거나, 또는, 접두모니커가 복합모니커가 아니면 널(NULL)인 것으로 처리한다. 1810 에서 함수는 새로이 감축된 모니커에 대응하는 출력인자를 스텝 1808 로 만들어진 모니커로 설정하고, 이후에 함수로 복귀한다.
제 19 도는 워드프로세싱 아이템모니커인 더블유아이템 모니커(Wltem Moniker)의 전형적인 구현을 위한 감축된 방법의 개략적인 선도를 나타낸다. 본 루틴은 내장객체를 위해 서버응용프로그램을 직접 호출함으로써 워드프로세싱응용프로그램을 호출하는 것을 우회하도록 "객체에 결합하기" 방법에 의해 이용될 수 있는 특정한 종류의 모니커인 기억모니커로 복귀한다. 이를 위해, 내장객체를 위한 적절한 기억포인터를 찾기 위해 워드프로세싱문서내에 포함된 특정한 객체표(object table)를 탐색한다. 이러한 기억포인터는 이어서 기억모니커로 구성되며, 그 "객체에 결합하기" 방법에 호출되고 이용할 서버응용프로그램을 어림잡을 수 있다. 본 루틴은 3 개의 인자, 즉, 결합 문맥에 대한 포인터와, 접두모니커 및, 새로이 감축된 모니커를 포함할 출력인자를 갖는다. 스텝 1901 에서 방법은 접두모니커가 널(NULL)인지의 여부를 탐지하고, 만일, 그러하면 복귀하고, 그렇지 않으면 방법은 스텝 1902로 계속된다. 스텝 1902 에서 방법은 혹시 접두모니커가 범용 복합모니커인지의 여부를 탐지하고, 만일, 그러하면 스텝 1903 으로 계속되고, 그렇지 않으면 스텝 1904 로 계속된다. 스텝 1903 에서 함수는 연결된 목록에서 최종모니커에 대한 포인터를 얻기 위해 접두모니커의 "최종요소를 찾기" 방법을 호출한다. 스텝 1904 에서 방법은 접두모니커가 복합모니커가 아니기 때문에 최종요소 포인터를 접두모니커로 설정한다. 스텝 1905 에서 방법은 혹시 파일모니커인지의 여부를 알아보기 위해 최종요소의 부류확인자(CLASS_ID)를 고찰한다. 만일, 그렇지 않으면 함수눈 스텝 1906 으로 계속되고, 그러하면 스텝 1907 으로 계속된다. 스텝 1906 에서 함수는 어떤 감축도 불가능하므로 그대로 출력인자로 복귀한다. 스텝 1907 에서 방법은 파일이 워드프로세싱응용 프로그램에 속하는지의 여부를 결정하기 위해 파일연장부를 고찰한다. 만일, 파일이 미지의 것인 것으로 결정하면 스텝 1906 으로 계속되고, 그렇지 않으면 스텝 1908 로 계속된다. 스텝 1908 에서 방법은 접두모니커를 갖는 최종요소의 파일명을 얻기 위해 최종요소포인터에 의해 가리켜진 모니커의 "이용자명을 얻기(GetUserName)" 방법을 호출한다. 스텝 1909 에서는 현재의 모니커에 대응하는 엔트리를 찾기 위해 얻어진 파일명의 알려진 위치에서 객체표를 탐색한다. 표에서의 요소는 3 개의 터플(tupple : 더블유아이템 모니커, 아이기억부, 이용자명)의 형태이다. 이러한 표로부터 방법은 저항포인터와 만들어진 새로운 모니커를 위한 이용자명을 얻는다. 이어서, 스텝 1910 에서는 얻어진 새로운 명칭에 대해 접두모니커의 최종요소의 파일명의 이용자명을 첨가한다. 스텝 1911 에서 방법은 기억포인터와 새로운 명칭을 갖는 새로운 아이기억부(IStorage)모니커를 만든다. 스텝 1912 에서 접두모니커는 접두모니커에서 최종요소를 뺀 것의 잔부로 설정된다. 최후로, 스텝 1913 에서 출력인자가 만들어진 새로운 아이기억부모니커로 설정되고 함수가 복귀한다.
제 20 도는 "모니커가 이용자명을 분석하기(MkParseUserName)"함수를 위한 순서도이다. 이러한 함수는 기호열 명(string name)을 가지며 대응하는 모니커로 복귀한다. 스텝 2001 에서 함수는 적합한 파일명을 찾기 위해 기호열(string)을 분석한다. 스텝 2002 에서 함수는 이러한 파일명을 위한 파일모니커를 만들고 그것을 변수 pfm 에 기억한다. 스텝 2003 에서 함수는 잔존하는 기호열을 지나간 최초의 기호열에서 소모된 문자를 뺀 것으로 설정한다. 최후로, 스텝 2004 에서 함수는 pfm 에 의해 가리켜진 파일모니커를 위한 "이용자명을 분석하기" 방법을 호출하고 잔존하는 기호열과 복귀모니커의 어드레스를 통과시킨다. 파일모니커의 "이용자명을 분석하기" 방법이 복귀한 때에 기호열의 잔부는 분석되었을 것이다. 함수는 복귀한다.
제 21 도는 파일모니커의 전형적인 구현을 위한 "이용자명을 분석하기" 방법을 위한 개략적인 순서도이다. 수용될 수 있는 객체의 종류를 알지 못하기 때문에 방법은 기호열의 다음 부분을 분석하기 위하여 파일명에 의해 지시된 객체에 결합할 필요가 있는지의 여부를 결정해야 한다. 이러한 방법은 4 개의 인자, 즉, 결합 문맥(BindContext)에 대한 포인터와, 접두모니커에 대한 포인터와, 분석될 잔존하는 기호열명 및, 결과모니커에 대한 포인터를 갖는다. 스텝 2101 에서 방법은 이러한 파일내에 수용된 객체의 기호배열(syntax)을 이해할 수 있는지의 여부를 결정 한다. 그 대답이 "예"이면 방법은 스텝 2102로 계속되고, 그렇지 않으면 스텝 2103 으로 계속된다. 스텝 2102 에서 방법은 그 내부의 "기호열을 분석하기" 루틴을 이용하여 분석가능한 기호열부분을 위한 모니커를 만든다. 이어서, 스텝 2105로 계속된다. 스텝 2103 에서 방법은 그 자체예 "객체에 결합하기"를 호출하여 그 것을 "이용자명을 분석하기" 방법으로 통과된 접두모니커로 보낸다. 이어서, 스텝 2104 에서 이러한 방법은 객체의 "이용자명분석하기" 방법을 호출하여 접두모니커로 보내고, 이용자기호열은 분석되게 남겨둔다. 최후로, 스텝 2105 에서 접두모니커의 "구성하기(ComposeWith)"의 방법이 새롭게 만들어진 모니커를 부가하기 위해 이용된다. 함수는 복귀한다.
본 발명이 양호한 실시예를 중심으로 기술되어 있으나, 그것은 본 발명이 그러한 실시예로 제한되는 것을 의도하지 않는다. 본 발명의 정신내에서의 변경이 당분야에 숙련된 자에게는 명백할 것이다. 본 발명의 범위는 첨부된 청구범위에 의해 한정된다.

Claims (22)

  1. 컴퓨터 시스템에서 객체의 발생 방법에 있어서, 호출할 때 원시 객체를 배치 및 접근함으로써 원시 객체에 결합하는 결합 멤버 함수를 갖는 식별자 클래스의 식별자 객체의 사례를 제공하는 단계와, 원시 객체에 결합하기 위한 결합 멤버 함수에 의해 명명 정보로서 식별자 객체에 레퍼런스를 저장하는 단계와, 원시 객체에 결합했을 때 사용되는 원시 객체에 저장된 레퍼런스를 갖는 식별자 객체에 레퍼런스를 저장하는 단계를 포함하는 컴퓨터 시스템에서 객체의 발생방법.
  2. 제1항에 있어서, 식별자 객체의 결합 멤버 함수는 호출했을 때 식별자 객체의 명명 정보에 의해 참조된 원시 객체를 사례화하고 사례화된 원시 객체에 포인터를 복귀하는 것에 의해 결합하는 컴퓨터 시스템에서 객체의 발생 방법.
  3. 제1항에 있어서, 식별자 객체는 식별자 객체의 정규 형태인 감축된 식별자 객체를 생성하기 위한 감축 멤버 함수를 갖는 컴퓨터 시스템에서 객체의 발생 방법.
  4. 제1항에 있어서, 호출할 때, 식별자 객체는 스크립트를 분석 및 프로세스하고 프로세스했을 때 원시 객체를 확인하고 식별자 객체의 감축된 형태인 다른 식별자 객체를 생성 및 복귀하는 감축 멤버 함수를 갖는 컴퓨터 시스템에서 객체의 발생 방법.
  5. 제1항에 있어서, 식별자 객체는 프로세스시 원시 객체를 확인하는 마크로 및 호출시 원시 객체를 참조하고 식별자 객체의 감축된 형태인 감축 식별자 객체를 생성하고 복귀하기 위해 마크로를 분석 및 프로세스하는 감축 멤버 함수를 갖는 컴퓨터 시스템에서 객체의 발생 방법.
  6. 제1항에 있어서, 호출되었을 때 식별자 객체의 결합 멤버 함수는 감축된 식별자 객체를 생성하기 위해 감축 멤버 함수를 호출하고 그 후 원시 객체에 결합하기 위해 감축 식별자 객체의 함수의 결합 멤버 함수를 호출하는 컴퓨터 시스템에서 객체의 발생 방법.
  7. 제1항에 있어서, 식별자 객체는 호출시 퀴리(query)를 실행하고 만족시 복수의 원시 객체로부터 원시 객체를 확인하는 감축 멤버 함수를 갖는 컴퓨터 시스템에서 객체의 발생 방법.
  8. 제1항에 있어서, 원시 객체를 참조하는 복합 식별자 객체를 생성하기 위해 제2 식별자 객체를 구비하며 호출시 내부 스테이트에 의해 참조되는 수용기 객체에 배치 및 연결하는 결합 코드를 확인하는 제1 부류식별자를 갖는 제 1 식별자 객체를 포함하며, 복합 식별자 객체의 사례를 생성하며, 그 생성된 복합 식별자 객체는 호출시 생성된 복합 식별자 객체의 내부 스테이트에 의해 참조되는 원시 객체에 배치 및 연결하는 결합 코드를 확인하는 복합 부류식별자를 갖고 내부 스테이트를 가지며, 생성된 복합 식별자 객체의 내부 스테이트내 제1 식별자 객체에 레퍼런스를 저장하며, 생성된 복합 식별자 객체의 내부 스테이트내 제2 식별자 객체에 레퍼런스를 저장하며, 이때 제 2 식별자는 아이템을 참조하는 내부 스테이트를 가지며 호출시 내부 스테이트에 의해 참조되는 아이템에 배치 및 연결하는 결합 코드를 확인하는 제 2 부류식별자를 가지며, 제 2 식별자 객체는 원시 객체로서 수용기 객체내에 아이템을 참조하는 제 1 식별자 객체로 구성되는 컴퓨터 시스템에서 객체의 발생 방법.
  9. 제8항에 있어서, 복합 부류식별자에 의해 확인된 결합 코드가 호출되었을 때 제1 식별자 객체에 저장된 레퍼런스를 통과하는 제2 식별자 객체의 제 2 부류식별자에 의해 확인되는 결합 코드를 호출하며, 제2 식별자 객체의 제2 부류식별자에 의해 확인된 결합 코드가 호출되었을때, 제1 식별자 객체의 내부 스테이트에 의해 참조된 수용기 객체에 결합하기 위해 제1 식별자 객체의 결합 코드를 호출하며, 제1 식별자 객체에 의해 참조된 결합된 수용기 객체에 레퍼런스를 수용하며, 제2 식별자 객체의 내부 스테이트에 의해 참조된 아이템에 배치 및 연결하기 위해 결합된 수용기 객체에 수용된 레퍼런스를 사용하는 것을 포함하는 컴퓨터 시스템에서 객체의 발생 방법.
  10. 제1항에 있어서, 컴퓨터 시스템은 클라이언트 코드, 서버 코드 관련 원시 객체를 가지며, 이 때 식별자 객체의 사례의 생성은 식별자 객체의 사례를 생성한 후에 서버 코드의 실행을 종결하며, 서버 코드의 실행을 종결한 후에 생성된 식별자 객체의 결합 멤버 함수를 실행하는 것에 의해 원시 객체를 배치 및 접근하며, 이 때 결합 멤버 함수는 생성된 식별자 객체의 명명 정보에 의해 참조되는 원시 객체를 배치 및 접근하기 위해 서버 코드를 시작하는 컴퓨터 시스템에서 객체의 발생 방법.
  11. 제1항에 있어서, 원시 객체는 실행시 원시 데이터를 관리하는 관련 서버 코드를 나타내는 데이터 형태를 가지며 파일내에 저장된 원시 데이터를 포함하며, 이 때 명명 정보는 파일내에 저장된 원시 데이터의 데이터 형태를 나타내는 파일명이며, 실행시 명명 정보로서 저장된 파일명에 의해 표시되는 데이터 형태와 관련된 서버 코드를 호출하는 식별자 객체의 부류식별자에 의해 확인되는 결합코드는 파일명에 의해 참조되는 파일로부터 원시 데이터를 로드하기 위해 호출된 서버 코드를 요구하며 로드된 데이터로 레퍼런스를 복귀하는 컴퓨터 시스템에서 객체의 발생 방법.
  12. 원시 데이터를 참조하는 객체를 발생하기 위한 컴퓨터 시스템에 있어서, 호출시 원시 데이터를 배치 및 접근하는 것에 의해 원시 데이터에 결합하는 결합 멤버 함수를 갖는 식별자 클래스의 식별자 객체의 사례를 생성하기 위한 수단과, 원시 데이터에 결합하기 위해 결합 멤버 함수에 의해 사용되는 명명 정보로서 식별자 객체내 원시 데이터에 레퍼런스를 저장하기 위한 수단과, 원시 데이터에 결합했을 때 사용되는 원시 데이터에 저장된 레퍼런스를 갖는 식별자 객체에 레퍼런스를 저장하기 위한 수단을 포함하는 원시 데이터를 참조하는 객체를 발생하기 위한 컴퓨터 시스템.
  13. 제12항에 있어서, 호출시 식별자 객체의 결합 멤버 함수는 식별자 객체의 명명 정보에 의해 참조되는 원시 데이터를 사례화하고 그 사례화된 원시 데이터에 포인터를 복귀하는 것에 의해 결합하는 원시 데이터를 참조하는 객체를 발생하기 위한 컴퓨터 시스템.
  14. 제12항에 있어서, 식별자 객체는 원시 데이터를 확인하고 식별자 객체의 정규형태인 감축된 식별자 객체를 생성하기 위해 감축 멤버 함수를 갖는 원시 데이터를 참조하는 객체를 발생하기 위한 컴퓨터 시스템.
  15. 제12항에 있어서, 식별자 객체는 호출시 스크립트를 분석 및 프로세스하고, 프로세스시 원시 데이터를 확인하고 식별자 객체의 감축된 형태인 다른 식별자 객체를 생성 및 복귀하는 감축 멤버 함수를 갖는 원시 데이터를 참조하는 객체를 발생하기 위한 컴퓨터 시스템.
  16. 제12항에 있어서, 식별자 객체는 프로세스시 원시 데이터를 확인하는 마크로와, 호출시 원시 데이터를 참조하고 식별자 객체의 감축된 형태인 감축된 식별자 객체를 생성하고 복귀하기 위해 상기 마크로를 분석 및 프로세스하는 감축 멤버 함수를 갖는 원시 데이터를 참조하는 객체를 발생하기 위한 컴퓨터 시스템.
  17. 제12항에 있어서, 호출되었을 때 식별자 객체의 결합 멤버 함수는 감축된 식별자 객체를 생성하기 위해 감축 멤버 함수를 호출하고 그 후 원시 데이터에 결합하기 위해 감축된 식별자 객체의 결합 멤버 함수를 호출하는 원시 데이터를 참조하는 객체를 발생하기 위한 컴퓨터 시스템.
  18. 제12항에 있어서, 식별자 객체는 호출시 퀴리를 실행하고, 만족시 복수의 원시 데이터로부터 한 원시 데이터를 확인하는 감축 멤버 함수를 갖는 원시 데이터를 참조하는 객체를 발생하기 위한 컴퓨터 시스템.
  19. 제12항에 있어서, 원시 객체를 참조하는 복합 식별자 객체를 생성하기 위해 제2 식별자 객체를 구비하며 호출시 내부 스테이트에 의해 참조되는 수용기 객체에 배치 및 연결하는 결합 코드를 확인하는 제1 부류식별자를 갖는 제 1 식별자 객체를 포함하는 수단과, 복합 식별자 객체의 사례를 생성하며, 그 생성된 복합 식별자 객체는 호출시 생성된 복합 식별자 객체의 내부 스테이트에 의해 참조되는 원시 객체에 배치 및 연결하는 결합 코드를 확인하는 복합 부류식별자를 가지면 내부 스테이트를 가지며, 생성된 복합 식별자 객체의 내부 스테이트내 제1 식별자 객체에 레퍼런스를 저장하며, 생성된 복합 식별자 객체의 내부 스테이트내 제2 식별자 객ㅊ에 레퍼런스를 저장하며, 이때 제 2 식별자는 아이템을 참조하는 내부 스테이트를 가지며 호출시 내부 스테이트에 의해 참조되는 아이템에 배치 및 연결하는 결합 코드를 확인하는 제 2 부류식별자를 가지며, 제 2 식별자 객체를 원시 객체로서 수용기 객체내에 아이템을 참조하는 제 1 식별자 객체를 구성하기 위한 수단을 포함하는 원시 데이터를 참조하는 객체를 발생하기 위한 컴퓨터 시스템.
  20. 제19항에 있어서, 복합 부류식별자에 의해 확인된 결합 코드가 호출되었을 때 제1 식별자 객체에 저장된 레퍼런스를 통과하는 제2 식별자 객체의 제2 부류식별자에 의해 확인되는 결합 코드를 호출하기 위한 수단과, 제2 식별자 객체의 제2 부류식별자에 의해 확인된 결합 코드가 호출되었을때, 제1 식별자 객체의 내부 스테이트에 의해 참조된 수용기 객체에 결합하기 위해 제1 식별자 객체의 결합 코드를 호출하며, 제1 식별자 객체에 의해 참조된 바운드된 수용기 객체에 레퍼런스를 수용하며, 제2 식별자 객체의 내부 스테이트에 의해 참조된 아이템에 배치 및 연결하기 위해 결합된 수용기 객체에 수용된 레퍼런스를 사용하기 위한 수단을 포함하는 원시 데이터를 참조하는 객체를 발생하기 위한 컴퓨터 시스템.
  21. 제12항에 있어서, 컴퓨터 시스템은 클라이언트 코드, 서버 코드와 관련된 원시 객체를 가지며, 이 때 식별자 객체의 사례의 생성은 식별자 객체의 사례를 생성한 후에 서버 코드의 실행을 종결하며, 서버 코드의 실행을 종결한 후에 생성된 식별자 객체의 결합 멤버 함수를 실행하는 것에 의해 원시 객체를 배치 및 접근하며, 이 때 결합 멤버 함수는 생성된 식별자 객체의 명명 정보에 의해 참조되는 원시 객체를 배치 및 접근하기 위해 서버 코드를 시작하기 위한 수단을 갖는 원시 데이터를 참조하는 객체를 발생하기 위한 컴퓨터 시스템.
  22. 제12항에 있어서, 원시 객체는 실행시 원시 데이터를 관리하는 관련 서버 코드를 나타내는 데이터 형태를 가지며 파일내에 저장된 원시 데이터를 포함하며, 이 때 명명 정보는 파일내에 저장된 원시 데이터의 데이터 형태를 나타내는 파일명이며, 실행시 명명 정보로서 저장된 파일명에 의해 표시되는 데이터 형태와 관련된 서버 코드를 호출하는 식별자 객체의 부류식별자에 의해 확인되는 결합 코드는 파일명에 의해 참조되는 파일로부터 원시 데이터를 로드하기 위해 호출된 서버 코드를 요구하며 로드된 데이터로 레퍼런스를 복귀하는 원시 데이터를 참조하는 객체를 발생하기 위한 컴퓨터 시스템.
KR1019930012598A 1992-07-06 1993-07-06 객체의 명명 및 결합들 위한 방법 및 시스템 KR100287045B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US90998392A 1992-07-06 1992-07-06
US909,983 1992-07-06

Publications (2)

Publication Number Publication Date
KR940006027A KR940006027A (ko) 1994-03-22
KR100287045B1 true KR100287045B1 (ko) 2001-04-16

Family

ID=25428141

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019930012598A KR100287045B1 (ko) 1992-07-06 1993-07-06 객체의 명명 및 결합들 위한 방법 및 시스템

Country Status (7)

Country Link
US (10) US5581760A (ko)
EP (2) EP0930566A3 (ko)
JP (1) JP3613401B2 (ko)
KR (1) KR100287045B1 (ko)
AT (1) ATE187268T1 (ko)
CA (1) CA2099918C (ko)
DE (1) DE69327138T2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100772396B1 (ko) * 2006-02-10 2007-11-01 삼성전자주식회사 데이터 객체 병합 방법 및 장치
KR101213843B1 (ko) 2004-08-27 2012-12-20 마이크로소프트 코포레이션 원활한 객체 비교 시스템 및 방법

Families Citing this family (457)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5506983A (en) * 1992-07-06 1996-04-09 Microsoft Corporation Method and system for transactioning of modifications to a tree structured file
US5805885A (en) * 1992-12-24 1998-09-08 Microsoft Corporation Method and system for aggregating objects
WO1994027228A1 (en) * 1993-05-10 1994-11-24 Apple Computer, Inc. System for automatically determining the status of contents added to a document
AU6826794A (en) * 1993-05-10 1994-12-12 Apple Computer, Inc. Computer-human interface system which manipulates parts between a desktop and a document
US5812862A (en) * 1993-05-10 1998-09-22 Apple Computer, Inc. Computer-human interface system for compound documents
US6751796B1 (en) 1993-06-25 2004-06-15 Microsoft Corporation Integration of systems management services with an underlying system object model
CA2124720C (en) * 1993-06-25 2002-10-22 Michael R. C. Seaman Integration of systems management services with an underlying system object model
DE69426615T2 (de) * 1993-07-20 2001-06-28 Canon K.K., Tokio/Tokyo Vorrichtung und Verfahren zum Verarbeiten von Dokumenten
CA2118169A1 (en) * 1993-10-27 1995-04-28 Michael R.C. Seaman Event architecture for system management in an operating system
US5568639A (en) * 1993-11-24 1996-10-22 Menai Corporation Method and apparatus for providing an object-oriented file structuring system on a computer
US6813769B1 (en) * 1997-10-28 2004-11-02 Microsoft Corporation Server application components with control over state duration
US5991782A (en) * 1994-02-18 1999-11-23 Fujitsu Limited Automated extraction and doubly linked reference marks for partialized document contents and version control
FR2717280B1 (fr) * 1994-03-10 1996-04-05 Bull Sa Procédé de gestion de l'héritage multiple d'objets persistants et partagés.
US5608909A (en) * 1994-04-15 1997-03-04 Microsoft Corporation Method and system for caching presentation data of a source object in a presentation cache
US6708196B1 (en) * 1994-04-15 2004-03-16 Microsoft Corporation Method and system for caching presentation data
EP0729610B1 (en) * 1994-09-21 2000-07-12 Kodak Limited A link manager for managing links integrating data between application programs
US5838906A (en) 1994-10-17 1998-11-17 The Regents Of The University Of California Distributed hypermedia method for automatically invoking external application providing interaction and display of embedded objects within a hypermedia document
US5862372A (en) * 1994-11-16 1999-01-19 Morris; Robert M. Visually oriented computer implemented application development system utilizing standardized objects and multiple views
US5831606A (en) * 1994-12-13 1998-11-03 Microsoft Corporation Shell extensions for an operating system
DE69535580T2 (de) * 1994-12-13 2007-12-06 Microsoft Corp., Redmond Datenaustausch mit erweiterten Zwischenablage-Datenformaten
JPH08212205A (ja) * 1995-02-07 1996-08-20 Nec Corp 複合文書管理システム
US5884321A (en) * 1995-03-22 1999-03-16 Meffert; Gregory John Document image and query management system for application databases
US5802531A (en) * 1995-05-08 1998-09-01 Apple Computer, Inc. Method and system for embedding parts of documents and synchronizing multiple views thereof
US6213392B1 (en) * 1995-05-09 2001-04-10 Smartmove, Ltd. Card interface for interfacing a host application program to data storage cards
US5664208A (en) * 1995-05-16 1997-09-02 Apple Computer, Inc. Methods and apparatuses for seamless compound document processing
US5740455A (en) * 1995-05-16 1998-04-14 Apple Computer, Inc. Enhanced compound document processing architectures and methods therefor
US6577746B1 (en) * 1999-12-28 2003-06-10 Digimarc Corporation Watermark-based object linking and embedding
US6016392A (en) 1995-11-03 2000-01-18 Intergraph Corporation Method for object-oriented programming using dynamic interfaces
US5870464A (en) * 1995-11-13 1999-02-09 Answersoft, Inc. Intelligent information routing system and method
US6246410B1 (en) * 1996-01-19 2001-06-12 International Business Machines Corp. Method and system for database access
US5802380A (en) * 1996-03-08 1998-09-01 Microsoft Corporation Method and system for uniform access of textual data
JPH09282167A (ja) * 1996-04-10 1997-10-31 Internatl Business Mach Corp <Ibm> メソッド起動方法及びメソッド起動制御装置
DE19615683A1 (de) * 1996-04-22 1997-10-23 Sel Alcatel Ag Verfahren und Steuereinrichtung für eine graphische Steuerung von Abläufen in einem Netzwerkmanagementsystem
US6182083B1 (en) 1997-11-17 2001-01-30 Sun Microsystems, Inc. Method and system for multi-entry and multi-template matching in a database
US6237024B1 (en) 1998-03-20 2001-05-22 Sun Microsystem, Inc. Method and apparatus for the suspension and continuation of remote processes
US6466947B2 (en) 1998-03-20 2002-10-15 Sun Microsystems, Inc. Apparatus and method for dynamically verifying information in a distributed system
US6421704B1 (en) 1998-03-20 2002-07-16 Sun Microsystems, Inc. Method, apparatus, and product for leasing of group membership in a distributed system
US6138238A (en) * 1997-12-11 2000-10-24 Sun Microsystems, Inc. Stack-based access control using code and executor identifiers
US6938263B2 (en) 1996-04-23 2005-08-30 Sun Microsystems, Inc. System and method for facilitating dynamic loading of “stub” information to enable a program operating in one address space to invoke processing of a remote method or procedure in another address space
US6446070B1 (en) 1998-02-26 2002-09-03 Sun Microsystems, Inc. Method and apparatus for dynamic distributed computing over a network
US6708171B1 (en) 1996-04-23 2004-03-16 Sun Microsystems, Inc. Network proxy
US6226746B1 (en) 1998-03-20 2001-05-01 Sun Microsystems, Inc. Stack-based system and method to combine security requirements of methods
US6832223B1 (en) 1996-04-23 2004-12-14 Sun Microsystems, Inc. Method and system for facilitating access to a lookup service
US6185611B1 (en) 1998-03-20 2001-02-06 Sun Microsystem, Inc. Dynamic lookup service in a distributed system
US6598094B1 (en) 1998-03-20 2003-07-22 Sun Microsystems, Inc. Method and apparatus for determining status of remote objects in a distributed system
US6272559B1 (en) * 1997-10-15 2001-08-07 Sun Microsystems, Inc. Deferred reconstruction of objects and remote loading for event notification in a distributed system
US6134603A (en) * 1998-03-20 2000-10-17 Sun Microsystems, Inc. Method and system for deterministic hashes to identify remote methods
US6487607B1 (en) 1998-02-26 2002-11-26 Sun Microsystems, Inc. Methods and apparatus for remote method invocation
US6560656B1 (en) 1998-02-26 2003-05-06 Sun Microsystems, Inc. Apparatus and method for providing downloadable code for use in communicating with a device in a distributed system
US6578044B1 (en) 1997-11-17 2003-06-10 Sun Microsystems, Inc. Method and system for typesafe attribute matching
US6393497B1 (en) 1998-03-20 2002-05-21 Sun Microsystems, Inc. Downloadable smart proxies for performing processing associated with a remote procedure call in a distributed system
US6463446B1 (en) 1998-02-26 2002-10-08 Sun Microsystems, Inc. Method and apparatus for transporting behavior in an event-based distributed system
US6438614B2 (en) 1998-02-26 2002-08-20 Sun Microsystems, Inc. Polymorphic token based control
US6247026B1 (en) 1996-10-11 2001-06-12 Sun Microsystems, Inc. Method, apparatus, and product for leasing of delegation certificates in a distributed system
US5923877A (en) * 1996-05-01 1999-07-13 Electronic Data Systems Corporation Object-oriented programming memory management framework and method
US5940616A (en) * 1996-05-31 1999-08-17 International Business Machines Corporation Tracker class for object-oriented programming environments
US5818447A (en) * 1996-06-06 1998-10-06 Microsoft Corporation System and method for in-place editing of an electronic mail message using a separate program
US5768532A (en) * 1996-06-17 1998-06-16 International Business Machines Corporation Method and distributed database file system for implementing self-describing distributed file objects
US5881230A (en) 1996-06-24 1999-03-09 Microsoft Corporation Method and system for remote automation of object oriented applications
US6434598B1 (en) 1996-07-01 2002-08-13 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server graphical user interface (#9) framework in an interprise computing framework system
US5987245A (en) 1996-07-01 1999-11-16 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture (#12) for a client-server state machine framework
US5999972A (en) 1996-07-01 1999-12-07 Sun Microsystems, Inc. System, method and article of manufacture for a distributed computer system framework
US6304893B1 (en) 1996-07-01 2001-10-16 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server event driven message framework in an interprise computing framework system
US6038590A (en) 1996-07-01 2000-03-14 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server state machine in an interprise computing framework system
US5893107A (en) * 1996-07-01 1999-04-06 Microsoft Corporation Method and system for uniformly accessing multiple directory services
US5809507A (en) * 1996-07-01 1998-09-15 Sun Microsystems, Inc. Method and apparatus for storing persistent objects on a distributed object network using a marshaling framework
US6272555B1 (en) 1996-07-01 2001-08-07 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server-centric interprise computing framework system
US6266709B1 (en) 1996-07-01 2001-07-24 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server failure reporting process
US6424991B1 (en) 1996-07-01 2002-07-23 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server communication framework
US5848246A (en) 1996-07-01 1998-12-08 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server session manager in an interprise computing framework system
EP0825506B1 (en) 1996-08-20 2013-03-06 Invensys Systems, Inc. Methods and apparatus for remote process control
US5895476A (en) * 1996-09-09 1999-04-20 Design Intelligence, Inc. Design engine for automatic reformatting for design and media
US5895477A (en) * 1996-09-09 1999-04-20 Design Intelligence, Inc. Design engine for automatic layout of content
US5956737A (en) * 1996-09-09 1999-09-21 Design Intelligence, Inc. Design engine for fitting content to a medium
US5903902A (en) * 1996-09-09 1999-05-11 Design Intelligence, Inc. Design engine with tree and component structure
DE69714598T2 (de) * 1996-09-09 2003-03-27 Microsoft Corp., Redmond Automatische anordnung und formatierung von inhalt für einen entwurf auf einem medium
US5878431A (en) * 1996-10-04 1999-03-02 Hewlett-Packard Company Method and apparatus for providing topology based enterprise management services
US6728737B2 (en) 1996-10-11 2004-04-27 Sun Microsystems, Inc. Method and system for leasing storage
US6237009B1 (en) 1996-10-11 2001-05-22 Sun Microsystems, Inc. Lease renewal service
US5832529A (en) 1996-10-11 1998-11-03 Sun Microsystems, Inc. Methods, apparatus, and product for distributed garbage collection
US6237142B1 (en) * 1996-11-12 2001-05-22 International Business Machines Corporation Method for synchronization between links and group definitions within an object-oriented system
US6401099B1 (en) 1996-12-06 2002-06-04 Microsoft Corporation Asynchronous binding of named objects
US6460058B2 (en) * 1996-12-06 2002-10-01 Microsoft Corporation Object-oriented framework for hyperlink navigation
US6047296A (en) * 1996-12-09 2000-04-04 Omnimark Technologies Corporation Comprehensive method of resolving nested forward references in electronic data streams within defined resolution scopes
US6374250B2 (en) * 1997-02-03 2002-04-16 International Business Machines Corporation System and method for differential compression of data from a plurality of binary sources
US6687761B1 (en) 1997-02-20 2004-02-03 Invensys Systems, Inc. Process control methods and apparatus with distributed object management
US6363433B1 (en) * 1997-03-12 2002-03-26 Microsoft Corporation Method and mechanism for client-side handling of extensions originally written for servers
EP0983541B1 (en) * 1997-05-29 2003-08-06 Sun Microsystems, Inc. Method and apparatus for signing and sealing objects
US6125383A (en) * 1997-06-11 2000-09-26 Netgenics Corp. Research system using multi-platform object oriented program language for providing objects at runtime for creating and manipulating biological or chemical data
US5987481A (en) * 1997-07-01 1999-11-16 Microsoft Corporation Method and apparatus for using label references in spreadsheet formulas
US6760746B1 (en) * 1999-09-01 2004-07-06 Eric Schneider Method, product, and apparatus for processing a data request
US5905991A (en) * 1997-08-21 1999-05-18 Reynolds; Mark L System and method providing navigation between documents by creating associations based on bridges between combinations of document elements and software
US6233584B1 (en) * 1997-09-09 2001-05-15 International Business Machines Corporation Technique for providing a universal query for multiple different databases
US5995918A (en) * 1997-09-17 1999-11-30 Unisys Corporation System and method for creating a language grammar using a spreadsheet or table interface
US6253256B1 (en) 1997-10-15 2001-06-26 Sun Microsystems, Inc. Deferred reconstruction of objects and remote loading in a distributed system
DE19747583B4 (de) * 1997-10-28 2006-04-20 Telefonaktiebolaget Lm Ericsson (Publ) Kommunikationssystem und Verfahren
US6134594A (en) 1997-10-28 2000-10-17 Microsoft Corporation Multi-user, multiple tier distributed application architecture with single-user access control of middle tier objects
US5958004A (en) 1997-10-28 1999-09-28 Microsoft Corporation Disabling and enabling transaction committal in transactional application components
US7076784B1 (en) 1997-10-28 2006-07-11 Microsoft Corporation Software component execution management using context objects for tracking externally-defined intrinsic properties of executing software components within an execution environment
US6631425B1 (en) * 1997-10-28 2003-10-07 Microsoft Corporation Just-in-time activation and as-soon-as-possible deactivation or server application components
US6055543A (en) * 1997-11-21 2000-04-25 Verano File wrapper containing cataloging information for content searching across multiple platforms
US6148438A (en) * 1998-01-06 2000-11-14 National Instruments Corporation System and method for creating composite classes for objects having virtual functions for avoidance of user mode/kernel mode transitions
JP2002505473A (ja) 1998-02-26 2002-02-19 サンマイクロシステムズ インコーポレーテッド 決定性ハッシュでリモートメソッドを識別する方法とシステム
US6604127B2 (en) 1998-03-20 2003-08-05 Brian T. Murphy Dynamic lookup service in distributed system
US6330006B1 (en) * 1998-05-12 2001-12-11 Silverstream Software, Inc. Method and apparatus for synchronizing an application's interface and data
US6233582B1 (en) * 1998-05-14 2001-05-15 Sun Microsystems, Inc. Persistent storage interface for a configuration object-based system
US6691183B1 (en) 1998-05-20 2004-02-10 Invensys Systems, Inc. Second transfer logic causing a first transfer logic to check a data ready bit prior to each of multibit transfer of a continous transfer operation
US6366916B1 (en) 1998-05-22 2002-04-02 International Business Machines Corporation Configurable and extensible system for deploying asset management functions to client applications
US6826571B1 (en) 1998-05-22 2004-11-30 International Business Machines Corporation Method and apparatus for dynamically customizing and extending functions of a server program to enable and restrict functions of the server
US6912561B1 (en) 1998-05-22 2005-06-28 International Business Machines Corporation Method and apparatus for using classes, encapsulating data with its behaviors, for transferring between databases and client applications and for enabling applications to adapt to specific constraints of the data
US6917939B1 (en) 1998-05-22 2005-07-12 International Business Machines Corporation Method and apparatus for configurable mapping between data stores and data structures and a generalized client data model using heterogeneous, specialized storage
KR19990087910A (ko) * 1998-05-27 1999-12-27 포만 제프리 엘 관련되지않은윈도들간의연합상호작용
US6611954B1 (en) * 1998-06-03 2003-08-26 Intel Corporation Binary compatible software objects
US6654881B2 (en) * 1998-06-12 2003-11-25 Microsoft Corporation Logical volume mount manager
US8527882B2 (en) * 1998-06-12 2013-09-03 Gregory J. Swartz System and method for iconic software environment management
US7346850B2 (en) 1998-06-12 2008-03-18 Cygnus Systems, Inc. System and method for iconic software environment management
US6662236B1 (en) * 1998-06-29 2003-12-09 International Business Machines Corporation Runtime object binding in scripting
US6526416B1 (en) 1998-06-30 2003-02-25 Microsoft Corporation Compensating resource managers
US6342899B1 (en) 1998-07-20 2002-01-29 Pitney Bowes Inc. Method and system of displaying database contents in envelope data fields
US6384931B1 (en) 1998-07-20 2002-05-07 Pitney Bowes Inc. Method and system for capturing destination addresses from label data
US6282524B1 (en) 1998-07-20 2001-08-28 Pitney Bowes Inc. Method and system of printing postage indicia from an envelope design application
GB2340266B (en) * 1998-07-31 2003-03-12 Sony Uk Ltd Data processing
US6442620B1 (en) 1998-08-17 2002-08-27 Microsoft Corporation Environment extensibility and automatic services for component applications using contexts, policies and activators
US6425017B1 (en) 1998-08-17 2002-07-23 Microsoft Corporation Queued method invocations on distributed component applications
US7409694B2 (en) 1998-09-09 2008-08-05 Microsoft Corporation Highly componentized system architecture with loadable virtual memory manager
US7143421B2 (en) * 1998-09-09 2006-11-28 Microsoft Corporation Highly componentized system architecture with a demand-loading namespace and programming model
US8434099B2 (en) 1998-09-09 2013-04-30 Microsoft Corporation Efficient linking and loading for late binding and platform retargeting
US6282590B1 (en) 1998-09-15 2001-08-28 Pitney Bowes Inc. Method and system for establishing a standard peripheral interface server
JP3460597B2 (ja) 1998-09-22 2003-10-27 日本電気株式会社 複合文書管理システム及び複合文書の構造管理方法ならびに複合文書構造管理プログラムを格納した記録媒体
US8078727B2 (en) 1998-10-09 2011-12-13 Netmotion Wireless, Inc. Method and apparatus for providing mobile and other intermittent connectivity in a computing environment
US8060656B2 (en) * 1998-10-09 2011-11-15 Netmotion Wireless, Inc. Method and apparatus for providing mobile and other intermittent connectivity in a computing environment
US7107591B1 (en) * 1998-11-05 2006-09-12 Hewlett-Packard Development Company, L.P. Task-specific flexible binding in a software system
US6952827B1 (en) * 1998-11-13 2005-10-04 Cray Inc. User program and operating system interface in a multithreaded environment
US6385724B1 (en) 1998-11-30 2002-05-07 Microsoft Corporation Automatic object caller chain with declarative impersonation and transitive trust
US6574736B1 (en) 1998-11-30 2003-06-03 Microsoft Corporation Composable roles
US6487665B1 (en) 1998-11-30 2002-11-26 Microsoft Corporation Object security boundaries
US6621506B2 (en) * 1998-12-11 2003-09-16 Adobe Systems Incorporated Applying operations to selected data of different types
US6397384B1 (en) * 1998-12-18 2002-05-28 Adobe Systems Incorporated Run-time addition of interfaces
US6681371B1 (en) * 1998-12-21 2004-01-20 At&T Corp. System and method for using container documents as multi-user domain clients
US6978450B2 (en) * 1999-01-15 2005-12-20 Hewlett-Packard Development Company, L.P. Method and system for optimizing compilation time of a program by selectively reusing object code
US6594819B1 (en) * 1999-01-25 2003-07-15 International Business Machines Corporation Method and system for establishing collection of hostable applications
US7127724B2 (en) * 1999-02-03 2006-10-24 International Business Machines Corporation Method and apparatus for providing protocol independent naming and life cycle services in an object-oriented system
US6704924B1 (en) * 1999-02-03 2004-03-09 William H. Gates, III Method and system for implementing virtual functions of an interface
US6493120B1 (en) * 1999-02-17 2002-12-10 Alcatel Optical fiber-delay line buffers with void filling
US6829770B1 (en) 1999-02-23 2004-12-07 Microsoft Corporation Object connectivity through loosely coupled publish and subscribe events
US6748455B1 (en) 1999-02-23 2004-06-08 Microsoft Corporation Object connectivity through loosely coupled publish and subscribe events with filtering
US7283991B1 (en) * 1999-03-11 2007-10-16 Microsoft Corporation Caching system for path search optimization
US6463533B1 (en) * 1999-04-15 2002-10-08 Webtv Networks, Inc. System for generating site-specific user aliases in a computer network
US7089530B1 (en) 1999-05-17 2006-08-08 Invensys Systems, Inc. Process control configuration system with connection validation and configuration
AU5025600A (en) 1999-05-17 2000-12-05 Foxboro Company, The Process control configuration system with parameterized objects
US6754885B1 (en) 1999-05-17 2004-06-22 Invensys Systems, Inc. Methods and apparatus for controlling object appearance in a process control configuration system
US6678745B1 (en) * 1999-06-01 2004-01-13 Bruce Hodge Dynamic object synthesis with automatic late binding
US6539374B2 (en) 1999-06-03 2003-03-25 Microsoft Corporation Methods, apparatus and data structures for providing a uniform representation of various types of information
US6606613B1 (en) 1999-06-03 2003-08-12 Microsoft Corporation Methods and apparatus for using task models to help computer users complete tasks
US6330554B1 (en) 1999-06-03 2001-12-11 Microsoft Corporation Methods and apparatus using task models for targeting marketing information to computer users based on a task being performed
US6778971B1 (en) 1999-06-03 2004-08-17 Microsoft Corporation Methods and apparatus for analyzing computer-based tasks to build task models
US6501995B1 (en) 1999-06-30 2002-12-31 The Foxboro Company Process control system and method with improved distribution, installation and validation of components
US6788980B1 (en) 1999-06-11 2004-09-07 Invensys Systems, Inc. Methods and apparatus for control using control devices that provide a virtual machine environment and that communicate via an IP network
US6877163B1 (en) 1999-06-14 2005-04-05 Sun Microsystems, Inc. Method and system for dynamic proxy classes
US7150005B2 (en) * 1999-07-02 2006-12-12 Beryl Technical Assays, Llc Method and system for global constant management for memory
US6634019B1 (en) 1999-07-16 2003-10-14 Lamarck, Inc. Toggling software characteristics in a fault tolerant and combinatorial software environment system, method and medium
US6973560B1 (en) 1999-07-16 2005-12-06 Lamarck, Inc. Fault tolerant and combinatorial software environment system, method and medium
US6631497B1 (en) * 1999-07-19 2003-10-07 International Business Machines Corporation Binding data from data source to cells in a spreadsheet
US7039863B1 (en) 1999-07-23 2006-05-02 Adobe Systems Incorporated Computer generation of documents using layout elements and content elements
US7337174B1 (en) 1999-07-26 2008-02-26 Microsoft Corporation Logic table abstraction layer for accessing configuration information
US6513112B1 (en) 1999-07-26 2003-01-28 Microsoft Corporation System and apparatus for administration of configuration information using a catalog server object to describe and manage requested configuration information to be stored in a table object
US6675353B1 (en) * 1999-07-26 2004-01-06 Microsoft Corporation Methods and systems for generating XML documents
US6421682B1 (en) 1999-07-26 2002-07-16 Microsoft Corporation Catalog management system architecture having data table objects and logic table objects
US6598037B1 (en) 1999-07-26 2003-07-22 Microsoft Corporation Data table object interface for datastore
US6466943B1 (en) * 1999-07-26 2002-10-15 Microsoft Corporation Obtaining table objects using table dispensers
US6418486B1 (en) * 1999-07-28 2002-07-09 Intel Corporation Device handling system and method
WO2001009690A1 (en) 1999-07-29 2001-02-08 The Foxboro Company Methods and apparatus for object-based process control
US6614808B1 (en) 1999-09-02 2003-09-02 International Business Machines Corporation Network packet aggregation
US6748555B1 (en) * 1999-09-09 2004-06-08 Microsoft Corporation Object-based software management
US6320591B1 (en) 1999-09-10 2001-11-20 Gateway, Inc. System and method for the utilization of an electronic book
US7171646B2 (en) * 1999-10-05 2007-01-30 Borland Software Corporation Generating source code for object oriented elements with language neutral transient meta model and correlating display of names, symbols and code
US6782532B1 (en) * 1999-10-21 2004-08-24 Oracle International Corporation Object type system for a run-time environment using generated high-order language instructions for generic functions
US6871203B1 (en) 1999-10-29 2005-03-22 International Business Machines Corporation Data processing system
US6553387B1 (en) 1999-11-29 2003-04-22 Microsoft Corporation Logical volume configuration data management determines whether to expose the logical volume on-line, off-line request based on comparison of volume epoch numbers on each extents of the volume identifiers
US6684231B1 (en) 1999-11-29 2004-01-27 Microsoft Corporation Migration of friendly volumes
US6473660B1 (en) 1999-12-03 2002-10-29 The Foxboro Company Process control system and method with automatic fault avoidance
US6920636B1 (en) * 1999-12-15 2005-07-19 Microsoft Corporation Queued component interface passing for results outflow from queued method invocations
US7178105B1 (en) * 2000-02-04 2007-02-13 International Business Machines Corporation Method and system for document component importation and reconciliation
US6779128B1 (en) 2000-02-18 2004-08-17 Invensys Systems, Inc. Fault-tolerant data transfer
CA2301822A1 (fr) * 2000-03-24 2001-09-24 9071 9410 Quebec Inc. Projection simultanee de plusieurs patrons avec acquisition simultanee pour l'inspection d'objets en trois dimensions
US6995853B1 (en) 2000-03-31 2006-02-07 Pitney Bowes Inc. Method and system for modifying print stream data to allow printing over a single I/O port
US6728768B1 (en) * 2000-04-13 2004-04-27 International Business Machines Corporation Method and apparatus for improving dynamic simple network management protocol GetNext processing
US6850979B1 (en) 2000-05-09 2005-02-01 Sun Microsystems, Inc. Message gates in a distributed computing environment
US7260543B1 (en) 2000-05-09 2007-08-21 Sun Microsystems, Inc. Automatic lease renewal with message gates in a distributed computing environment
US6950875B1 (en) 2000-05-09 2005-09-27 Sun Microsystems, Inc. Message conductors in a distributed computing environment
US6918084B1 (en) 2000-05-09 2005-07-12 Sun Microsystems, Inc. Spawning new repository spaces using information provided in advertisement schema messages
US7716492B1 (en) 2000-05-09 2010-05-11 Oracle America, Inc. Method and apparatus to obtain service capability credentials
US7577834B1 (en) 2000-05-09 2009-08-18 Sun Microsystems, Inc. Message authentication using message gates in a distributed computing environment
US6792466B1 (en) 2000-05-09 2004-09-14 Sun Microsystems, Inc. Trusted construction of message endpoints in a distributed computing environment
US6643650B1 (en) 2000-05-09 2003-11-04 Sun Microsystems, Inc. Mechanism and apparatus for using messages to look up documents stored in spaces in a distributed computing environment
US8001232B1 (en) 2000-05-09 2011-08-16 Oracle America, Inc. Event message endpoints in a distributed computing environment
US6862594B1 (en) 2000-05-09 2005-03-01 Sun Microsystems, Inc. Method and apparatus to discover services using flexible search criteria
US6970869B1 (en) 2000-05-09 2005-11-29 Sun Microsystems, Inc. Method and apparatus to discover services and negotiate capabilities
US7065574B1 (en) 2000-05-09 2006-06-20 Sun Microsystems, Inc. Messaging system using pairs of message gates in a distributed computing environment
US6868447B1 (en) 2000-05-09 2005-03-15 Sun Microsystems, Inc. Mechanism and apparatus for returning results of services in a distributed computing environment
US7072967B1 (en) 2000-05-09 2006-07-04 Sun Microsystems, Inc. Efficient construction of message endpoints
US6898618B1 (en) 2000-05-09 2005-05-24 Sun Microsystems, Inc. Client-specified display services in a distributed computing environment
US7243356B1 (en) 2000-05-09 2007-07-10 Sun Microsystems, Inc. Remote method invocation with secure messaging in a distributed computing environment
US7016966B1 (en) 2000-05-09 2006-03-21 Sun Microsystems, Inc. Generating results gates in a distributed computing environment
US6789126B1 (en) 2000-05-09 2004-09-07 Sun Microsystems, Inc. Addressing message gates in a distributed computing environment
US7395333B1 (en) 2000-05-09 2008-07-01 Sun Microsystems, Inc. Method and apparatus to obtain negotiated service advertisement
US8135796B1 (en) 2000-05-09 2012-03-13 Oracle America, Inc. Mechanism and apparatus for accessing and addressing services in a distributed computing environment
US7370091B1 (en) 2000-05-09 2008-05-06 Sun Microsystems, Inc. Method and apparatus for obtaining space advertisements
US6789077B1 (en) 2000-05-09 2004-09-07 Sun Microsystems, Inc. Mechanism and apparatus for web-based searching of URI-addressable repositories in a distributed computing environment
US8082491B1 (en) 2000-05-09 2011-12-20 Oracle America, Inc. Dynamic displays in a distributed computing environment
US7010573B1 (en) 2000-05-09 2006-03-07 Sun Microsystems, Inc. Message gates using a shared transport in a distributed computing environment
US7200848B1 (en) 2000-05-09 2007-04-03 Sun Microsystems, Inc. Migrating processes using data representation language representations of the processes in a distributed computing environment
US7080078B1 (en) 2000-05-09 2006-07-18 Sun Microsystems, Inc. Mechanism and apparatus for URI-addressable repositories of service advertisements and other content in a distributed computing environment
US6973493B1 (en) 2000-05-09 2005-12-06 Sun Microsystems, Inc. Mechanism and apparatus for security of newly spawned repository spaces in a distributed computing environment
US7188251B1 (en) 2000-05-09 2007-03-06 Sun Microsystems, Inc. System and method for secure message-based leasing of resources in a distributed computing environment
US6917976B1 (en) 2000-05-09 2005-07-12 Sun Microsystems, Inc. Message-based leasing of resources in a distributed computing environment
US7013340B1 (en) * 2000-05-18 2006-03-14 Microsoft Corporation Postback input handling by server-side control objects
US6865657B1 (en) 2000-06-02 2005-03-08 Sun Microsystems, Inc. Garbage collector for a virtual heap
US6763440B1 (en) 2000-06-02 2004-07-13 Sun Microsystems, Inc. Garbage collection using nursery regions for new objects in a virtual heap
US6760815B1 (en) 2000-06-02 2004-07-06 Sun Microsystems, Inc. Caching mechanism for a virtual heap
US6854115B1 (en) 2000-06-02 2005-02-08 Sun Microsystems, Inc. Process persistence in a virtual machine
US20020019845A1 (en) * 2000-06-16 2002-02-14 Hariton Nicholas T. Method and system for distributed scripting of presentations
US6948135B1 (en) 2000-06-21 2005-09-20 Microsoft Corporation Method and systems of providing information to computer users
US7346848B1 (en) 2000-06-21 2008-03-18 Microsoft Corporation Single window navigation methods and systems
US6874143B1 (en) 2000-06-21 2005-03-29 Microsoft Corporation Architectures for and methods of providing network-based software extensions
US6883168B1 (en) 2000-06-21 2005-04-19 Microsoft Corporation Methods, systems, architectures and data structures for delivering software via a network
US7191394B1 (en) 2000-06-21 2007-03-13 Microsoft Corporation Authoring arbitrary XML documents using DHTML and XSLT
US7155667B1 (en) 2000-06-21 2006-12-26 Microsoft Corporation User interface for integrated spreadsheets and word processing tables
US7624356B1 (en) 2000-06-21 2009-11-24 Microsoft Corporation Task-sensitive methods and systems for displaying command sets
WO2001098928A2 (en) 2000-06-21 2001-12-27 Microsoft Corporation System and method for integrating spreadsheets and word processing tables
US7117435B1 (en) 2000-06-21 2006-10-03 Microsoft Corporation Spreadsheet fields in text
US7000230B1 (en) 2000-06-21 2006-02-14 Microsoft Corporation Network-based software extensions
US7124408B1 (en) * 2000-06-28 2006-10-17 Microsoft Corporation Binding by hash
US7117371B1 (en) 2000-06-28 2006-10-03 Microsoft Corporation Shared names
US7219332B2 (en) * 2000-07-07 2007-05-15 Microsoft Corporation Configuring software components(merge) with transformation component using configurable and non-configurable data elements
US6738968B1 (en) * 2000-07-10 2004-05-18 Microsoft Corporation Unified data type system and method
EP1174791B1 (en) 2000-07-10 2017-09-27 Microsoft Technology Licensing, LLC Unified data type system and method
US6651248B1 (en) * 2000-09-01 2003-11-18 International Business Machines Corporation Method and apparatus for efficient interface method dispatch
TW518509B (en) * 2000-11-28 2003-01-21 Ibm Method and system in an electronic spreadsheet for persistently filling by samples a range of cells
US6561342B2 (en) * 2000-11-29 2003-05-13 Charles Lepage Granular material conveyor
US6842786B1 (en) * 2001-02-09 2005-01-11 Adobe Systems Incorporated Method and apparatus for remote communication of data associated with dynamically generated type object at runtime to describe the data type
US7152223B1 (en) * 2001-06-04 2006-12-19 Microsoft Corporation Methods and systems for compiling and interpreting one or more associations between declarations and implementations in a language neutral fashion
US7493397B1 (en) 2001-06-06 2009-02-17 Microsoft Corporation Providing remote processing services over a distributed communications network
US6915454B1 (en) 2001-06-12 2005-07-05 Microsoft Corporation Web controls validation
US7454753B2 (en) * 2001-06-27 2008-11-18 International Business Machines Corporation Semaphore management subsystem for use with multi-thread processor systems
US7089555B2 (en) * 2001-06-27 2006-08-08 International Business Machines Corporation Ordered semaphore management subsystem
US7069540B1 (en) * 2001-07-02 2006-06-27 Unisys Corporation COM persistence model
US6941550B1 (en) 2001-07-09 2005-09-06 Microsoft Corporation Interface invoke mechanism
US20030051029A1 (en) * 2001-09-07 2003-03-13 Reedy Dennis G. Dynamic provisioning of sevice components in a distributed system
US7756969B1 (en) 2001-09-07 2010-07-13 Oracle America, Inc. Dynamic provisioning of identification services in a distributed system
US7660887B2 (en) 2001-09-07 2010-02-09 Sun Microsystems, Inc. Systems and methods for providing dynamic quality of service for a distributed system
US7406690B2 (en) * 2001-09-26 2008-07-29 International Business Machines Corporation Flow lookahead in an ordered semaphore management subsystem
US7143414B2 (en) * 2001-09-26 2006-11-28 International Business Machines Corporation Method and apparatus for locking multiple semaphores
US6925640B2 (en) * 2001-10-12 2005-08-02 Sun Microsystems, Inc. Method and apparatus for extending a program element in a dynamically typed programming language
US7552222B2 (en) * 2001-10-18 2009-06-23 Bea Systems, Inc. Single system user identity
US20030093435A1 (en) * 2001-11-05 2003-05-15 Bandekar Vijay R. Method and system for application level data object synchronization between two or more processes
CN1591400A (zh) * 2001-11-09 2005-03-09 无锡永中科技有限公司 集成数据处理***
JP2003150762A (ja) * 2001-11-15 2003-05-23 Hitachi Ltd プロジェクト情報連携方法およびシステム
DE10157633A1 (de) * 2001-11-26 2003-08-28 Siemens Ag Medizinische Systemarchitektur mit einer komponentenorientierten Architektur zur Befundung und Dokumentation
US20040015835A1 (en) * 2002-01-24 2004-01-22 Sasank Kotnur Dynamic distribution and integration of computer code objects
US7036039B2 (en) * 2002-03-29 2006-04-25 Panasas, Inc. Distributing manager failure-induced workload through the use of a manager-naming scheme
US7007024B2 (en) * 2002-03-29 2006-02-28 Panasas, Inc. Hashing objects into multiple directories for better concurrency and manageability
US6975914B2 (en) 2002-04-15 2005-12-13 Invensys Systems, Inc. Methods and apparatus for process, factory-floor, environmental, computer aided manufacturing-based or other control system with unified messaging interface
JP4224250B2 (ja) * 2002-04-17 2009-02-12 パイオニア株式会社 音声認識装置、音声認識方法および音声認識プログラム
US7035862B2 (en) * 2002-05-09 2006-04-25 Siemens Medical Solutions Health Services Corporation Method for processing information from an information repository
US20040064828A1 (en) * 2002-10-01 2004-04-01 Cox David Payton Supplanting first device objects with second device objects
US7234109B2 (en) * 2002-11-19 2007-06-19 Microsoft Corp. Equality of extensible markup language structures
CN1264090C (zh) * 2002-12-31 2006-07-12 上海科泰世纪科技有限公司 调用构件对象功能的智能指针的封装方法
US20040181748A1 (en) * 2003-03-10 2004-09-16 International Business Machines Corporation Thin client framework deployment of spreadsheet applications in a web browser based environment
US7480921B1 (en) 2003-03-12 2009-01-20 Microsoft Corporation Method, system, and apparatus for customizing web parts
US7281252B1 (en) 2003-03-12 2007-10-09 Microsoft Corporation Method, system, and apparatus for implementing object interfaces at runtime
US7415672B1 (en) 2003-03-24 2008-08-19 Microsoft Corporation System and method for designing electronic forms
US7275216B2 (en) 2003-03-24 2007-09-25 Microsoft Corporation System and method for designing electronic forms and hierarchical schemas
US7370066B1 (en) 2003-03-24 2008-05-06 Microsoft Corporation System and method for offline editing of data files
US7197512B2 (en) * 2003-03-26 2007-03-27 Microsoft Corporation Type bridges
US7296017B2 (en) 2003-03-28 2007-11-13 Microsoft Corporation Validation of XML data files
US7913159B2 (en) 2003-03-28 2011-03-22 Microsoft Corporation System and method for real-time validation of structured data files
US7516145B2 (en) 2003-03-31 2009-04-07 Microsoft Corporation System and method for incrementally transforming and rendering hierarchical data files
US7168035B1 (en) 2003-06-11 2007-01-23 Microsoft Corporation Building a view on markup language data through a set of components
US7299450B2 (en) * 2003-06-17 2007-11-20 Microsoft Corporation Undoing changes in a software configuration management system
US7197515B2 (en) 2003-06-30 2007-03-27 Microsoft Corporation Declarative solution definition
US7451392B1 (en) 2003-06-30 2008-11-11 Microsoft Corporation Rendering an HTML electronic form by applying XSLT to XML using a solution
US7406660B1 (en) 2003-08-01 2008-07-29 Microsoft Corporation Mapping between structured data and a visual surface
US7581177B1 (en) 2003-08-01 2009-08-25 Microsoft Corporation Conversion of structured documents
US7334187B1 (en) 2003-08-06 2008-02-19 Microsoft Corporation Electronic form aggregation
US7409693B2 (en) * 2003-10-30 2008-08-05 International Business Machines Corporation Method and system for providing version control of parameters in a command-based API using Java serialization
US7464330B2 (en) * 2003-12-09 2008-12-09 Microsoft Corporation Context-free document portions with alternate formats
US7792874B1 (en) 2004-01-30 2010-09-07 Oracle America, Inc. Dynamic provisioning for filtering and consolidating events
US8819072B1 (en) 2004-02-02 2014-08-26 Microsoft Corporation Promoting data from structured data files
US7469408B2 (en) * 2004-02-13 2008-12-23 Microsoft Corporation Document customization for transparent execution on a client and a server
US7430711B2 (en) 2004-02-17 2008-09-30 Microsoft Corporation Systems and methods for editing XML documents
US7318063B2 (en) 2004-02-19 2008-01-08 Microsoft Corporation Managing XML documents containing hierarchical database information
US7496649B2 (en) * 2004-02-20 2009-02-24 Microsoft Corporation Policy application across multiple nodes
US7664828B2 (en) * 2004-02-20 2010-02-16 Microsoft Corporation Invalid policy detection
US7243157B2 (en) 2004-02-20 2007-07-10 Microsoft Corporation Dynamic protocol construction
US20050188350A1 (en) * 2004-02-20 2005-08-25 Microsoft Corporation Data binding
US7545362B2 (en) * 2004-02-26 2009-06-09 Microsoft Corporation Multi-modal navigation in a graphical user interface computing system
US7761923B2 (en) 2004-03-01 2010-07-20 Invensys Systems, Inc. Process control methods and apparatus for intrusion detection, protection and network hardening
US20050197845A1 (en) * 2004-03-02 2005-09-08 Kai Wachter Business workbook precalculation
US20050198610A1 (en) * 2004-03-03 2005-09-08 Ulf Fildebrandt Providing and using design time support
US7653880B2 (en) * 2004-04-13 2010-01-26 Microsoft Corporation Application of data-binding mechanism to perform command binding
US7539687B2 (en) * 2004-04-13 2009-05-26 Microsoft Corporation Priority binding
US7779387B2 (en) * 2004-04-15 2010-08-17 Microsoft Corporation Offline source code control
US7496837B1 (en) 2004-04-29 2009-02-24 Microsoft Corporation Structural editing with schema awareness
EP1751672A4 (en) * 2004-05-03 2007-05-09 Lg Electronics Inc METHOD AND APPARATUS FOR MANAGING MARKING INFORMATION OF STORED CONTENTS IN A NETWORKED MEDIA SERVER
US7890604B2 (en) 2004-05-07 2011-02-15 Microsoft Corproation Client-side callbacks to server events
US7568101B1 (en) 2004-05-13 2009-07-28 Microsoft Corporation Digital signatures with an embedded view
US9026578B2 (en) 2004-05-14 2015-05-05 Microsoft Corporation Systems and methods for persisting data between web pages
US7464386B2 (en) 2004-05-17 2008-12-09 Microsoft Corporation Data controls architecture
US7281018B1 (en) 2004-05-26 2007-10-09 Microsoft Corporation Form template data source change
US7774620B1 (en) 2004-05-27 2010-08-10 Microsoft Corporation Executing applications at appropriate trust levels
US7596546B2 (en) * 2004-06-14 2009-09-29 Matchett Douglas K Method and apparatus for organizing, visualizing and using measured or modeled system statistics
US20060010175A1 (en) * 2004-06-17 2006-01-12 International Business Machines Corporation Apparatus, system, and method for automated conversion of content having multiple representation versions
JP2006065462A (ja) * 2004-08-25 2006-03-09 Canon Inc ソフトウェア・システム、ソフトウェア停止方法、プログラム、及び、記憶媒体
US20060048095A1 (en) * 2004-08-31 2006-03-02 Microsoft Corporation Local type alias inference system and method
US20060064643A1 (en) 2004-09-14 2006-03-23 Hariton Nicholas T Distributed scripting for presentations with touch screen displays
US7692636B2 (en) 2004-09-30 2010-04-06 Microsoft Corporation Systems and methods for handwriting to a screen
US7516399B2 (en) 2004-09-30 2009-04-07 Microsoft Corporation Structured-document path-language expression methods and systems
US7475384B2 (en) * 2004-10-19 2009-01-06 Microsoft Corporation Binding to types
US7401340B2 (en) * 2004-10-21 2008-07-15 Oracle International Corporation Supporting cross-component references in an object-oriented programming system
US8487879B2 (en) 2004-10-29 2013-07-16 Microsoft Corporation Systems and methods for interacting with a computer through handwriting to a screen
US7584417B2 (en) 2004-11-15 2009-09-01 Microsoft Corporation Role-dependent action for an electronic form
US7712022B2 (en) 2004-11-15 2010-05-04 Microsoft Corporation Mutually exclusive options in electronic forms
US7509353B2 (en) 2004-11-16 2009-03-24 Microsoft Corporation Methods and systems for exchanging and rendering forms
US7721190B2 (en) 2004-11-16 2010-05-18 Microsoft Corporation Methods and systems for server side form processing
US8996486B2 (en) * 2004-12-15 2015-03-31 Applied Invention, Llc Data store with lock-free stateless paging capability
US7774308B2 (en) * 2004-12-15 2010-08-10 Applied Minds, Inc. Anti-item for deletion of content in a distributed datastore
US11321408B2 (en) 2004-12-15 2022-05-03 Applied Invention, Llc Data store with lock-free stateless paging capacity
US7904801B2 (en) 2004-12-15 2011-03-08 Microsoft Corporation Recursive sections in electronic forms
US8275804B2 (en) * 2004-12-15 2012-09-25 Applied Minds, Llc Distributed data store with a designated master to ensure consistency
US7437376B2 (en) 2004-12-20 2008-10-14 Microsoft Corporation Scalable object model
US7581168B2 (en) * 2004-12-20 2009-08-25 Microsoft Corporation Method, system, and computer-readable medium for determining whether to reproduce chart images calculated from a workbook
US7752632B2 (en) * 2004-12-21 2010-07-06 Microsoft Corporation Method and system for exposing nested data in a computer-generated document in a transparent manner
GB0428482D0 (en) * 2004-12-30 2005-02-02 Ibm Method and apparatus for managing feedback in a group resource environment
US7937651B2 (en) 2005-01-14 2011-05-03 Microsoft Corporation Structural editing operations for network forms
US7793255B1 (en) * 2005-03-01 2010-09-07 Oracle America, Inc. System and method for maintaining alternate object views
US7725834B2 (en) 2005-03-04 2010-05-25 Microsoft Corporation Designer-created aspect for an electronic form template
US7636888B2 (en) * 2005-03-15 2009-12-22 Microsoft Corporation Verifying compatibility between document features and server capabilities
US20060212842A1 (en) * 2005-03-15 2006-09-21 Microsoft Corporation Rich data-bound application
JP4517923B2 (ja) * 2005-03-31 2010-08-04 沖電気工業株式会社 オブジェクト救済システム及び方法
US8010515B2 (en) 2005-04-15 2011-08-30 Microsoft Corporation Query to an electronic form
US9363481B2 (en) * 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
JP4797444B2 (ja) * 2005-05-24 2011-10-19 ブラザー工業株式会社 情報処理装置及び情報処理プログラム
US7543228B2 (en) 2005-06-27 2009-06-02 Microsoft Corporation Template for rendering an electronic form
US8200975B2 (en) 2005-06-29 2012-06-12 Microsoft Corporation Digital signatures for network forms
US7613996B2 (en) 2005-08-15 2009-11-03 Microsoft Corporation Enabling selection of an inferred schema part
US20070043695A1 (en) * 2005-08-16 2007-02-22 Bare Ballard C Action consolidation using hash table
US7644403B2 (en) * 2005-09-12 2010-01-05 Oracle International Corporation Method and system for automated root-cause analysis for class loading failures in java
EP1785396A1 (en) * 2005-11-09 2007-05-16 Nederlandse Organisatie voor Toegepast-Natuuurwetenschappelijk Onderzoek TNO Process for preparing a metal hydroxide
US8001459B2 (en) 2005-12-05 2011-08-16 Microsoft Corporation Enabling electronic documents for limited-capability computing devices
US20070192363A1 (en) * 2005-12-19 2007-08-16 Microsoft Corporation Document-centric application environment
US7779343B2 (en) 2006-01-30 2010-08-17 Microsoft Corporation Opening network-enabled electronic documents
US7860857B2 (en) 2006-03-30 2010-12-28 Invensys Systems, Inc. Digital data processing apparatus and methods for improving plant performance
US20070257354A1 (en) * 2006-03-31 2007-11-08 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Code installation decisions for improving aggregate functionality
US7552129B2 (en) * 2006-04-26 2009-06-23 International Business Machines Corporation Automatically binding and populating a selection control with both display labels and identification values
US7836440B2 (en) * 2006-04-27 2010-11-16 Oracle America, Inc. Dependency-based grouping to establish class identity
US8650541B2 (en) * 2006-08-04 2014-02-11 Apple Inc. Graphical motion composition files and methods for formatting and organization thereof
US20080040360A1 (en) * 2006-08-14 2008-02-14 Microsoft Corporation Design pattern for choice types in object oriented languages
US7769843B2 (en) 2006-09-22 2010-08-03 Hy Performix, Inc. Apparatus and method for capacity planning for data center server consolidation and workload reassignment
US20080091733A1 (en) * 2006-10-16 2008-04-17 Scott Shelton Reusable data query language statements
US20080144076A1 (en) * 2006-10-27 2008-06-19 Martin Boliek Systems and methods for serving documents from a multifunction peripheral
US20080126368A1 (en) * 2006-11-24 2008-05-29 Microsoft Corporation Document Glossaries For Linking To Resources
US10318624B1 (en) 2006-12-28 2019-06-11 Apple Inc. Infinite canvas
US9390059B1 (en) * 2006-12-28 2016-07-12 Apple Inc. Multiple object types on a canvas
US20080172597A1 (en) * 2007-01-16 2008-07-17 Siemens Medical Solutions Usa, Inc. Data Field Referencing Text Processing System
US20080201360A1 (en) * 2007-02-15 2008-08-21 Mirapoint, Inc. Locating Persistent Objects In A Network Of Servers
US20080235597A1 (en) * 2007-03-19 2008-09-25 Mor Schlesinger Systems and methods of data integration for creating custom books
US8132152B2 (en) * 2007-06-08 2012-03-06 Apple Inc. Extending a scripting language to provide an object hierarchy
US8079025B2 (en) * 2007-06-08 2011-12-13 Apple Inc. Asynchronous load of source dependencies
US9035948B2 (en) * 2007-08-02 2015-05-19 Adobe Systems Incorporated Methods and systems for drawing graphics into a data chart
US8788986B2 (en) 2010-11-22 2014-07-22 Ca, Inc. System and method for capacity planning for systems with multithreaded multicore multiprocessor resources
US7957948B2 (en) * 2007-08-22 2011-06-07 Hyperformit, Inc. System and method for capacity planning for systems with multithreaded multicore multiprocessor resources
US20090089653A1 (en) * 2007-09-28 2009-04-02 Microsoft Corporation Auto-generation and syndication of tables as forms
BRPI0722176A2 (pt) * 2007-10-26 2014-04-08 Ericsson Telefon Ab L M Método para uso em uma rede de ip móvel de proxy, nó de âncora de mobilidade local, e, ponto de conexão de acesso móvel
US20090157841A1 (en) * 2007-12-14 2009-06-18 Microsoft Corporation Encapsulation of online storage providers
US20090254809A1 (en) * 2008-04-02 2009-10-08 Colorquick, L.L.C. Objects having usage rules that exist outside of the environment in which the object is used
US8001099B2 (en) * 2008-05-15 2011-08-16 International Business Machines Corporation Maintaining and utilizing copy histories
US8099721B2 (en) * 2008-06-17 2012-01-17 Microsoft Corporation Parsing of declarations in all branches of preprocessor conditionals
EP2304536A4 (en) 2008-06-20 2012-08-15 Invensys Sys Inc SYSTEMS AND METHOD FOR IMMERSIBLE INTERACTION WITH ACTUAL AND / OR SIMULATED DEVICES FOR PROCESS, ENVIRONMENTAL AND INDUSTRIAL CONTROL
US9253536B2 (en) * 2009-03-18 2016-02-02 Microsoft Technology Licensing, Llc Updating data-consuming entities
US9135091B2 (en) * 2009-04-03 2015-09-15 Microsoft Technology Licensing, Llc Communicating events or data between application components
US8131676B2 (en) * 2009-04-03 2012-03-06 Microsoft Corporation Updating media-location data for media-playing entities
US8392840B2 (en) * 2009-05-22 2013-03-05 Microsoft Corporation Large sets of data
US8127060B2 (en) 2009-05-29 2012-02-28 Invensys Systems, Inc Methods and apparatus for control configuration with control objects that are fieldbus protocol-aware
US8463964B2 (en) 2009-05-29 2013-06-11 Invensys Systems, Inc. Methods and apparatus for control configuration with enhanced change-tracking
US9411647B2 (en) * 2010-01-22 2016-08-09 Qualcomm Incorporated Hierarchical routing and interface selection for multi-processor multimode network devices
US10289636B2 (en) * 2010-02-08 2019-05-14 Here Global B.V. Virtual table generator for analyzing geographic databases
US8867552B2 (en) 2010-05-03 2014-10-21 Brocade Communications Systems, Inc. Virtual cluster switching
US9270486B2 (en) 2010-06-07 2016-02-23 Brocade Communications Systems, Inc. Name services for virtual cluster switching
US9769016B2 (en) 2010-06-07 2017-09-19 Brocade Communications Systems, Inc. Advanced link tracking for virtual cluster switching
US9716672B2 (en) 2010-05-28 2017-07-25 Brocade Communications Systems, Inc. Distributed configuration management for virtual cluster switching
US9806906B2 (en) 2010-06-08 2017-10-31 Brocade Communications Systems, Inc. Flooding packets on a per-virtual-network basis
US8499290B2 (en) * 2010-06-15 2013-07-30 Microsoft Corporation Creating text functions from a spreadsheet
US9807031B2 (en) 2010-07-16 2017-10-31 Brocade Communications Systems, Inc. System and method for network configuration
US9811353B1 (en) * 2010-07-29 2017-11-07 Crimson Corporation Remotely invoking dynamic classes on a computing device
US9747270B2 (en) 2011-01-07 2017-08-29 Microsoft Technology Licensing, Llc Natural input for spreadsheet actions
US9665601B1 (en) 2010-12-16 2017-05-30 Crimson Corporation Using a member attribute to perform a database operation on a computing device
US8726396B1 (en) 2011-01-14 2014-05-13 Symantec Corporation Scanning protected files for violations of a data loss prevention policy
US8826229B2 (en) * 2011-06-02 2014-09-02 The Mathworks, Inc. Immutable properties in a class
US8930888B2 (en) * 2011-06-29 2015-01-06 International Business Machines Corporation Modelling serialized object streams
US9736085B2 (en) 2011-08-29 2017-08-15 Brocade Communications Systems, Inc. End-to end lossless Ethernet in Ethernet fabric
US9069748B2 (en) 2011-10-04 2015-06-30 Microsoft Technology Licensing, Llc Selective generation and display of data items associated with a spreadsheet
US8990675B2 (en) * 2011-10-04 2015-03-24 Microsoft Technology Licensing, Llc Automatic relationship detection for spreadsheet data items
US20130111435A1 (en) * 2011-10-28 2013-05-02 Thomas W. Rudwick, III Reducing object size by class type encoding of data
US9053083B2 (en) * 2011-11-04 2015-06-09 Microsoft Technology Licensing, Llc Interaction between web gadgets and spreadsheets
US9450870B2 (en) 2011-11-10 2016-09-20 Brocade Communications Systems, Inc. System and method for flow management in software-defined networks
US9141393B2 (en) * 2011-11-17 2015-09-22 EnterCalo, Inc. Business content authoring and distribution
US8863129B2 (en) 2011-12-06 2014-10-14 International Business Machines Corporation Automated caching and mirroring of immutable data in distributed virtual machines via native interface components
US8995272B2 (en) 2012-01-26 2015-03-31 Brocade Communication Systems, Inc. Link aggregation in software-defined networks
US9742693B2 (en) 2012-02-27 2017-08-22 Brocade Communications Systems, Inc. Dynamic service insertion in a fabric switch
US9154416B2 (en) 2012-03-22 2015-10-06 Brocade Communications Systems, Inc. Overlay tunnel in a fabric switch
US9374301B2 (en) 2012-05-18 2016-06-21 Brocade Communications Systems, Inc. Network feedback in software-defined networks
US10277464B2 (en) 2012-05-22 2019-04-30 Arris Enterprises Llc Client auto-configuration in a multi-switch link aggregation
US9401872B2 (en) 2012-11-16 2016-07-26 Brocade Communications Systems, Inc. Virtual link aggregations across multiple fabric switches
US9548926B2 (en) 2013-01-11 2017-01-17 Brocade Communications Systems, Inc. Multicast traffic load balancing over virtual link aggregation
US9413691B2 (en) 2013-01-11 2016-08-09 Brocade Communications Systems, Inc. MAC address synchronization in a fabric switch
US20140222866A1 (en) 2013-02-01 2014-08-07 Google Inc. Accessing objects in hosted storage
US9565099B2 (en) 2013-03-01 2017-02-07 Brocade Communications Systems, Inc. Spanning tree in fabric switches
US9401818B2 (en) 2013-03-15 2016-07-26 Brocade Communications Systems, Inc. Scalable gateways for a fabric switch
US9699001B2 (en) 2013-06-10 2017-07-04 Brocade Communications Systems, Inc. Scalable and segregated network virtualization
US10664652B2 (en) 2013-06-15 2020-05-26 Microsoft Technology Licensing, Llc Seamless grid and canvas integration in a spreadsheet application
US20150006146A1 (en) 2013-06-28 2015-01-01 Google Inc. Omega names: name generation and derivation
US9483508B1 (en) 2013-06-28 2016-11-01 Google Inc. Omega names: name generation and derivation
US9806949B2 (en) 2013-09-06 2017-10-31 Brocade Communications Systems, Inc. Transparent interconnection of Ethernet fabric switches
JP5592552B1 (ja) * 2013-10-25 2014-09-17 株式会社Ubic 文書分別調査システム及び文書分別調査方法並びに文書分別調査プログラム
US9912612B2 (en) 2013-10-28 2018-03-06 Brocade Communications Systems LLC Extended ethernet fabric switches
US9548873B2 (en) 2014-02-10 2017-01-17 Brocade Communications Systems, Inc. Virtual extensible LAN tunnel keepalives
US10581758B2 (en) 2014-03-19 2020-03-03 Avago Technologies International Sales Pte. Limited Distributed hot standby links for vLAG
US10476698B2 (en) 2014-03-20 2019-11-12 Avago Technologies International Sales Pte. Limited Redundent virtual link aggregation group
US10063473B2 (en) 2014-04-30 2018-08-28 Brocade Communications Systems LLC Method and system for facilitating switch virtualization in a network of interconnected switches
US9800471B2 (en) 2014-05-13 2017-10-24 Brocade Communications Systems, Inc. Network extension groups of global VLANs in a fabric switch
US10616108B2 (en) 2014-07-29 2020-04-07 Avago Technologies International Sales Pte. Limited Scalable MAC address virtualization
US9807007B2 (en) 2014-08-11 2017-10-31 Brocade Communications Systems, Inc. Progressive MAC address learning
US20160065473A1 (en) * 2014-09-02 2016-03-03 Brocade Communications Systems, Inc. Persistent storage in a switch
US9699029B2 (en) 2014-10-10 2017-07-04 Brocade Communications Systems, Inc. Distributed configuration management in a switch group
US10003552B2 (en) 2015-01-05 2018-06-19 Brocade Communications Systems, Llc. Distributed bidirectional forwarding detection protocol (D-BFD) for cluster of interconnected switches
US9942097B2 (en) 2015-01-05 2018-04-10 Brocade Communications Systems LLC Power management in a network of interconnected switches
US10038592B2 (en) 2015-03-17 2018-07-31 Brocade Communications Systems LLC Identifier assignment to a new switch in a switch group
US9807005B2 (en) 2015-03-17 2017-10-31 Brocade Communications Systems, Inc. Multi-fabric manager
US10579406B2 (en) 2015-04-08 2020-03-03 Avago Technologies International Sales Pte. Limited Dynamic orchestration of overlay tunnels
US10439929B2 (en) 2015-07-31 2019-10-08 Avago Technologies International Sales Pte. Limited Graceful recovery of a multicast-enabled switch
JP6673654B2 (ja) * 2015-08-20 2020-03-25 Yamagata Intech株式会社 情報処理装置
US10171303B2 (en) 2015-09-16 2019-01-01 Avago Technologies International Sales Pte. Limited IP-based interconnection of switches with a logical chassis
US9912614B2 (en) 2015-12-07 2018-03-06 Brocade Communications Systems LLC Interconnection of switches based on hierarchical overlay tunneling
EP3452924A4 (en) * 2016-04-27 2020-01-01 Coda Project, Inc. SYSTEM, METHOD AND APPARATUS FOR OPERATING A UNIFIED DOCUMENT SURFACE WORKSPACE
US10237090B2 (en) 2016-10-28 2019-03-19 Avago Technologies International Sales Pte. Limited Rule-based network identifier mapping
US11061575B2 (en) 2017-09-19 2021-07-13 International Business Machines Corporation Read-only table of contents register
US10705973B2 (en) 2017-09-19 2020-07-07 International Business Machines Corporation Initializing a data structure for use in predicting table of contents pointer values
US10620955B2 (en) 2017-09-19 2020-04-14 International Business Machines Corporation Predicting a table of contents pointer value responsive to branching to a subroutine
US10713050B2 (en) 2017-09-19 2020-07-14 International Business Machines Corporation Replacing Table of Contents (TOC)-setting instructions in code with TOC predicting instructions
US10896030B2 (en) * 2017-09-19 2021-01-19 International Business Machines Corporation Code generation relating to providing table of contents pointer values
US10884929B2 (en) 2017-09-19 2021-01-05 International Business Machines Corporation Set table of contents (TOC) register instruction
US10725918B2 (en) 2017-09-19 2020-07-28 International Business Machines Corporation Table of contents cache entry having a pointer for a range of addresses
US11115486B2 (en) * 2018-08-08 2021-09-07 Microsoft Technology Licensing, Llc Data re-use across documents
CN110213367B (zh) * 2019-05-31 2023-11-28 北京字节跳动网络技术有限公司 互动信息通知方法、装置、设备及计算机可读存储介质
RU2721960C1 (ru) * 2019-08-02 2020-05-25 Общество с ограниченной ответственностью "ПИРФ" (ООО "ПИРФ") Компьютерно-реализуемый способ взаимодействия между компонентами и задачами операционной системы через интерфейсную шину
US10904027B1 (en) * 2020-03-31 2021-01-26 Amazon Technologies, Inc. Usage-based device naming and grouping

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4739477A (en) * 1984-08-30 1988-04-19 International Business Machines Corp. Implicit creation of a superblock data structure
US4674040A (en) * 1984-12-26 1987-06-16 International Business Machines Corporation Merging of documents
US4962475A (en) * 1984-12-26 1990-10-09 International Business Machines Corporation Method for generating a document utilizing a plurality of windows associated with different data objects
US4815029A (en) * 1985-09-23 1989-03-21 International Business Machines Corp. In-line dynamic editor for mixed object documents
US5249275A (en) * 1986-04-21 1993-09-28 Texas Instruments Incorporated Apparatus and method enabling a compiled program to exactly recreate its source code
US5072412A (en) * 1987-03-25 1991-12-10 Xerox Corporation User interface with multiple workspaces for sharing display system objects
US5369778A (en) * 1987-08-21 1994-11-29 Wang Laboratories, Inc. Data processor that customizes program behavior by using a resource retrieval capability
US4933880A (en) * 1988-06-15 1990-06-12 International Business Machines Corp. Method for dynamically processing non-text components in compound documents
JPH0277872A (ja) * 1988-09-14 1990-03-16 Hitachi Ltd 文書処理プログラムを格納した記憶媒体と文書処理装置
CA1323448C (en) * 1989-02-24 1993-10-19 Terrence C. Miller Method and apparatus for translucent file system
US5339423A (en) * 1989-06-16 1994-08-16 International Business Machines Corporation System for accessing objects external to an application using tables containing path definitions
US5297283A (en) * 1989-06-29 1994-03-22 Digital Equipment Corporation Object transferring system and method in an object based computer operating system
US5551035A (en) * 1989-06-30 1996-08-27 Lucent Technologies Inc. Method and apparatus for inter-object communication in an object-oriented program controlled system
EP0953900A3 (en) * 1989-07-21 2000-05-24 Hewlett-Packard Company Object based systems
EP0502857B1 (de) * 1989-11-29 1994-04-06 Siemens Aktiengesellschaft Verfahren zur dynamischen bindung von definierbaren programmelementen eines interaktiven datenverarbeitungssystems
JPH03191429A (ja) * 1989-12-20 1991-08-21 Nec Corp オブジェクト管理方式
AU639802B2 (en) * 1990-08-14 1993-08-05 Oracle International Corporation Methods and apparatus for providing dynamic invocation of applications in a distributed heterogeneous environment
AU628753B2 (en) * 1990-08-14 1992-09-17 Digital Equipment Corporation Method and apparatus for implementing server functions in a distributed heterogeneous environment
US5237680A (en) * 1990-09-27 1993-08-17 Sun Microsystems, Inc. Method for incremental rename propagation between hierarchical file name spaces
US5204947A (en) * 1990-10-31 1993-04-20 International Business Machines Corporation Application independent (open) hypermedia enablement services
US5191645A (en) * 1991-02-28 1993-03-02 Sony Corporation Of America Digital signal processing system employing icon displays
US5187786A (en) * 1991-04-05 1993-02-16 Sun Microsystems, Inc. Method for apparatus for implementing a class hierarchy of objects in a hierarchical file system
JP2811990B2 (ja) * 1991-04-19 1998-10-15 三菱電機株式会社 プログラム処理装置及びプログラム処理方法
US5274803A (en) * 1991-04-26 1993-12-28 Sun Microsystems, Inc. Method and apparatus for aligning a restored parent environment to its child environments with minimal data loss
US5517655A (en) * 1991-04-26 1996-05-14 Hewlett-Packard Company Method for monitoring transactions in an object-oriented environment
DE69230452T2 (de) * 1991-08-19 2000-08-24 Sun Microsystems, Inc. Verfahren und Vorrichtung zur Änderungskontrolle in mehreren Entwicklungsumgebungen
JP3191429B2 (ja) 1992-09-02 2001-07-23 富士通テン株式会社 電子機器の挿排装置
WO1994011810A1 (en) * 1992-11-13 1994-05-26 Microsoft Corporation A method and system for marshalling interface pointers for remote procedure calls
US5805885A (en) * 1992-12-24 1998-09-08 Microsoft Corporation Method and system for aggregating objects
US5535389A (en) * 1993-01-26 1996-07-09 International Business Machines Corporation Business process objects with associated attributes such as version identifier
US5446842A (en) * 1993-02-26 1995-08-29 Taligent, Inc. Object-oriented collaboration system
US5369766A (en) * 1993-03-25 1994-11-29 Taligent, Inc. Object-oriented loader system with support for different load formats
US5459865A (en) * 1993-04-05 1995-10-17 Taligent Inc. Runtime loader
US5408665A (en) * 1993-04-30 1995-04-18 Borland International, Inc. System and methods for linking compiled code with extended dictionary support
US5848234A (en) * 1993-05-21 1998-12-08 Candle Distributed Solutions, Inc. Object procedure messaging facility
US5887172A (en) * 1996-01-10 1999-03-23 Sun Microsystems, Inc. Remote procedure call system and method for RPC mechanism independent client and server interfaces interoperable with any of a plurality of remote procedure call backends

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101213843B1 (ko) 2004-08-27 2012-12-20 마이크로소프트 코포레이션 원활한 객체 비교 시스템 및 방법
KR100772396B1 (ko) * 2006-02-10 2007-11-01 삼성전자주식회사 데이터 객체 병합 방법 및 장치

Also Published As

Publication number Publication date
KR940006027A (ko) 1994-03-22
EP0578207A3 (en) 1995-03-15
US20070061816A1 (en) 2007-03-15
DE69327138D1 (de) 2000-01-05
US5689703A (en) 1997-11-18
US20070061817A1 (en) 2007-03-15
US5740439A (en) 1998-04-14
EP0930566A2 (en) 1999-07-21
US6263379B1 (en) 2001-07-17
US5842018A (en) 1998-11-24
JP3613401B2 (ja) 2005-01-26
JPH06195339A (ja) 1994-07-15
EP0578207B1 (en) 1999-12-01
CA2099918C (en) 2002-11-19
US5581760A (en) 1996-12-03
US5682536A (en) 1997-10-28
US7150024B2 (en) 2006-12-12
DE69327138T2 (de) 2000-04-27
US6519764B1 (en) 2003-02-11
EP0930566A3 (en) 2006-07-05
US7441253B2 (en) 2008-10-21
ATE187268T1 (de) 1999-12-15
US20030200504A1 (en) 2003-10-23
EP0578207A2 (en) 1994-01-12
CA2099918A1 (en) 1994-01-07

Similar Documents

Publication Publication Date Title
KR100287045B1 (ko) 객체의 명명 및 결합들 위한 방법 및 시스템
Akşit et al. An object-oriented language-database integration model: The composition-filters approach
Vinoski Distributed object computing with CORBA
JP4070248B2 (ja) オブジェクト接続を動的に発生する方法及びシステム
EP0669020B1 (en) Methods for marshalling interface pointers for remote procedure calls
US5583983A (en) Multi-platform object-oriented software development and deployment system
US6430556B1 (en) System and method for providing a query object development environment
JP4027679B2 (ja) コンポーネント接続管理方法およびその方法をコンピュータで制御するためのコンピュータ読取り可能な記憶媒体
CA2140166C (en) Method and system for aggregating objects
US8667508B2 (en) Method for providing stand-in objects
EP0752674B1 (en) System and method for allowing disparate naming service providers to dynamically join a naming federation
US5937409A (en) Integrating relational databases in an object oriented environment
US5848273A (en) Method for generating OLE automation and IDL interfaces from metadata information
US20040236781A1 (en) Method and system for registering data formats for objects
EP0746815A1 (en) Method and system for interfacing to a type library
US6223227B1 (en) Method for providing stand-in objects
Grieshaber A computer-aided software engineering toolkit for the integration of CAD/CAM application software in a network environment
Rudolf et al. Implementation of an object-oriented shell
Tangney Integrating ECMA/ISO PCTE and OMG's CORBA
Router C++ Foundation Classes
Bengelloun MDC-Programmer: A Muddle-to-datalanguage Translator for Information Retrieval
Dedo Command Line Arguments & Environment Variables
Bouguettaya et al. Middleware

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121227

Year of fee payment: 13

EXPY Expiration of term