KR100456621B1 - Apparatus and method for processing association-filter query language by using database registry reference - Google Patents

Apparatus and method for processing association-filter query language by using database registry reference Download PDF

Info

Publication number
KR100456621B1
KR100456621B1 KR10-2001-0084436A KR20010084436A KR100456621B1 KR 100456621 B1 KR100456621 B1 KR 100456621B1 KR 20010084436 A KR20010084436 A KR 20010084436A KR 100456621 B1 KR100456621 B1 KR 100456621B1
Authority
KR
South Korea
Prior art keywords
query
converter
generator
request
result
Prior art date
Application number
KR10-2001-0084436A
Other languages
Korean (ko)
Other versions
KR20030054295A (en
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 한국전자통신연구원
Priority to KR10-2001-0084436A priority Critical patent/KR100456621B1/en
Publication of KR20030054295A publication Critical patent/KR20030054295A/en
Application granted granted Critical
Publication of KR100456621B1 publication Critical patent/KR100456621B1/en

Links

Classifications

    • 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/20Natural language analysis
    • G06F40/205Parsing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 데이터베이스 등록소 검색을 이용한 관계-필터 질의어 처리장치 및 방법에 관한 것으로, 질의 클라이언트에는 사용자에 의해 관계-필터 질의어(AFQL)를 이용하여 작성되는 질의어를 제공하며, 질의어에 대한 응답으로 질의어 검색 결과를 사용자가 볼 수 있도록 디스플레이(display)하는 클라이언트 어플리케이션과; 클라이언트 어플리케이션으로부터 제공되는 질의어를 전처리 과정 및 편집하여 질의 처리 서버에 제공하는 요구 질의 생성기와; 질의 처리 서버로부터 제공되는 질의 검색 결과에 대하여 객체를 변화하여 클라이언트 어플리케이션에 제공하는 결과 변환기를 포함하며, 질의 처리 서버에는 요구 질의 생성기로부터 제공되는 질의어를 파싱하고, 파싱된 질의어로부터 질의 그래프를 생성하며, 생성된 질의 그래프와 동일한 최적화된 질의 그래프로 변환한 후, 질의 그래프를 실제 데이터베이스(DB) 언어로 변환하며, 스키마 명과 스키마들간의 프리티켓을 얻어와 최적화 질의어로 변환하는 질의 변환기와; 질의 변환기로부터 검색 요청에 대한 결과를 전달하며, DB 스키마를 테이블 풀, 관계 풀, 속성 풀, 메소드 풀로 나누어 관리하며, DB 스키마 정보에 대하여 저장, 변경, 삭제 등의 변화에 대하여 기 기록된 DB 정보와 일치하는지를 보장하며, 검색된 DB 정보를 다운로드 및 API를 통해 전달하는 등록소와; 질의 변환기에 의해 생성된 DB 질의어에 대응하여, 관계 엘리먼트의 속성 "name" 값에 대응하는 스키마 명과 스키마들간의 프리티켓들을 참조하면서 질의 DB을 검색하여 해당되는 질의어 검색 결과를 읽어와서 제공하는 질의 수행기와; 질의 수행기에 의해 얻어진 검색 결과를 질의 클라이언트에 전송하도록 프로토콜(protocol)화하여 결과 변환기에 제공하는 결과 생성기를 구비한다. 따라서, 서버 DB 시스템에 대한 사전 지식이 없을 경우에도 질의를 생성하고, 또한 질의 처리 시스템을 가지고 있는 어플리케이션 서버는 클라이언트 시스템과의 관련성을 최소화할 수 있으며, 이것은 어플리케이션 서버 내부의 어떤 변화도 클라이언트에 영향을 주지 않는 개방된 구조를 제공할 뿐만 아니라, 현재 새로운 인터넷 표준으로 대두되고 있는 웹서비스와 연동 가능하여 앞으로 새롭게 대두되는 XML 기반의 웹 환경에 적합하다는 효과가 있다.The present invention relates to an apparatus and method for processing a relationship-filter query using a database registry search. The present invention provides a query client with a query written by a user using a relationship-filter query (AFQL), and the query in response to the query. A client application for displaying the search results for viewing by a user; A request query generator for preprocessing and editing a query word provided from a client application and providing the query word to a query processing server; It includes a result converter for changing the object to provide a client application to the query search results provided from the query processing server, the query processing server parses the query provided from the request query generator, and generates a query graph from the parsed query A query converter for converting the query graph into the same optimized query graph as the generated query graph, converting the query graph into a real database (DB) language, obtaining a free ticket between the schema name and the schemas, and converting the query graph into an optimized query language; It delivers the results of the search request from the query translator, manages the DB schema into table pools, relationship pools, attribute pools, and method pools, and records the previously recorded DB information on changes such as saving, altering, and deleting the DB schema information. And a registry for ensuring that the data is matched with the downloaded and transmitted DB information through an API; In response to the DB query generated by the query converter, a query executor that searches the query DB while referring to the schema name corresponding to the attribute "name" value of the relation element and the pre-tickets between the schemas, and reads and provides the corresponding query search result. Wow; And a result generator that protocolizes the search results obtained by the query executor to be sent to the query client and provides them to the result converter. Therefore, even if there is no prior knowledge of the server DB system, an application server that generates a query and also has a query processing system can minimize the relationship with the client system, which means that any change in the application server affects the client. Not only does it provide an open structure that does not have a problem, but it is also compatible with web services that are emerging as a new Internet standard.

Description

데이터베이스 등록소 검색을 이용한 관계-필터 질의어 처리장치 및 방법{APPARATUS AND METHOD FOR PROCESSING ASSOCIATION-FILTER QUERY LANGUAGE BY USING DATABASE REGISTRY REFERENCE}FIELD AND METHOD FOR PROCESSING ASSOCIATION-FILTER QUERY LANGUAGE BY USING DATABASE REGISTRY REFERENCE}

본 발명은 데이터베이스(DataBase : DB) 등록소 검색을 이용한 관계-필터 질의어 처리장치 및 방법에 관한 것으로, 특히 클라이언트 사용자가 서버 DB에 대한 질의 언어를 쉽게 이해하면서 사용하며, 확장 마크업 언어(Extensible Markup Language : XML)를 기반으로 웹 서비스(Web service)의 차세대 인터넷 기술을 손쉽게 이용하도록 새로운 질의 언어를 정의하고 이에 대한 질의를 처리할 수 있도록 하는 장치 및 방법에 관한 것이다.The present invention relates to a relation-filter query processing apparatus and method using a database (DB) registry search, and in particular, a client user can easily understand and use a query language for a server DB, and use an extensible markup language. A device and method for defining a new query language and processing a query thereon to easily use the next generation Internet technology of a web service based on Language: XML).

통상적으로, 클라이언트/서버 환경에 있어서, 클라이언트가 서버 내에 존재하는 DB에 접근하기 위해 개방 데이터베이스 연결성(Open DataBase Connectivity :ODBC), 자바 데이터베이스 연결성(Java DataBase Connectivity : JDBC)과 같은 운영체계와 프로그래밍 언어에 의존적인 기술이나 웹 브라우저를 이용하여 서버의 DB에 접근하는 방법을 이용한다.Typically, in a client / server environment, the client can access operating systems and programming languages such as Open DataBase Connectivity (ODBC) and Java DatabaseBase Connectivity (JDBC) to access a database in the server. You can access the server's database using a dependent technology or a web browser.

즉, ODBC나 JDBC를 이용하는 경우, 시스템 개발자가 아닌 일반 사용자가 구조적 질의 언어(Structured Query Language : SQL)를 이해하고 사용하기가 매우 어렵기 때문에 어플리케이션에서 사용자가 SQL을 몰라도 쉽게 이용하도록 하는 인터페이스를 제공해야 한다.In other words, when using ODBC or JDBC, it is very difficult for general users, not system developers, to understand and use Structured Query Language (SQL). Should be.

그러나, 어플리케이션에 다양한 기능을 요구하고 서버 시스템에 있는 DB의 구조와 클라이언트 시스템과 결합성을 증가시키기 때문에 서버 시스템 내의 DB 구조 또는 종류의 변화는 클라이언트 어플리케이션의 변화 또한 발생하게 되는 문제점이 있었다. 또한 웹을 이용하는 웹 어플리케이션의 경우에는 상술한 문제점을 발생시키지는 않지만 클라이언트 내부에서 사용되고 있는 다른 어플리케이션 또는 시스템들 간의 연동 문제를 원활하게 수행할 수 없게 되는 문제점이 있었다.However, since the application requires various functions and increases the structure of the DB in the server system and the coupling with the client system, a change in the DB structure or type in the server system also causes a change in the client application. In addition, in the case of a web application using the web does not cause the above-mentioned problems, there is a problem that can not be smoothly performed interworking problems between other applications or systems used in the client.

한편, 상술한 바와 같이, DB에서의 질의어 이용 방법으로는 등록번호 2001-54560에 등록된 "다중 데이터베이스 질의언어를 이용한 스키마 통합방법"과, 2001년 5월에 발표된 "OASIS/ebXML Registry Service Specification 1.0" 등에 개시되어 있다.On the other hand, as described above, the query usage method in the DB, "schema integration method using multiple database query language" registered in the registration number 2001-54560, and "OASIS / ebXML Registry Service Specification" published in May 2001 1.0 "or the like.

즉, 개시된 선행기술에 대하여 상세하게 설명하면, 등록번호 2001-54560에 등록된 "다중 데이터베이스 질의언어를 이용한 스키마 통합방법"은 다중 DB 미들웨어 시스템에서 적용되는 다중 DB 질의언어를 이용한 스키마 통합 방법에 있어서,스키마를 통합하기 위해 다중 데이터베이스 질의어(Multi_DataBase Query Language : MQL)를 이용하여 지역 DB를 등록하는1단계; 상기 등록된 지역 DB에 대한 각각의 다중 DB 질의언어 명령어를 수행하는 제2단계; 클래스 생성 명령어에 따라 하나의 지역 DB 엔티티를 클래스로 변환하여 클래스를 생성하는 제3단계; 여러 지역 DB에 분산된 지역 스키마를 하나의 전역 스키마로 통합하기 위해 가상 클래스 생성 명령어에 따라 가상 클래스를 생성하는 제4단계; 및 상기 생성된 클래스 및 가상 클래스에 대한 다중 DB 질의언 명령어를 수행하는 5단계를 포함한다.That is, in detail describing the disclosed prior art, "schema integration method using a multiple database query language" registered in the registration number 2001-54560 is a schema integration method using a multiple DB query language applied in a multiple DB middleware system Registering a local DB using a multi-database query language (MQL) to integrate a schema; Performing a plurality of DB query language commands for the registered local DB; A third step of generating a class by converting one local DB entity into a class according to a class generation command; A fourth step of generating a virtual class according to a virtual class creation command to integrate local schemas distributed in multiple local DBs into one global schema; And five steps of performing a multi-DB query command on the generated class and the virtual class.

상술한 특허에서 이용되는 다중 DB 질의언어는 SQL3을 확장한 질의어이며 다중 DB 미들웨어 시스템은 이 기종 지역 DB의 통합 및 연결을 위하여 개발한 시스템으로서 각기 다른 지역 DB에 저장된 데이터를 사용자가 단일한 인터페이스를 통하여 접근할 수 있도록 하는 통합한 접근방식을 제공하는 미들웨어 시스템이다.The multi-DB query language used in the above patent is a query language that extends SQL3 and the multi-DB middleware system is developed for the integration and connection of heterogeneous regional DBs. It is a middleware system that provides an integrated approach that can be accessed through.

이러한, 시스템은 기존 지역 DB의 독립성을 보장하면서 하나의 소프트웨어 통합 계층을 통하여 이들 지역 DB들을 통합할 수 있는 미들웨어 시스템으로서, 상이한 방식으로 저장/운용되는 각 지역 DB에 전혀 수정을 가하지 않고도 단일한 인터페이스 접근/수정/통합할 수 있는 메커니즘을 제공한다.This system is a middleware system that can integrate these regional DBs through a single software integration layer while ensuring the independence of the existing regional DBs. A single interface without any modification to each regional DB stored / operated in a different manner is provided. It provides a mechanism to access, modify, and integrate.

따라서, 다중 DB 시스템을 사용하기 위해서는 사용자에게 하나의 통합된 전역 스키마(global schema)를 제공하여야 하며, 사용자는 이를 이용하여 전역 DB 내의 데이터를 읽거나 변경하게 된다. 다중 DB 시스템을 구성하는 지역 DB 시스템들은 데이터 모델, 질의어 처리 및 트랜잭션 관리 능력 등에 있어 관계형, 객체 지향형, 객체 관계형 등 서로 상이한 방식으로 작동 및 운용된다. 여기서, 통합 시스템의 스키마는 하나의 모델로 표현되므로 이들 다양한 모델의 스키마들을 하나의 모델에 기반을 두는 스키마로 통합하는 과정이 필요한 것이다.Therefore, in order to use multiple DB systems, a single integrated global schema must be provided to the user, and the user reads or modifies data in the global DB using this. Local DB systems that make up multiple DB systems operate and operate in different ways such as relational, object-oriented, and object-relational in terms of data model, query processing, and transaction management capabilities. Here, since the schema of the integrated system is represented by one model, a process of integrating the schemas of these various models into a schema based on one model is necessary.

다음으로, 2001년 5월에 발표된 "OASIS/ebXML Registry Service Specification 1.0"은 차세대 기업 간 전자상거래 국제표준화 작업의 일부인 ebXML 등록소(Registry)에 제공되는 서비스들에 대한 표준안들을 기술하고 있다. 이 표준은 현재 버전1.0이 2001.5.10에 발표되었고 버전 2.0표준이 12월에 발표될 예정이다.Next, the OASIS / ebXML Registry Service Specification 1.0, published in May 2001, describes standards for services provided to the ebXML Registry, which is part of the international standardization of next-generation enterprise e-commerce. The standard now has version 1.0 released at 2001.5.10 and the version 2.0 standard will be released in December.

ebXML 등록소는 B2B거래에 필요한 업무절차, 기업 프로파일, 거래약정 등을 미리 등록 저장하고 거래 대상 검색이나 거래 발생 시 필요한 항목들을 검색할 수 있는 기능을 제공한다.The ebXML Registry provides the ability to register and store business procedures, company profiles, and trade agreements required for B2B transactions in advance, and to search for items that are needed when searching for a transaction or when a transaction occurs.

ebXML 등록소에 저장되는 항목들을 RegistryEntry라고 하며 RegistryEntry를 등록, 갱신, 삭제하는 서비스를 객체관리서비스(Object Manager Service)라 하고 RegistryEntry에 대한 검색을 객체질의서비스(ObjectQueryService)라 한다.The items stored in the ebXML registry are called RegistryEntry. The service to register, update, and delete RegistryEntry is called Object Manager Service, and the search for RegistryEntry is called ObjectQueryService.

이러한 두 개의 서비스는 클라이언트로부터 생성된 질의어에 의해서 수행되며 이러한 질의어는 XML구문으로 되어있다.These two services are performed by a query generated from the client, which is in XML syntax.

즉, 질의어는 등록소(Registry)에서 제공하는 모든 서비스 종류에 대해 XML 엘리먼트로 정의하고 있으며, 이용자는 원하는 서비스에 해당하는 XML구문에 맞게 질의어를 작성하여 등록소 서버에 요청을 하면 요청에 대한 결과를 XML로 돌려준다.In other words, the query is defined as an XML element for all types of services provided by the registry, and the user writes a query according to the XML syntax corresponding to the desired service and makes a request to the registry server for the result of the request. Returns as XML

객체관리서비스에서 등록할 경우, 사용자가 원하는 항목을 채워서 등록소에제출한 후, 제출된 항목들이 모두 유효하다고 판정되면, 등록소에 저장된다. 객체 질의 서비스에서 검색할 경우, 표준화되어 있는 상품분류. 또는 서비스 분류를 이용하는 드릴다운(Drill Down) 질의가 있고 원하는 질의어를 직접 작성하여 질의를 요구하는 필터 질의가 있다.When registering in the object management service, the user fills in a desired item and submits it to the registry, and when it is determined that all submitted items are valid, it is stored in the registry. Standardized product classification when searching in the object query service. Alternatively, there is a drill down query using a service classification and a filter query that requires a query by directly writing a desired query.

드릴다운(Drill Down) 질의는 마치 윈도우 탐색기에서 디렉토리를 검색하여 원하는 항목을 검색하는 것과 유사하고 필터 질의의 경우에는 사용자가 직접 XML구문의 질의어를 작성해야 한다.Drill-down queries are similar to searching directories in Windows Explorer to search for a desired item. In the case of a filter query, you must write your own XML syntax.

이러한 필터 질의어는 XML 구문으로 되어있지만 XML문서에 대한 질의어가 아니다. 이것은 관계형 DB나 객체지향 DB 등에 저장되어 있는 RegistryEntry를 검색하기 위한 질의어이다.These filter queries are in XML syntax but are not queries on XML documents. This is a query for searching RegistryEntry stored in relational DB or object oriented DB.

그러므로, 질의어는 동등한 의미를 가지는 SQL 변환 가능함을 Registry Sevice 스팩에서 기술하고 있지만, 이 필터질의는 DB에 있는 데이터에 대한 서비스를 미리 정해 놓고 이것을 위한 XML구문을 정해놓았다는 점이 일반적인 SQL과 같은 질의어와 차이점이다. 물론 구문에도 차이가 있지만, 이것은 등록소를 이용하는 사용자에게 SQL과 같은 질의어가 아니라 자판기에서 원하는 항목을 선택하는 서비스와 같은 뷰를 제공하기 위한 것이다.Therefore, although the Registry Sevice specification states that query terms can be converted into equivalent SQLs, this filter query pre-determines the service for the data in the DB and defines the XML syntax for this. The difference is. The syntax is different, of course, but it is intended to give the user of the registry a view, like a service that selects items from the vending machine, rather than a query like SQL.

이와 같이, 선행 논문 및 등록 특허에 개시된 기술을 살펴보았을 때, 기존의 공지된 기술에는 본원 발명에서 제시하는 클라이언트 사용자가 서버 DB에 대한 질의 언어를 쉽게 이해하면서 사용하며, 확장 마크업 언어(XML)를 기반으로 웹 서비스(Web service)의 차세대 인터넷 기술을 손쉽게 이용하도록 새로운 질의 언어를정의하고 이에 대한 질의를 처리하여야 하며, 필터 질의어를 모든 DB에 적용 가능하도록 일반화 한 구문을 정의하고 질의어를 생성하고 처리하는 부분을 제안한 것이며, 이러한 제안을 이용하여 ebXML RegistryService 스팩에 있는 서비스 항목들을 구현 가능한 점을 가지고 있어야 하는 점에는 그 기술적인 내용이 미치지 못하게 되는 문제점이 여전히 남아 있었다.As described above, when looking at the technology disclosed in the preceding papers and registered patents, the existing known technology uses the client user of the present invention while easily understanding the query language for the server DB, and uses an extended markup language (XML). We need to define new query language and process query for easy use of next-generation internet technology of web service based on it, define generalized syntax to apply filter query word to all DBs, and create query word. It was suggested that the process be handled, and there was still a problem that the technical content could not be achieved in that the service items in the ebXML RegistryService specification could be implemented using this proposal.

따라서, 본 발명은 상술한 문제점을 해결하기 위해 안출된 것으로서, 그 목적은 클라이언트 사용자가 서버 데이터베이스(DataBase : DB)에 대한 질의 언어를 쉽게 이해하면서 사용하며, 확장 마크업 언어(Extensible Markup Language : XML)를 기반으로 웹 서비스(Web service)의 차세대 인터넷 기술을 손쉽게 이용하도록 새로운 질의 언어를 정의하고 이에 대한 질의를 처리할 수 있도록 하는 DB 등록소 검색을 이용한 관계-필터 질의어 처리장치 및 방법을 제공함에 있다.Accordingly, the present invention has been made to solve the above-described problem, the object of which is to use the client user easily understand the query language for the server database (DataBase: DB), Extensible Markup Language (XML) To provide a method and method for relation-filter query processing using DB registry search to define a new query language and to process a query for easy use of next-generation Internet technology of Web service. have.

상술한 목적을 달성하기 위한 본 발명의 DB 등록소 검색을 이용한 관계-필터 질의어 처리장치에 있어서, 질의 클라이언트에는 사용자에 의해 관계-필터 질의어(AFQL)를 이용하여 작성되는 질의어를 제공하며, 질의어에 대한 응답으로 질의어 검색 결과를 사용자가 볼 수 있도록 디스플레이(display)하는 클라이언트 어플리케이션과; 클라이언트 어플리케이션으로부터 제공되는 질의어를 전처리 과정 및 편집하여 질의 처리 서버에 제공하는 요구 질의 생성기와; 질의 처리 서버로부터 제공되는 질의 검색 결과에 대하여 객체를 변화하여 클라이언트 어플리케이션에 제공하는 결과 변환기를 포함하며, 질의 처리 서버에는 요구 질의 생성기로부터 제공되는 질의어를 파싱하고, 파싱된 질의어로부터 질의 그래프를 생성하며, 생성된 질의 그래프와 동일한 최적화된 질의 그래프로 변환한 후, 질의 그래프를 실제 데이터베이스(DB) 언어로 변환하며, 스키마 명과 스키마들간의 프리티켓을 얻어와 최적화 질의어로 변환하는 질의 변환기와; 질의 변환기로부터 검색 요청에 대한 결과를 전달하며, DB 스키마를 테이블 풀, 관계 풀, 속성 풀, 메소드 풀로 나누어 관리하며, DB 스키마 정보에 대하여 저장, 변경, 삭제 등의 변화에 대하여 기 기록된 DB 정보와 일치하는지를 보장하며, 검색된 DB 정보를 다운로드 및 API를 통해 전달하는 등록소와; 질의 변환기에 의해 생성된 DB 질의어에 대응하여, 관계 엘리먼트의 속성 "name" 값에 대응하는 스키마 명과 스키마들간의 프리티켓들을 참조하면서 질의 DB을 검색하여 해당되는 질의어 검색 결과를 읽어와서 제공하는 질의 수행기와; 질의 수행기에 의해 얻어진 검색 결과를 질의 클라이언트에 전송하도록 프로토콜(protocol)화하여 결과 변환기에 제공하는 결과 생성기를 포함하는 것을 특징으로 한다.In the relation-filter query processing apparatus using the DB registry search of the present invention for achieving the above object, the query client provides a query written by the user using a relation-filter query (AFQL), A client application for displaying a query search result in response to the user for viewing; A request query generator for preprocessing and editing a query word provided from a client application and providing the query word to a query processing server; It includes a result converter for changing the object to provide a client application to the query search results provided from the query processing server, the query processing server parses the query provided from the request query generator, and generates a query graph from the parsed query A query converter for converting the query graph into the same optimized query graph as the generated query graph, converting the query graph into a real database (DB) language, obtaining a free ticket between the schema name and the schemas, and converting the query graph into an optimized query language; It delivers the results of the search request from the query translator, manages the DB schema into table pools, relationship pools, attribute pools, and method pools, and records the previously recorded DB information on changes such as saving, altering, and deleting the DB schema information. And a registry for ensuring that the data is matched with the downloaded and transmitted DB information through an API; In response to the DB query generated by the query converter, a query executor that searches the query DB while referring to the schema name corresponding to the attribute "name" value of the relation element and the pre-tickets between the schemas, and reads and provides the corresponding query search result. Wow; And a result generator which protocolizes the search result obtained by the query executor to be transmitted to the query client and provides the result converter.

또한, 상술한 목적을 달성하기 위한 본 발명에서 DB 등록소 검색을 이용한 관계-필터 질의어 처리방법은 클라이언트 어플리케이션에서 사용자에 의해 관계-필터 질의어(AFQL)를 이용하여 작성되는 질의어를 요구 질의 생성기에 제공하는 단계; 요구 질의 생성기에서 클라이언트 어플리케이션으로부터 제공되는 질의어를 전처리 과정 및 편집하여 질의 변환기에 제공하는 단계; 질의 변환기에서 요구 질의 생성기로부터 제공되는 질의어를 파싱하고, 파싱된 질의어로부터 질의 그래프를 생성하며, 생성된 질의 그래프와 동일한 최적화된 질의 그래프로 변환한 후, 질의 그래프를 실제 데이터베이스(DB) 언어로 변환하며, 등록소에서 스키마 명과 스키마들간의 프리티켓을 얻어와 최적화 질의어로 변환하여 질의 수행기에 제공하는 단계; 질의 수행기에서 질의 변환기에 의해 생성된 DB 질의어에 대응하여, 관계 엘리먼트의 속성 "name" 값에 대응하는 스키마 명과 스키마들간의 프리티켓들을 참조하면서 질의 DB을 검색하여 해당되는 질의어 검색 결과를 읽어와서 결과 생성기에 제공하는 단계; 결과 생성기에서 질의 수행기에 의해 얻어진 검색 결과를 프로토콜(protocol)화하여 결과 변환기에 제공하는 단계; 결과 변환기에서 결과 생성기로부터 제공되는 질의 검색 결과에 대하여 객체를 변화하여 사용자가 질의어 검색 결과를 디스플레이(display)하도록 클라이언트 어플리케이션에 제공하는 단계를 포함하는 것을 특징으로 한다.In addition, in the present invention for achieving the above object, the relationship-filter query processing method using the DB registry search provides a query query generated by the user in the client application using the relationship-filter query (AFQL) to the request query generator Making; Preprocessing and editing a query word provided from a client application in a request query generator and providing the query word to a query converter; The query converter parses the query provided from the request query generator, generates a query graph from the parsed query, converts it into the same optimized query graph as the generated query graph, and then converts the query graph into a real database (DB) language. Obtaining a pre-ticket between the schema and the schemas in the registry, converting the schema into an optimized query, and providing the query to the query executor; In response to the DB query generated by the query converter in the query executor, the query DB is searched while referring to the schema name corresponding to the attribute "name" value of the relation element and the schemas between the schemas, and the result of reading the corresponding query search result Providing it to a generator; Protocolizing the search results obtained by the query performer in a result generator and providing them to a result converter; And transforming the object with respect to the query search result provided by the result generator in the result converter and providing the client application with the user to display the query search result.

도 1은 본 발명에 따른 데이터베이스 등록소 검색을 이용한 관계-필터 질의어 처리장치에 대한 블록 구성도이고,1 is a block diagram of a relationship-filter query processing apparatus using a database registry search according to the present invention;

도 2는 도 1에 도시된 요구 질의 생성기에 대한 세부적인 도면이며,FIG. 2 is a detailed diagram of the request query generator shown in FIG. 1;

도 3은 도 1에 도시된 결과 변환기에 대한 세부적인 도면이며,3 is a detailed diagram of the result converter shown in FIG. 1;

도 4는 도 1에 도시된 질의 변환기에 대한 세부적인 도면이며,4 is a detailed diagram of the query converter illustrated in FIG. 1;

도 5는 도 1에 도시된 등록소에 대한 세부적인 도면이며,5 is a detailed view of the registry shown in FIG.

도 6은 본 발명에 따른 데이터베이스 등록소 검색을 이용한 관계-필터 질의어 처리방법에 대한 상세 흐름도이며,6 is a detailed flowchart illustrating a method of processing a relationship-filter query using a database registry search according to the present invention.

도 7은 본 발명에 따른 질의 그래프의 예시 도면에 대하여 도시한 도면이며,7 is a diagram illustrating an exemplary diagram of a query graph according to the present invention;

도 8은 본 발명에 따른 등록소에 저장된 데이터베이스 정보에 대한 예시 도면을 도시한 도면이다.8 is a diagram illustrating an example of database information stored in a registry according to the present invention.

<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>

100 : 질의 클라이언트 110 : 클라이언트 어플리케이션100: query client 110: client application

120 : 요구 질의 생성기 121 : XML 편집기120: Request Query Generator 121: XML Editor

123 : AFQL 질의 편집기 130 : 결과 변환기123: AFQL Query Editor 130: Result Converter

131 : XML 파서 133 : 스타일 쉬트 변환기131: XML Parser 133: Style Sheet Converter

135 : 객체 변환기 200 : 질의 처리 서버135: object converter 200: query processing server

210 : 질의 변환기 211 : XML 파서210: Query Converter 211: XML Parser

213 : 질의 그래프 생성기 215 : 질의 최적화기213: query graph generator 215: query optimizer

217 : 데이터베이스 질의어 생성기 220 : 등록소217: database query generator 220: registry

221 : 테이블 풀 223 : 관계 풀221: table pool 223: relationship pool

225 : 등록소 API 230 : 질의 수행기225: Registry API 230: Query Performer

240-1∼240-n : 질의 데이터베이스 250 : 질의 생성기240-1 to 240-n: query database 250: query generator

이하, 첨부된 도면을 참조하여 본 발명에 따른 실시 예를 상세하게 설명하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 따른 데이터베이스 등록소 검색을 이용한 관계-필터 질의어 처리장치에 대한 블록 구성도로서, 질의 클라이언트(100) 및 질의 처리 서버(200)를 포함한다.1 is a block diagram of a relationship-filter query processing apparatus using a database registry search according to the present invention, and includes a query client 100 and a query processing server 200.

질의 클라이언트(100)는 질의 처리 서버(200)에 연동되어 질의어를 제공하고, 이어서, 질의어에 대한 응답 결과를 제공받아 사용자가 볼 수 있도록 디스플레이(display)하는 블록으로서, 클라이언트 어플리케이션(110)과, 요구 질의 생성기(120)와, 결과 변환기(130)를 구비한다.The query client 100 is interlocked with the query processing server 200 to provide a query, and then receives a response result for the query to display the display for the user to view. The client application 110 and A request query generator 120 and a result converter 130.

클라이언트 어플리케이션(110)은 사용자에 의해 동작되는 것으로, 사용자에 의해 관계-필터 질의어(Association and Filter Query Language : AFQL)를 이용하여 작성되는 질의어(예로, 개발부에 속한 사람 중 포르쉐를 소유한 자를 검색하는 질의어)를 요구 질의 생성기(120)에 제공한다. 이후, 클라이언트 어플리케이션(110)은 결과 변환기(130)로부터 제공되는 질의어 검색 결과를 사용자가 볼 수 있도록 디스플레이(display)한다. 여기서, 질의어 필터 엘리먼트는 예 1을 참조하는 것으로, 예 1은 필터 엘리먼트의 속성값 class="사람"이고, 관계 엘리먼트의 속성값 name="자동차소유" 및 name="속한 부서"로서, 이를 보다 상세하게 설명하면 다음과 같다.The client application 110 is operated by a user and searches for a query (for example, a person who owns Porsche among people belonging to the development department) written by the user using an association-filter query language (AFQL). Query term) is provided to the request query generator 120. The client application 110 then displays the query search results provided by the result converter 130 for the user to view. Here, the query filter element refers to Example 1, and Example 1 is an attribute value class = "person" of the filter element, and an attribute value name = "car ownership" and name = "belonging department" of the relationship element. It will be described in detail as follows.

즉, 예 1에 있어서, 필터 엘리먼트는,That is, in Example 1, the filter element is

<Query class = “사람”><Query class = “person”>

<Association name = “자동차 소유”><Association name = “Owned Car”>

<Filter><Filter>

이름 = 포르쉐Name = Porsche

</Filter></ Filter>

</Association></ Association>

<Association name = “속한 부서”><Association name = “Department”

<Filter><Filter>

이름 = 개발부Name = Development Department

</Filter></ Filter>

</Query> 이며,</ Query>,

상술한 예 1에서 필터 엘리먼트는 프리티켓 엘리먼트를 포함하고 있지 않기 때문에, 예 2와 같이, 필터 엘리먼트 내의 문자열을 프리티켓 엘리먼트로 바꾸면 다음과 같다.Since the filter element does not include the free ticket element in Example 1 described above, as shown in Example 2, when the string in the filter element is replaced with the free ticket element, it is as follows.

즉, 예 2에 있어서, 프리티켓 엘리먼트로 바뀐 문자열은,That is, in Example 2, the string replaced by the free ticket element is

<Query class = “사람”><Query class = “person”>

<Association name = “자동차 소유”><Association name = “Owned Car”>

<Filter><Filter>

<Predicate><Predicate>

<SimplePredicate attr="이름"><SimplePredicate attr = "Name">

<StringPredicate stringPredicate="equal"> 포르쉐 </StringPredicate><StringPredicate stringPredicate = "equal"> Porsche </ StringPredicate>

</SimplePredicate></ SimplePredicate>

</Predicate></ Predicate>

</Filter></ Filter>

</Association></ Association>

<Association name = “속한 부서”><Association name = “Department”

<Filter><Filter>

<Predicate><Predicate>

<SimplePredicate attr="이름"><SimplePredicate attr = "Name">

<StringPredicate stringPredicate="equal"> 개발부 </StringPredicate><StringPredicate stringPredicate = "equal"> Development Department </ StringPredicate>

</SimplePredicate></ SimplePredicate>

</Predicate></ Predicate>

</Filter></ Filter>

</Query> 인 것이다.</ Query>.

요구 질의 생성기(120)는 요구 질의어를 생성하는 블록으로서, XML 편집기(121)와 AFQL 질의 편집기(123)를 갖는다.The request query generator 120 is a block for generating a request query, and includes an XML editor 121 and an AFQL query editor 123.

XML 편집기(121)는 클라이언트 생성기(120)로부터 제공되는 질의어를 전처리 과정을 거쳐 XML 요구 질의어로 편집하며, AFQL 질의 편집기(123)는 XML 편집기(121)에 의해 편집된 XML 요구 질의어를 보다 세부적으로 편집하면서 AFQL을 생성하여 질의 처리 서버(200)에 제공한다.The XML editor 121 edits the query provided from the client generator 120 as an XML request query through a preprocessing process, and the AFQL query editor 123 edits the XML request query edited by the XML editor 121 in more detail. While editing, an AFQL is generated and provided to the query processing server 200.

결과 변환기(130)는 질의 처리 서버(200)에 의해 처리된 검색 결과를 클라이언트 어플리케이션(110)에 제공해 주는 블록으로서, XML 파서(131)와, 스타일 쉬트 변환기(133)와, 객체 변환기(135)를 갖는다.The result converter 130 is a block for providing the client application 110 with the search results processed by the query processing server 200, and includes an XML parser 131, a style sheet converter 133, and an object converter 135. Has

XML 파서(131)는 질의 처리 서버(200)내 결과 생성기(250)로부터 제공되는 XML 검색 결과를 제공받아 파싱하여 검색 결과 종류를 결정한 후, 결정된 검색 결과를 스타일 쉬트 변환기(133)에 제공한다.The XML parser 131 receives and parses an XML search result provided from the result generator 250 in the query processing server 200 to determine a search result type, and then provides the determined search result to the style sheet converter 133.

스타일 쉬트 변환기(133)는 XML 파서(131)로부터 제공되는 결정된 검색 결과를 스타일 쉬트로 변환하여 객체 변환기(135)에 제공한다.The style sheet converter 133 converts the determined search result provided from the XML parser 131 into a style sheet and provides it to the object converter 135.

객체 변환기(135)는 스타일 쉬트 변환기(133)에 의해 쉬트로 변환된 검색 결과를 클라이언트 어플리케이션(110)에 전송하도록 객체를 변환하면서 제공한다.The object converter 135 converts and provides an object to transmit the search result converted into the sheet by the style sheet converter 133 to the client application 110.

질의 처리 서버(200)는 질의 클라이언트(100)에 연동되어 질의어를 제공받은 후, 제공되는 질의어에 대한 응답을 질의 클라이언트(100)에 제공해 주는 블록으로서, 질의 변환기(210)와, 등록소(220)와, 질의 수행기(230)와, 질의 DB(240-1∼240-n)와, 결과 생성기(250)를 구비한다.The query processing server 200 is a block that provides a response to the provided query to the query client 100 after receiving a query in cooperation with the query client 100, and includes a query converter 210 and a registry 220. ), A query executor 230, query DBs 240-1 to 240-n, and a result generator 250.

질의 변환기(210)는 질의어를 처리하여 DB 질의어를 생성하기 위한 블록으로서, XML 파서(211)와, 질의 그래프 생성기(213)와, 질의 최적화기(215)와, DB 질의어 생성기(217)를 갖는다.The query converter 210 is a block for processing a query to generate a DB query. The query converter 210 includes an XML parser 211, a query graph generator 213, a query optimizer 215, and a DB query generator 217. .

XML 파서(211)는 요구 질의 생성기(120)로부터 제공되는 XML 요구 질의어인 AFQL을 제공받아 파싱하여 요구 질의어 종류를 결정한 후, 결정된 요구 질의어 AFQL을 질의 그래프 생성기(213)에 제공한다.The XML parser 211 receives and parses AFQL, which is an XML request query word provided from the request query generator 120, determines a request query type, and then provides the determined request query AFQL to the query graph generator 213.

질의 그래프 생성기(213)는 XML 파서(211)에 의해 파싱된 요구 질의어 AFQL을 처리하는 과정에서 관계 엘리먼트의 속성 "name" 값에 대응하는 스키마 명과 스키마들간의 프리티켓을 등록소(220)내 등록소 API(225)를 통해 얻어와 질의 최적화기(215)에 제공한다.The query graph generator 213 registers the schema name corresponding to the attribute "name" value of the relation element and the free ticket between the schemas in the registry 220 in the process of processing the request query AFQL parsed by the XML parser 211. Obtained through the small API 225 and provided to the query optimizer 215.

여기서, 두 개의 관계 엘리먼트의 속성 name 값은 상술한 예 2와 같이, 각각의 자동차 소유와 속한 부서인 것으로, 이 값은 도 8에 도시된 관계 풀(223)을 참조하여 도 7b의 과정 55 및 54로 변환한다. 도 7b의 과정 51, 52, 53 역시 테이블 풀(221)에 의해서 결정되는 것이며, 도 7a는 3개의 클래스(class), 즉 클래스(Class)1, 2, 3에 대해서 AFQL로 요구 질의어를 작성했을 때 변환되는 질의 그래프에 대한 일반적인 형태를 보여주는 것이다.In this case, the attribute name values of the two relationship elements are the departments belonging to the respective vehicle owners, as in Example 2 described above, and the values are the process 55 of FIG. 7B with reference to the relationship pool 223 shown in FIG. 8. Convert to 54. Processes 51, 52, and 53 of FIG. 7B are also determined by the table pool 221, and FIG. 7A shows that the request query is written in AFQL for three classes, that is, classes 1, 2, and 3. This shows the general form of the query graph being converted.

질의 최적화기(215)는 질의 그래프 생성기(213)로부터 제공되는 프리티켓을 도 7b의 과정 54, 55, 57, 58과 같은 질의 그래프에 있는 프리티켓들의 연산 순서를 최적화로 결정하여 DB 질의어 생성기(217)에 제공한다.The query optimizer 215 determines the operation order of the pre-tickets in the query graph such as processes 54, 55, 57, and 58 of FIG. 7B as an optimization based on the free tickets provided by the query graph generator 213. 217).

DB 질의어 생성기(217)는 질의 최적화기(215)에 의해 결정된 프리티켓들을 이용하여 예 3과 같은 최종적인 DB 질의어를 생성하여 질의 수행기(230)에 제공한다. 여기서, DB 질의어는 질의 처리 서버(200)에서 사용되는 데이터베이스 관리 시스템(DataBase management system : DBMS) 종류에 따라 달라지는데, 그 예로, 관계형 DBMS에서는 구조화 조회 언어(structured query language : SQL)를 질의어로 사용하고 객체 지향형 데이터베이스 관리 시스템(object-oriented DataBase management system : OODBMS)에서는 객체 조회 언어(object query language : OQL)를 사용하며 경우에 따라서 DBMS 자체적인 질의어를 가지고 있는 경우도 있다. 또한, DB 질의어 생성기(217)에서는 어떠한 형태의 DB 질의어로도 변환 할 수 있는 기능을 제공하는 반면에, 그 변환 기능은 질의 처리 서버(200)쪽에서 이용하고 있는 모든 질의 DB(240-1∼240-n)에 대해서 미리 구현되어야 한다.The DB query generator 217 generates a final DB query as in Example 3 using the free tickets determined by the query optimizer 215 and provides it to the query performer 230. Here, the DB query language depends on the type of database management system (DBMS) used in the query processing server 200. For example, in a relational DBMS, a structured query language (SQL) is used as a query language. The object-oriented database management system (OODBMS) uses an object query language (OQL) and sometimes has its own query language. In addition, the DB query generator 217 provides a function for converting to any type of DB query word, while the conversion function includes all query DBs 240-1 to 240 used by the query processing server 200. -n) must be implemented beforehand.

즉, 예 3은 도 7b를 관계형 DB 질의어인 SQL로 변환시킨 것으로,That is, Example 3 converts FIG. 7B into SQL, which is a relational DB query.

SELECT p.id p.nameSELECT p.id p.name

FROM Person p, Dept d, Car cFROM Person p, Dept d, Car c

WHERE d.name = 개발부 ANDWHERE d.name = Development AND

인 것이다.It is

등록소(220)는 DB 스키마를 테이블 풀, 관계 풀, 속성 풀, 메소드 풀로 나누어 관리하는 수단과, DB 스키마 정보에 대한 저장, 변경, 삭제 등의 변화에 대해 등록소에 기록된 DB 정보와 일치하는지를 보장해 주는 관리 수단과, 질의 변환기(210)로부터 검색 요청에 대한 결과를 전달해 줄 수 있도록 하는 검색 수단과, 검색된 DB 정보를 다운로드 및 API를 통해 전달하는 수단을 갖는 블록으로서, 도 8에 도시된 테이블 풀(221) 및 관계 풀(223)과, 등록소 API(225)를 갖는다. 여기서, 등록소(220) 관리 방법은 DB 정보를 저장하기 위해 테이블 풀, 관계 풀, 속성 풀, 그리고 메소드 풀을 생성하고, 생성된 DB 스키마에 대한 정보를 등록소(220)에 등록하며, 등록된 DB 스키마에 대해 DB 정보를 변경하며, 변경된 DB 스키마에 대해 DB 정보를 삭제하는 과정으로 관리한다.The registry 220 matches the DB information recorded in the registry for changes such as storing, altering, and deleting DB schema information by means of managing the DB schema into table pools, relationship pools, attribute pools, and method pools. A block having management means for ensuring that the information is provided, search means for delivering the results of the search request from the query converter 210, and means for downloading and retrieving the retrieved DB information through the API, as shown in FIG. It has a table pool 221, a relationship pool 223, and a registry API 225. Here, the registry 220 management method creates a table pool, a relationship pool, an attribute pool, and a method pool to store DB information, registers the generated DB schema information with the registry 220, and registers. Changes DB information about the modified DB schema and manages by deleting DB information about the changed DB schema.

테이블 풀(221)은 도 8a에 도시된 바와 같이, 클래스명과, DB 스키마 명을 포함하는 것으로, 도 7b의 51, 52, 53 과정에 의해 결정된다.The table pool 221 includes a class name and a DB schema name, as shown in FIG. 8A, and is determined by the process 51, 52, and 53 of FIG. 7B.

그리고, 관계 풀(223)은 도 8b에 도시된 바와 같이, 관계 이름과, 관계 프리티켓을 포함하는 것으로, 두 개의 관계 엘리먼트의 속성 name 값은 각각 자동차 소유와 속한 부서인 것이며, 이 값을 도 7b의 과정 55와 과정 54로 변환시킨다.As shown in FIG. 8B, the relationship pool 223 includes a relationship name and a relationship free ticket. The attribute name values of the two relationship elements respectively belong to the department belonging to the automobile owner. Convert to process 55 and process 54 in 7b.

등록소 API(225)는 관계 엘리먼트의 속성 "name" 값에 대응하는 스키마 명과 스키마들간의 프리티켓을 얻어 갈 수 있도록 한다.The registry API 225 allows to get a schema name corresponding to the attribute "name" value of the relation element and the free ticket between the schemas.

질의 수행기(230)는 DB 질의어를 처리하는 블록으로서, 질의 변환기(210)에 의해 생성된 최종적인 DB 질의어에 대응하여, 관계 엘리먼트의 속성 "name" 값에 대응하는 스키마 명과 스키마들간의 프리티켓들을 참조하면서 질의 DB(240-1∼240-n)을 검색하여 해당되는 질의어 검색 결과를 읽어와서 결과 생성기(250)에 제공한다.The query executor 230 is a block for processing a DB query, and corresponding to the final DB query generated by the query translator 210, the schema name corresponding to the attribute "name" value of the relation element and the pre-tickets between the schemas are generated. The query DB 240-1 to 240-n is searched for, and the corresponding query search result is read and provided to the result generator 250.

결과 생성기(250)는 질의 수행기(230)에 의해 얻어진 검색 결과를 질의 클라이언트(100)에 제공하는 블록으로서, 질의 수행기(230)로부터 제공되는 질의어 검색 결과를 질의 클라이언트(100)에 전송하도록 프로토콜(protocol)화하여 결과 변환기(130)에 제공한다.The result generator 250 is a block for providing the query client 100 with the search results obtained by the query executor 230, and transmits a query search result provided from the query executor 230 to the query client 100. protocol) and provide it to the result converter 130.

도 6의 흐름도를 참조하여, 상술한 구성을 바탕으로, 본 발명에 따른 데이터베이스 등록소 검색을 이용한 관계-필터 질의어 처리방법에 대하여 상세하게 설명한다.With reference to the flowchart of FIG. 6, the relationship-filter query processing method using the database registry search according to the present invention will be described in detail.

먼저, 사용자에 의해 동작되는 클라이언트 어플리케이션(110)은 사용자에 의해 관계-필터 질의어(Association and Filter Query Language : AFQL)를 이용하여 작성되는 질의어(예로, 개발부에 속한 사람 중 포르쉐를 소유한 자를 검색하는 질의어)를 요구 질의 생성기(120)내 XML 편집기(121)에 제공한다(단계 601).First, the client application 110 operated by a user searches for a query (eg, a person belonging to the development department who owns Porsche) written by the user using an association-filter query language (AFQL). Query term) is provided to the XML editor 121 in the request query generator 120 (step 601).

요구 질의 생성기(120)내 XML 편집기(121)는 클라이언트 생성기(120)로부터 제공되는 질의어를 전처리 과정을 거쳐 XML 요구 질의어로 편집하여 AFQL 질의 편집기(123)에 제공하면(단계 602), AFQL 질의 편집기(123)는 XML 편집기(121)에 의해 편집된 XML 요구 질의어를 보다 세부적으로 편집하면서 AFQL을 생성하여 질의 변환기(210)내 XML 파서(211)에 제공한다(단계 603).When the XML editor 121 in the request query generator 120 edits the query word provided from the client generator 120 into an XML request query through the preprocessing process (step 602), the AFQL query editor 123 generates an AFQL and edits the XML request query word edited by the XML editor 121 in detail, and provides it to the XML parser 211 in the query converter 210 (step 603).

질의 변환기(210)내 XML 파서(211)는 요구 질의 생성기(120)로부터 제공되는 XML 요구 질의어인 AFQL을 제공받아 파싱하여 요구 질의어 종류를 결정한 후, 결정된 요구 질의어 AFQL을 질의 그래프 생성기(213)에 제공한다(단계 604).The XML parser 211 in the query converter 210 receives and parses an AFQL, which is an XML request query word provided from the request query generator 120, determines a request query type, and then sends the determined request query AFQL to the query graph generator 213. Provide (step 604).

질의 그래프 생성기(213)는 XML 파서(211)에 의해 파싱된 요구 질의어 AFQL을 처리하는 과정에서 관계 엘리먼트의 속성 "name" 값에 대응하는 스키마 명과 스키마들간의 프리티켓을 등록소(220)내 관계 엘리먼트의 속성 "name" 값에 대응하는 스키마 명과 스키마들간의 프리티켓을 얻어 갈 수 있도록 하는 등록소 API(225)를 통해 얻어와 질의 최적화기(215)에 제공한다(단계 605).In the process of processing the request query AFQL parsed by the XML parser 211, the query graph generator 213 stores the schema name corresponding to the attribute "name" value of the relation element and the free ticket between the schemas in the registry 220. The schema name corresponding to the attribute "name" value of the element and the free ticket between the schemas are obtained through the registry API 225 and provided to the query optimizer 215 (step 605).

질의 최적화기(215)는 질의 그래프 생성기(213)로부터 제공되는 프리티켓을 도 7b의 과정 54, 55, 57, 58과 같은 질의 그래프에 있는 프리티켓들의 연산 순서를 최적화로 결정하여 DB 질의어 생성기(217)에 제공한다(단계 606).The query optimizer 215 determines the operation order of the pre-tickets in the query graph such as processes 54, 55, 57, and 58 of FIG. 7B as an optimization based on the free tickets provided by the query graph generator 213. 217) (step 606).

DB 질의어 생성기(217)는 질의 최적화기(215)에 의해 결정된 프리티켓들을 이용하여 최종적인 DB 질의어를 생성하여 질의 수행기(230)에 제공한다(단계 607).The DB query generator 217 generates a final DB query using the free tickets determined by the query optimizer 215 and provides it to the query performer 230 (step 607).

질의 수행기(230)는 질의 변환기(210)에 의해 생성된 최종적인 DB 질의어에 대응하여, 관계 엘리먼트의 속성 "name" 값에 대응하는 스키마 명과 스키마들간의 프리티켓들을 참조하면서 질의 DB(240-1∼240-n)을 검색하여 해당되는 질의어 검색 결과를 읽어와서 결과 생성기(250)에 제공한다(단계 608).The query executor 230 corresponds to the final DB query generated by the query translator 210, querying the schema name corresponding to the attribute "name" value of the relation element and the pre-tickets between the schemas. 240-n) are retrieved and the corresponding query search result is read and provided to the result generator 250 (step 608).

결과 생성기(250)는 질의 수행기(230)로부터 제공되는 질의어 검색 결과를 질의 클라이언트(100)에 전송하도록 프로토콜(protocol)화하여 결과 변환기(130)내 XML 파서(131)에 제공한다(단계 609).The result generator 250 protocolizes the query search result provided from the query performer 230 to be transmitted to the query client 100 and provides the result to the XML parser 131 in the result converter 130 (step 609). .

결과 변환기(130)내 XML 파서(131)는 질의 처리 서버(200)내 결과 생성기(250)로부터 제공되는 XML 검색 결과를 제공받아 파싱하여 검색 결과 종류를 결정한 후, 결정된 검색 결과를 스타일 쉬트 변환기(133)에 제공한다(단계 610).The XML parser 131 in the result converter 130 receives and parses an XML search result provided from the result generator 250 in the query processing server 200 to determine the type of the search result, and then converts the determined search result into a style sheet converter ( 133) (step 610).

스타일 쉬트 변환기(133)는 XML 파서(131)로부터 제공되는 결정된 검색 결과를 스타일 쉬트로 변환하여 객체 변환기(135)에 제공한다(단계 611).The style sheet converter 133 converts the determined search result provided from the XML parser 131 into a style sheet and provides it to the object converter 135 (step 611).

객체 변환기(135)는 스타일 쉬트 변환기(133)에 의해 쉬트로 변환된 검색 결과를 클라이언트 어플리케이션(110)에 전송하도록 객체를 변환하면서 제공한다(단계 612).The object converter 135 converts and provides an object to transmit the search result converted into the sheet by the style sheet converter 133 to the client application 110 (step 612).

최종적으로, 클라이언트 어플리케이션(110)은 결과 변환기(130)로부터 제공되는 질의어 검색 결과를 사용자가 볼 수 있도록 디스플레이(display)하는 것이다(단계 613).Finally, the client application 110 displays the query search results provided by the result converter 130 for the user to view (step 613).

그러므로, 본 발명은 클라이언트 사용자가 서버 DB에 대한 질의 언어를 쉽게 이해하면서 사용하며, 확장 마크업 언어(XML)를 기반으로 웹 서비스(Web service)의 차세대 인터넷 기술을 손쉽게 이용하도록 새로운 질의 언어를 정의하고 이에 대한 질의를 처리함으로써, 서버 DB 시스템에 대한 사전 지식이 없을 경우에도 질의를 생성하고, 또한 질의 처리 시스템을 가지고 있는 어플리케이션 서버는 클라이언트 시스템과의 관련성을 최소화할 수 있으며, 이것은 어플리케이션 서버 내부의 어떤 변화도 클라이언트에 영향을 주지 않는 개방된 구조를 제공할 뿐만 아니라, 현재 새로운 인터넷 표준으로 대두되고 있는 웹서비스와 연동 가능하여 앞으로 새롭게 대두되는 XML 기반의 웹 환경에 적합하다는 효과가 있다.Therefore, the present invention defines a new query language so that the client user can easily understand and use the query language for the server DB, and easily use the next generation Internet technology of the web service based on the extended markup language (XML). And by processing the query, even if there is no prior knowledge of the server DB system, the query is generated, and also the application server having a query processing system can minimize the relationship with the client system, which is the internal Not only does any change provide an open structure that does not affect the client, but it is also compatible with web services that are emerging as a new Internet standard, making it suitable for XML-based web environments.

Claims (15)

질의 클라이언트와 질의 처리 서버간의 질의어 처리장치에 있어서,In the query processing apparatus between the query client and the query processing server, 상기 질의 클라이언트에는 :The query client has: 사용자에 의해 관계-필터 질의어(Association and Filter Query Language : AFQL)를 이용하여 작성되는 질의어를 제공하며, 상기 질의어에 대한 응답으로 질의어 검색 결과를 상기 사용자가 볼 수 있도록 디스플레이(display)하는 클라이언트 어플리케이션과;A client application that provides a query written by a user using an association-filter query language (AFQL), and displays a query search result for the user to view in response to the query; ; 상기 클라이언트 어플리케이션으로부터 제공되는 질의어를 전처리 과정 및 편집하여 상기 질의 처리 서버에 제공하는 요구 질의 생성기와;A request query generator for preprocessing and editing the query word provided from the client application and providing the query word to the query processing server; 상기 질의 처리 서버로부터 제공되는 질의 검색 결과에 대하여 객체를 변화하여 상기 클라이언트 어플리케이션에 제공하는 결과 변환기를 포함하며,A result converter converting an object to a query search result provided from the query processing server and providing the object to the client application; 상기 질의 처리 서버에는 :The query processing server has: 상기 요구 질의 생성기로부터 제공되는 질의어를 파싱하고, 상기 파싱된 질의어로부터 질의 그래프를 생성하며, 상기 생성된 질의 그래프와 동일한 최적화된 질의 그래프로 변환한 후, 상기 질의 그래프를 실제 데이터베이스(DB) 언어로 변환하며, 스키마 명과 스키마들간의 프리티켓을 얻어와 최적화 질의어로 변환하는 질의 변환기와;Parse the query provided from the request query generator, generate a query graph from the parsed query, convert it to the same optimized query graph as the generated query graph, and then convert the query graph into a real database (DB) language. A query converter which converts the schema name and the free tickets between the schemas and converts them into an optimized query language; 상기 질의 변환기로부터 검색 요청에 대한 결과를 전달하며, DB 스키마를 테이블 풀, 관계 풀, 속성 풀, 메소드 풀로 나누어 관리하며, 상기 DB 스키마 정보에대하여 저장, 변경, 삭제 등의 변화에 대하여 기 기록된 DB 정보와 일치하는지를 보장하며, 상기 검색된 DB 정보를 다운로드 및 API를 통해 전달하는 등록소와;Delivers the results of the search request from the query converter, manages the DB schema into table pools, relationship pools, attribute pools, and method pools, and records previously recorded changes such as storage, modification, and deletion for the DB schema information. A registry that ensures that the DB information is consistent and downloads the retrieved DB information through an API; 상기 질의 변환기에 의해 생성된 DB 질의어에 대응하여, 관계 엘리먼트의 속성 "name" 값에 대응하는 스키마 명과 스키마들간의 프리티켓들을 참조하면서 질의 DB을 검색하여 해당되는 질의어 검색 결과를 읽어와서 제공하는 질의 수행기와;In response to the DB query generated by the query converter, a query that searches the query DB while referring to the schema name corresponding to the attribute "name" value of the relation element and the pre-tickets between the schemas, and reads and provides a corresponding query search result. A performer; 상기 질의 수행기에 의해 얻어진 검색 결과를 상기 질의 클라이언트에 전송하도록 프로토콜(protocol)화하여 상기 결과 변환기에 제공하는 결과 생성기를 포함하는 것을 특징으로 하는 DB 등록소 검색을 이용한 관계-필터 질의어 처리장치.And a result generator which protocolizes the search result obtained by the query performer to the query client and provides the result converter to the result converter. 제 1 항에 있어서, 상기 요구 질의 생성기는,The method of claim 1, wherein the request query generator, 상기 클라이언트 생성기로부터 제공되는 질의어를 전처리 과정을 거쳐 XML 요구 질의어로 편집하는 XML 편집기와;An XML editor for editing the query word provided from the client generator into an XML request query word through a preprocessing step; 상기 XML 편집기에 의해 편집된 XML 요구 질의어를 보다 세부적으로 편집하면서 AFQL을 생성하여 상기 질의 처리 서버에 제공하는 AFQL 질의 편집기를 더 포함하는 것을 특징으로 하는 DB 등록소 검색을 이용한 관계-필터 질의어 처리장치.And an AFQL query editor that generates AFQLs and provides them to the query processing server while editing the XML request query words edited by the XML editor in more detail. . 제 1 항에 있어서, 상기 결과 변환기는,The method of claim 1, wherein the result converter is: 상기 결과 생성기로부터 제공되는 XML 검색 결과를 제공받아 파싱하여 검색 결과 종류를 결정한 후, 결정된 검색 결과를 제공하는 XML 파서와;An XML parser for receiving and parsing an XML search result provided from the result generator to determine a type of a search result and then providing the determined search result; 상기 XML 파서로부터 제공되는 결정된 검색 결과를 스타일 쉬트로 변환하는스타일 쉬트 변환기와;A style sheet converter for converting the determined search result provided from the XML parser into a style sheet; 상기 스타일 쉬트 변환기에 의해 쉬트로 변환된 검색 결과를 상기 클라이언트 어플리케이션에 전송하도록 객체를 변환하면서 제공하는 객체 변환기를 더 포함하는 것을 특징으로 하는 DB 등록소 검색을 이용한 관계-필터 질의어 처리장치.And an object converter for converting and providing an object to transmit the search result converted into the sheet by the style sheet converter to the client application. 제 1 항에 있어서, 상기 질의 변환기는,The method of claim 1, wherein the query converter, 상기 요구 질의 생성기로부터 제공되는 XML 요구 질의어인 AFQL을 제공받아 파싱하여 요구 질의어 종류를 결정한 후, 상기 결정된 요구 질의어 AFQL을 제공하는 XML 파서와;An XML parser for receiving and parsing AFQL, which is an XML request query word provided from the request query generator, determining a request query type, and providing the determined request query AFQL; 상기 XML 파서에 의해 파싱된 요구 질의어 AFQL을 처리하는 과정에서 관계 엘리먼트의 속성 "name" 값에 대응하는 스키마 명과 스키마들간의 프리티켓을 상기 등록소에서 얻어와 제공하는 질의 그래프 생성기와;A query graph generator that obtains and provides a schema name corresponding to an attribute "name" value of a relation element and free tickets between schemas in the registry during processing of the request query AFQL parsed by the XML parser; 상기 질의 그래프 생성기로부터 제공되는 프리티켓을 질의 그래프에 있는 프리티켓들의 연산 순서에 맞게 최적화로 결정하여 제공하는 질의 최적화기와;A query optimizer configured to optimize the free tickets provided from the query graph generator according to an operation order of the free tickets in the query graph; 상기 질의 최적화기에 의해 결정된 프리티켓들을 이용하여 최종적인 DB 질의어를 생성하여 상기 질의 수행기에 제공하는 DB 질의어 생성기를 더 포함하는 것을 특징으로 하는 DB 등록소 검색을 이용한 관계-필터 질의어 처리장치.And a DB query generator for generating a final DB query by using the pre-tickets determined by the query optimizer and providing the query query to the query performer. 제 4 항에 있어서, 상기 DB 질의어는,The method of claim 4, wherein the DB query, 상기 질의 처리 서버에서 사용되는 데이터베이스 관리 시스템(DBMS) 종류에따라 달라지는데, 관계형 DBMS에서는 구조화 조회 언어(SQL)를 질의어로 사용하고 객체 지향형 데이터베이스 관리 시스템(OODBMS)에서는 객체 조회 언어(OQL)를 사용하며 경우에 따라서 DBMS 자체적인 질의어를 가지고 있는 것을 특징으로 하는 DB 등록소 검색을 이용한 관계-필터 질의어 처리장치.It depends on the type of database management system (DBMS) used in the query processing server. In relational DBMS, structured query language (SQL) is used as query language, and object-oriented database management system (OODBMS) uses object query language (OQL). A relation-filter query processing apparatus using a DB registry search, wherein the DBMS has its own query in some cases. 제 4 항에 있어서, 상기 DB 질의어 생성기는,The method of claim 4, wherein the DB query generator, 상기 DB 질의어가 어떠한 형태의 질의어로 변환 할 수 있는 기능을 제공하는 반면에, 상기 변환 기능은 상기 질의 처리 서버내의 다수의 질의 DB에 대해서 미리 구현되어 있어야 하는 것을 특징으로 하는 DB 등록소 검색을 이용한 관계-필터 질의어 처리장치.Whereas the DB query provides a function that can be converted into any form of query, the conversion function is to be implemented in advance for a plurality of query DB in the query processing server using a DB registry search Relational-filter query processing unit. 제 1 항에 있어서, 상기 등록소는,The method of claim 1, wherein the registry, 상기 DB 정보를 저장하기 위해 테이블 풀, 관계 풀, 속성 풀, 그리고 메소드 풀을 생성하고, 상기 생성된 DB 스키마에 대한 정보를 등록소(220)에 등록하며, 상기 등록된 DB 스키마에 대해 DB 정보를 변경하며, 상기 변경된 DB 스키마에 대해 DB 정보를 삭제하는 과정으로 관리하는 것을 특징으로 하는 DB 등록소 검색을 이용한 관계-필터 질의어 처리장치.Create a table pool, relationship pool, attribute pool, and method pool to store the DB information, register the information about the generated DB schema to the registry 220, and the DB information for the registered DB schema And a DB-search query processing apparatus, characterized in that for managing in the process of deleting the DB information for the changed DB schema. 제 7 항에 있어서, 상기 등록소는,The method of claim 7, wherein the registry is, 클래스명과, DB 스키마 명을 포함하는 테이블 풀과; 관계 이름 및 관계 프리티켓을 포함하는 관계 풀과; 관계 엘리먼트의 속성 "name" 값에 대응하는 스키마 명과 스키마들간의 프리티켓을 얻어 갈 수 있도록 하는 등록소 API를 더 포함하는 것을 특징으로 하는 DB 등록소 검색을 이용한 관계-필터 질의어 처리장치.A table pool containing class names and DB schema names; A relationship pool containing a relationship name and a relationship free ticket; And a registry API to obtain a schema name corresponding to the attribute "name" value of the relationship element and a free ticket between the schemas. 클라이언트 어플리케이션과 요구 질의 생성기와 결과 변환기를 구비하는 질의 클라이언트와, 질의 변환기와 등록소와 질의 수행기와 질의 DB와 결과 생성기를 구비하는 질의 처리 서버간의 질의어 처리방법에 있어서,In the query processing method comprising a query client having a client application, a request query generator and a result converter, and a query processing server including a query converter, a registry, a query executor, a query DB, and a result generator, 상기 클라이언트 어플리케이션에서 사용자에 의해 관계-필터 질의어(Association and Filter Query Language : AFQL)를 이용하여 작성되는 질의어를 상기 요구 질의 생성기에 제공하는 단계;Providing, to the request query generator, a query written in the client application using an association and filter query language (AFQL) by a user; 상기 요구 질의 생성기에서 상기 클라이언트 어플리케이션으로부터 제공되는 질의어를 전처리 과정 및 편집하여 상기 질의 변환기에 제공하는 단계;Preprocessing and editing a query word provided from the client application in the request query generator and providing the query word to the query converter; 상기 질의 변환기에서 상기 요구 질의 생성기로부터 제공되는 질의어를 파싱하고, 상기 파싱된 질의어로부터 질의 그래프를 생성하며, 상기 생성된 질의 그래프와 동일한 최적화된 질의 그래프로 변환한 후, 상기 질의 그래프를 실제 데이터베이스(DB) 언어로 변환하며, 상기 등록소에서 스키마 명과 스키마들간의 프리티켓을 얻어와 최적화 질의어로 변환하여 상기 질의 수행기에 제공하는 단계;The query converter parses the query word provided from the request query generator, generates a query graph from the parsed query word, converts the query graph into the same optimized query graph as the generated query graph, and then converts the query graph into a real database ( DB) language, and obtaining a free ticket between the schema name and the schemas in the registry, converting it into an optimized query, and providing the query to the query executor; 상기 질의 수행기에서 상기 질의 변환기에 의해 생성된 DB 질의어에 대응하여, 관계 엘리먼트의 속성 "name" 값에 대응하는 스키마 명과 스키마들간의 프리티켓들을 참조하면서 상기 질의 DB을 검색하여 해당되는 질의어 검색 결과를 읽어와서 결과 생성기에 제공하는 단계;In response to the DB query generated by the query converter in the query executor, the query DB is searched while referring to the schema name corresponding to the attribute "name" value of the relation element and the pre-tickets between schemas to obtain a corresponding query search result. Reading and providing the result generator; 상기 결과 생성기에서 상기 질의 수행기에 의해 얻어진 검색 결과를 프로토콜(protocol)화하여 상기 결과 변환기에 제공하는 단계;Protocolizing the search results obtained by the query performer in the result generator and providing them to the result converter; 상기 결과 변환기에서 상기 결과 생성기로부터 제공되는 질의 검색 결과에 대하여 객체를 변화하여 상기 사용자가 질의어 검색 결과를 디스플레이(display)하도록 상기 클라이언트 어플리케이션에 제공하는 단계를 포함하는 것을 특징으로 하는 DB 등록소 검색을 이용한 관계-필터 질의어 처리방법.And in the result converter, providing a change to an object with respect to a query search result provided by the result generator and providing the client application with the user to display the query search result. Relationship-Filter Query Processing. 제 9 항에 있어서,The method of claim 9, 상기 요구 질의 생성기내 XML 편집기에서 상기 클라이언트 생성기로부터 제공되는 질의어를 전처리 과정을 거쳐 XML 요구 질의어로 편집하는 단계;Editing a query provided from the client generator in an XML editor in the request query generator as an XML request query through a preprocessing step; 상기 요구 질의 생성기내 AFQL 질의 편집기에서 상기 XML 편집기에 의해 편집된 XML 요구 질의어를 보다 세부적으로 편집하면서 AFQL을 생성하여 상기 질의 처리 서버에 제공하는 단계를 더 포함하는 것을 특징으로 하는 DB 등록소 검색을 이용한 관계-필터 질의어 처리방법.And generating an AFQL to the query processing server while further editing the XML request query word edited by the XML editor in the AFQL query editor in the request query generator. Relationship-Filter Query Processing. 제 9 항에 있어서,The method of claim 9, 상기 결과 변환기내 XML 파서에서 상기 결과 생성기로부터 제공되는 XML 검색 결과를 제공받아 파싱하여 검색 결과 종류를 결정한 후, 결정된 검색 결과를 제공하는 단계;Receiving and parsing an XML search result provided from the result generator in an XML parser in the result converter to determine a type of a search result, and then providing the determined search result; 상기 결과 변환기내 스타일 쉬트 변환기에서 상기 XML 파서로부터 제공되는 결정된 검색 결과를 스타일 쉬트로 변환하는 단계;Converting the determined search results provided from the XML parser into a style sheet in a style sheet converter in the result converter; 상기 결과 변환기내 객체 변환기에서 상기 스타일 쉬트 변환기에 의해 쉬트로 변환된 검색 결과를 상기 클라이언트 어플리케이션에 전송하도록 객체를 변환하는 단계를 더 포함하는 것을 특징으로 하는 DB 등록소 검색을 이용한 관계-필터 질의어 처리방법.And converting the object to transmit the search result converted by the style sheet converter to the client application in the object converter in the result converter. Way. 제 9 항에 있어서,The method of claim 9, 상기 질의 변환기내 XML 파서에서 상기 요구 질의 생성기로부터 제공되는 XML 요구 질의어인 AFQL을 제공받아 파싱하여 요구 질의어 종류를 결정한 후, 상기 결정된 요구 질의어 AFQL을 제공하는 단계;Receiving and parsing AFQL, which is an XML request query word provided from the request query generator, by the XML parser in the query translator to determine a request query type, and then providing the determined request query AFQL; 상기 질의 변환기내 질의 그래프 생성기에서 상기 XML 파서에 의해 파싱된 요구 질의어 AFQL을 처리하는 과정에서 관계 엘리먼트의 속성 "name" 값에 대응하는 스키마 명과 스키마들간의 프리티켓을 상기 등록소에서 얻어와 제공하는 단계;Obtaining and providing a schema name corresponding to the attribute "name" value of a relation element and a free ticket between schemas in the registry during processing of the request query AFQL parsed by the XML parser in the query graph generator in the query converter. step; 상기 질의 변환기내 질의 최적화기에서 상기 질의 그래프 생성기로부터 제공되는 프리티켓을 질의 그래프에 있는 프리티켓들의 연산 순서에 맞게 최적화로 결정하여 제공하는 단계;Providing, by the query optimizer in the query converter, a free ticket provided by the query graph generator to be optimized according to an operation order of the free tickets in the query graph; 상기 질의 변환기내 DB 질의어 생성기에서 상기 질의 최적화기에 의해 결정된 프리티켓들을 이용하여 최종적인 DB 질의어를 생성하여 상기 질의 수행기에 제공하는 단계를 더 포함하는 것을 특징으로 하는 DB 등록소 검색을 이용한 관계-필터 질의어 처리방법.Generating a final DB query word using the free tickets determined by the query optimizer in the DB converter in the query converter and providing the final query word to the query performer; Query processing method. 제 12 항에 있어서, 상기 DB 질의어는,The method of claim 12, wherein the DB query, 상기 질의 처리 서버에서 사용되는 데이터베이스 관리 시스템(DBMS) 종류에 따라 달라지는데, 관계형 DBMS에서는 구조화 조회 언어(SQL)를 질의어로 사용하고 객체 지향형 데이터베이스 관리 시스템(OODBMS)에서는 객체 조회 언어(OQL)를 사용하며 경우에 따라서 DBMS 자체적인 질의어를 가지고 있는 것을 특징으로 하는 DB 등록소 검색을 이용한 관계-필터 질의어 처리방법.It depends on the type of database management system (DBMS) used in the query processing server. In relational DBMS, structured query language (SQL) is used as query language, and object-oriented database management system (OODBMS) uses object query language (OQL). A relation-filter query processing method using a DB registry search, wherein the DBMS has its own query in some cases. 제 12 항에 있어서, 상기 DB 질의어 생성기는,The method of claim 12, wherein the DB query generator, 상기 DB 질의어가 어떠한 형태의 질의어로 변환 할 수 있는 기능을 제공하는 반면에, 상기 변환 기능은 상기 질의 처리 서버내의 다수의 질의 DB에 대해서 미리 구현되어 있어야 하는 것을 특징으로 하는 DB 등록소 검색을 이용한 관계-필터 질의어 처리방법.Whereas the DB query provides a function that can be converted into any form of query, the conversion function is to be implemented in advance for a plurality of query DB in the query processing server using a DB registry search Relationship-filter query processing. 제 9 항에 있어서, 상기 등록소는,10. The method of claim 9, wherein the registry is 상기 DB 정보를 저장하기 위해 테이블 풀, 관계 풀, 속성 풀, 그리고 메소드 풀을 생성하고, 상기 생성된 DB 스키마에 대한 정보를 등록소(220)에 등록하며, 상기 등록된 DB 스키마에 대해 DB 정보를 변경하며, 상기 변경된 DB 스키마에 대해 DB 정보를 삭제하는 과정으로 관리하는 것을 특징으로 하는 DB 등록소 검색을 이용한 관계-필터 질의어 처리방법.Create a table pool, relationship pool, attribute pool, and method pool to store the DB information, register the information about the generated DB schema to the registry 220, and the DB information for the registered DB schema And managing the process by deleting the DB information with respect to the changed DB schema.
KR10-2001-0084436A 2001-12-24 2001-12-24 Apparatus and method for processing association-filter query language by using database registry reference KR100456621B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0084436A KR100456621B1 (en) 2001-12-24 2001-12-24 Apparatus and method for processing association-filter query language by using database registry reference

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0084436A KR100456621B1 (en) 2001-12-24 2001-12-24 Apparatus and method for processing association-filter query language by using database registry reference

Publications (2)

Publication Number Publication Date
KR20030054295A KR20030054295A (en) 2003-07-02
KR100456621B1 true KR100456621B1 (en) 2004-11-10

Family

ID=32212932

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0084436A KR100456621B1 (en) 2001-12-24 2001-12-24 Apparatus and method for processing association-filter query language by using database registry reference

Country Status (1)

Country Link
KR (1) KR100456621B1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100487738B1 (en) * 2001-12-26 2005-05-06 한국전자통신연구원 Apparatus and method XML document retrieval supporting XML query language tightly-coupled with database query language
KR100545546B1 (en) * 2003-04-01 2006-01-25 온오프코리아 주식회사 Method and device for providing Internet-based questions
KR100921158B1 (en) * 2007-12-21 2009-10-12 엔에이치엔(주) Method and System for Managing Database
US8898145B2 (en) * 2011-06-15 2014-11-25 Microsoft Corporation Query optimization techniques for business intelligence systems
CN108804432A (en) * 2017-04-26 2018-11-13 慧科讯业有限公司 It is a kind of based on network media data Stream Discovery and to track the mthods, systems and devices of much-talked-about topic

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5454106A (en) * 1993-05-17 1995-09-26 International Business Machines Corporation Database retrieval system using natural language for presenting understood components of an ambiguous query on a user interface
KR19990047859A (en) * 1997-12-05 1999-07-05 정선종 Natural Language Conversation System for Book Libraries Database Search
KR19990055219A (en) * 1997-12-27 1999-07-15 윤덕용 HTML (TM) document storage and retrieval system
EP1072984A2 (en) * 1999-07-28 2001-01-31 International Business Machines Corporation Method and system for providing native language query service
KR20020028633A (en) * 2000-10-11 2002-04-17 맹성현 System and method for providing virtual document
KR20020045328A (en) * 2000-12-08 2002-06-19 조양호 Search method of distributed/heterogeneous gis databases using metadata interchange standard

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5454106A (en) * 1993-05-17 1995-09-26 International Business Machines Corporation Database retrieval system using natural language for presenting understood components of an ambiguous query on a user interface
KR19990047859A (en) * 1997-12-05 1999-07-05 정선종 Natural Language Conversation System for Book Libraries Database Search
KR19990055219A (en) * 1997-12-27 1999-07-15 윤덕용 HTML (TM) document storage and retrieval system
EP1072984A2 (en) * 1999-07-28 2001-01-31 International Business Machines Corporation Method and system for providing native language query service
KR20020028633A (en) * 2000-10-11 2002-04-17 맹성현 System and method for providing virtual document
KR20020045328A (en) * 2000-12-08 2002-06-19 조양호 Search method of distributed/heterogeneous gis databases using metadata interchange standard

Also Published As

Publication number Publication date
KR20030054295A (en) 2003-07-02

Similar Documents

Publication Publication Date Title
US5734887A (en) Method and apparatus for logical data access to a physical relational database
CN100468396C (en) Mapping architecture for arbitrary data models
US6732109B2 (en) Method and system for transferring information between a user interface and a database over a global information network
US6901403B1 (en) XML presentation of general-purpose data sources
US6853997B2 (en) System and method for sharing, mapping, transforming data between relational and hierarchical databases
KR100659889B1 (en) A method, computer program and computer for accessing data in an environment of multiple data repositories
US7620665B1 (en) Method and system for a generic metadata-based mechanism to migrate relational data between databases
US6799184B2 (en) Relational database system providing XML query support
US6636845B2 (en) Generating one or more XML documents from a single SQL query
US8001151B2 (en) Querying markup language data sources using a relational query processor
CN1761962B (en) Real-time aggregation of unstructured data into structured data for SQL processing by a relational database engine
CN1705945B (en) Method and system for providing query attributes
US7089566B1 (en) Method for accessing object linking-embedding database data via JAVA database connectivity
KR101331532B1 (en) Dynamic method for generating xml documents from a database
US20060100989A1 (en) Database System Providing Methodology for Execution of Functions in XML Queries
US20030105745A1 (en) Text-file based relational database
Rys Bringing the Internet to your database: Using SQL Server 2000 and XML to build loosely-coupled systems
GB2368680A (en) Mapping an XML logical structure to a business model to aid translation, querying and API programming
US8458200B2 (en) Processing query conditions having filtered fields within a data abstraction environment
US9031924B2 (en) Query conditions having filtered fields within a data abstraction environment
KR100456621B1 (en) Apparatus and method for processing association-filter query language by using database registry reference
US7089232B2 (en) Method of synchronizing distributed but interconnected data repositories
KR100625422B1 (en) Method for integrating schema using multidatabase query language
Pal et al. XML support in Microsoft SQL Server 2005
Di Ruscio et al. A data-modelling approach to web application synthesis

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: 20081104

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee