KR100691261B1 - 확장성 생성 언어 변경 처리 시스템 및 그 방법 - Google Patents

확장성 생성 언어 변경 처리 시스템 및 그 방법 Download PDF

Info

Publication number
KR100691261B1
KR100691261B1 KR1020060033726A KR20060033726A KR100691261B1 KR 100691261 B1 KR100691261 B1 KR 100691261B1 KR 1020060033726 A KR1020060033726 A KR 1020060033726A KR 20060033726 A KR20060033726 A KR 20060033726A KR 100691261 B1 KR100691261 B1 KR 100691261B1
Authority
KR
South Korea
Prior art keywords
change
xml
update
tree
sentence
Prior art date
Application number
KR1020060033726A
Other languages
English (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 한국전자통신연구원
Application granted granted Critical
Publication of KR100691261B1 publication Critical patent/KR100691261B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/221Parsing markup language streams

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (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

1. 청구범위에 기재된 발명이 속한 기술분야
본 발명은 확장성 생성 언어 변경 처리 시스템 및 그 방법에 관한 것임.
2. 발명이 해결하려고 하는 기술적 과제
본 발명은 관계형 데이터베이스 기반의 엑스엠엘-데이터베이스 관리 시스템에 의해 구조화 질의어/엑스엠엘(SQL/XML) 기본 맵핑 규칙에 따라 정의되는 엑스엠엘 스키마에 대하여 표준 엑스엠엘 변경 언어인 엑스쿼리 업데이트(XQuery Update)를 지원함으로써, 표준 엑스엠엘 변경 언어를 사용하여 관계형 데이터베이스에 의해 관리되는 엑스엠엘 데이터의 변경 연산(삽입, 갱신, 삭제 등)을 수행할 수 있도록 하기 위한, 확장성 생성 언어 변경 처리 시스템 및 그 방법을 제공하는데 그 목적이 있음.
3. 발명의 해결방법의 요지
본 발명은, 확장성 생성 언어 변경 처리 시스템에 있어서, 외부로부터 입력받은 엑스엠엘 변경 문장을 구문 분석하여 엑스쿼리 업데이트 구문 분석 트리를 생성하기 위한 파싱 수단; 상기 엑스쿼리 업데이트 구문 분석 트리를 순회하며 상기 입력받은 엑스엠엘 변경 문장의 정당성을 검사하기 위한 검증 수단; 상기 검증 수단에 의해 검증됨에 따라 상기 엑스쿼리 업데이트 구문 분석 트리를 순회하며 엑스쿼리 업데이트 변경 트리로 변환하기 위한 변환 수단; 및 상기 엑스쿼리 업데이트 변경 트리를 순회하며 관계형 데이터베이스 변경 문장을 생성하여 외부에 연결된 관계형 데이터베이스에 실행하기 위한 실행 수단을 포함함.
4. 발명의 중요한 용도
본 발명은 엑스엠엘-데이터베이스 관리 시스템 등에 이용됨.
엑스엠엘, 표준 엑스엠엘 변경 언어, 엑스쿼리 업데이트, 엑스쿼리 업데이트 변경 트리, 구조화 질의어/엑스엠엘(SQL/XML), 엑스엠엘-데이터베이스 관리 시스템, 관계형 데이터베이스, 엑스엠엘 변경 처리 시스템

Description

확장성 생성 언어 변경 처리 시스템 및 그 방법{System and method for supporting XQuery Update language}
도 1 은 본 발명에 따른 확장성 생성 언어 변경 처리 시스템 및 그를 이용한 관계형 데이터베이스 기반 엑스엠엘-데이터베이스 관리 시스템의 일실시예 전체 구성도,
도 2 는 본 발명에 따른 확장성 생성 언어 변경 처리 시스템에서의 엑스엠엘 변경 처리 방법에 대한 일실시예 흐름도,
도 3 은 본 발명에 따른 확장성 생성 언어 시스템에서 엑스쿼리 업데이트 구문 분석 트리를 이용한 엑스쿼리 업데이트 변경 트리 생성 과정에 대한 일실시예 흐름도,
도 4 는 엑스엠엘 데이터 저장을 위한 관계형 데이터베이스 스키마에 대한 일실시예 설명도,
도 5 는 상기 도 4의 관계형 데이터베이스 스키마에 구조화 질의어/엑스엠엘 기본 맵핑 규칙이 적용되어 자동 생성된 엑스엠엘 스키마에 대한 일실시예 설명도,
도 6 은 상기 도 5에서 도시된 엑스엠엘 스키마의 전문에 대한 일실시예 설명도,
도 7 는 상기 도 4의 관계형 데이터베이스 스키마와 상기 도 5의 엑스엠엘 스키마의 맵핑 규칙을 나타낸 메모리 내 자료 구조에 대한 일실시예 설명도,
도 8 은 본 발명에 따른 확장형 생성언어 변경 처리 시스템에서 엑스쿼리 업데이트 변경 트리를 구성하는 노드의 상속 관계 다이어그램에 대한 일실시예 설명도,
도 9 는 상기 도 8의 엑스쿼리 업데이트 변경 트리에서 단순 변경 연산인 삽입, 갱신, 삭제를 지원하기 위한 노드 자료구조에 대한 일실시예 설명도,
도 10 은 상기 도 8의 엑스쿼리 업데이트 변경 트리에서 복합 변경 연산인 FLW 갱신 연산을 지원하기 위한 노드 자료구조에 대한 일실시예 설명도,
도 11 은 상기 도 8의 엑스쿼리 업데이트 변경 트리에서 복합 변경 연산인 조건부 갱신 연산을 지원하기 위한 노드 자료구조를 나타낸 일실시예 설명도,
도 12 는 엑스엠엘 변경 문장 및 그에 대응되도록 본 발명에 따라 변경 처리된 관계형 데이터베이스 변경 문장에 대한 일실시예 설명도,
도 13 은 상기 도 12의 엑스엠엘 변경 문장을 관계형 데이터베이스 변경 문장으로 변환하기 위한 엑스쿼리 업데이트 변경 트리의 일실시예 설명도이다.
* 도면의 주요 부분에 대한 부호의 설명 *
100 : 엑스엠엘- 데이터베이스 관리 시스템
110 : 스키마 관리기
120 : 엑스엠엘 변경 처리 시스템 123 : 엑스쿼리 업데이트 파싱 모듈
124 : 엑스쿼리 업데이트 검증 모듈 125 : 엑스쿼리 업데이트 변환 모듈
126 : 엑스쿼리 업데이트 실행 모듈 130 : 관계형 데이터베이스
본 발명은 확장성 생성 언어 변경 처리 시스템 및 그 방법에 관한 것으로, 더욱 상세하게는 관계형 데이터베이스 기반의 엑스엠엘-데이터베이스 관리 시스템에 의해 구조화 질의어/엑스엠엘(SQL/XML) 기본 맵핑 규칙에 따라 정의되는 엑스엠엘 스키마에 대하여 표준 엑스엠엘 변경 언어인 엑스쿼리 업데이트(XQuery Update)를 지원함으로써, 표준 엑스엠엘 변경 언어를 사용하여 관계형 데이터베이스에 의해 관리되는 엑스엠엘 데이터의 변경 연산(삽입, 갱신, 삭제 등)을 수행할 수 있도록 하기 위한, 확장성 생성 언어 변경 처리 시스템 및 그 방법에 관한 것이다.
인터넷이 대중화됨에 따라 엑스엠엘 데이터의 생성 및 유통량이 급격히 증가하여 대량의 엑스엠엘 데이터에 대한 관리의 필요성이 증대되고 있다. 즉, 관리해야할 엑스엠엘 데이터의 양이 증가할수록 데이터의 빠른 검색, 사용자 간의 공유, 백업, 고장 복구 등과 같은 기존의 관계형 데이터베이스에서 제공하는 관리 기능이 더욱 요구된다고 할 수 있다. 그에 따라, 관계형 데이터베이스를 기반으로 하는 엑스엠엘-데이터베이스 관리 시스템에 대한 연구가 현재 활발히 수행되고 있는 상황이다.
또한, 유비쿼터스 환경에서는 수많은 컴퓨팅 개체(사람, 사물 등)에 의해 생성된 대량의 데이터가 엑스엠엘 형식으로 포장된 후 교환 및 전달된다. 그중에서, 일부의 데이터는 전달되자마자 처리되고 버려지나 상당량의 데이터는 영구 또는 일정 기간 동안 저장되고 관리될 필요가 있는데, 이를 위해 유비쿼터스 환경에서 엑스엠엘-데이터베이스 관리 시스템의 필요성이 제기되고 있는 상황이다.
한편, 인터넷 관련 표준화 기구인 W3C(World Wide Web Consortium)에서 1998년 데이터 표현 및 전송을 위한 표준으로서 엑스엠엘을 발표한 후로 엑스엠엘에 관련된 많은 표준들이 발표되고 있다. 그러나 엑스엠엘-데이터베이스 관리 시스템에 필수 요소인 엑스엠엘 질의 언어, 엑스엠엘 변경 언어, 엑스엠엘-데이터베이스 관리 시스템에 대한 프로그래밍 언어 인터페이스의 표준은 근래까지 부재한 상황이었다. 그리하여, 종래의 엑스엠엘-데이터베이스 관리 시스템의 경우에는 엑스엠엘 데이터에 대한 질의 언어, 변경 언어, 프로그래밍 언어 인터페이스에 대하여 각 사업자별로 고유의 언어 및 인터페이스를 설계하여 제공하고 있는 실정이다.
그러던 중, 최근 W3C에서는 엑스엠엘 질의 언어의 표준인 엑스쿼리, 엑스엠엘 변경 언어의 표준인 엑스쿼리 업데이트(XQuery Update)를 각각 제안하여 표준화 작업을 진행 중이다. 그리고 자바 언어와 관련된 표준을 제정하는 대표적인 기구인 JCP(Java Community Process)에서는 엑스엠엘-데이터베이스 관리 시스템에 대한 자바 언어 프로그래밍 언어 인터페이스로서 XQJ(XQuery API for Java)를 제안하여 표준화 작업을 진행하고 있다.
상기와 같이, 종래의 엑스엠엘-데이터베이스 관리 시스템에서는 관련 표준의 부재로 말미암아 사업자별로 서로 다른 엑스엠엘 질의 언어, 엑스엠엘 변경 언어, 및 프로그래밍 언어 인터페이스 등을 사용해야 했다. 그리고 응용 프로그램 개발자 역시 각 엑스엠엘-데이터베이스 관리 시스템에서 지원하는 엑스엠엘 질의 언어, 엑스엠엘 변경 언어, 프로그래밍 언어 인터페이스를 사용해야 했다. 그에 따라, 종래에는 각 사업자별로 지원하는 엑스엠엘 질의 언어, 엑스엠엘 변경 언어, 프로그래밍 언어 인터페이스가 서로 상이하여 엑스엠엘-데이터베이스 관리 시스템의 선정 및 응용 프로그램 개발에 많은 비용이 소요되는 문제점이 있었다.
여기서, 엑스엠엘(확장성 생성 언어) 형태의 데이터를 변경(Updating)하는 것과 관련하여 그의 선행 기술을 설명하면 다음과 같다.
제1 선행기술로서 미합중국 특허 "Method and Apparatus For Updating XML Data(US 2002/0045 951 A1, 2002.4.18)"에 대하여 살펴보면, 이는 클라이언트에 변경 폼을 보여주고 변경 대상 엑스엠엘 데이터의 엑스패스 경로, 변경 대상 엑스엠엘 데이터에 대한 삽입, 삭제, 갱신 여부를 나타내는 메소드, 추가 또는 갱신되는 엑스엠엘 데이터의 값 정보를 입력받아 서버의 메모리 내에 돔(DOM) 트리 형태로 관리되는 엑스엠엘 데이터를 변경하기 위한 기술로서, 클라이언트에 보여주는 변경 폼(경로, 메소드, 값의 입력)으로부터 입력되는 데이터를 처리하여 서버에 대한 변경 연산을 생성하고 서버에 씨지아이(CGI)를 통해 전달함으로써 서버에 저장된 엑스엠엘 데이터를 변경하는 방법 및 시스템을 제공하기 위한 기술이다.
그런데, 상기 선행기술은 서버의 메모리 내에 돔 트리 형태로 관리되는 엑스엠엘 데이터를 변경할 수 있도록 하나, 대용량의 엑스엠엘 데이터가 저장되는 관계 형 데이터베이스에 대해서는 데이터 관리 방안을 제시하지 못하는 문제점이 있었다.
또한, 제2 선행기술로서 미합중국 특허 "Method and Apparatus For Updating XML Views Of Relational Data(US 2005/0165866 A1, 2005.7.28)"에 대하여 살펴보면, 이는 기존 기반 관계형 데이터베이스 스키마가 존재하는 상태에서 그 위에 뷰 정의 언어를 통해 정의된 관계형 데이터에 대한 엑스엠엘 뷰를 변경하는 방법 및 시스템에 관한 기술로서, 관계형 데이터베이스의 엑스엠엘 뷰에 대한 변경 연산을 기반 관계형 데이터베이스 자체에 수행하기 위한 관계형 데이터베이스 변경 연산으로 변환하여 처리하는 기술이다.
그런데, 상기 선행기술의 경우 관계형 데이터베이스로부터 뷰 정의 언어를 사용하여 정의한 복잡한 엑스엠엘 뷰에 대하여 사용자가 변경 문장을 기술해야 하므로, 변경 문장이 복잡해지고 그에 따라 변경 처리 방법이 복잡해지는 문제점이 있었다.
상기에서 살펴본 바와 같이, 종래에는 관계형 데이터베이스 내에 저장된 엑스엠엘 데이터를 변경 처리하기 위한 기술적 표준이 지원되지 않으므로 서로 상이한 변경 언어 및 인터페이스의 사용에 따른 불필요한 비용이 발생하는 문제점이 있었다. 또한, 엑스엠엘 데이터를 변경 처리할 수 있도록 하더라도 관계형 데이터베이스에 저장된 엑스엠엘 데이터에 대해서는 변경 처리를 지원할 수 없거나 혹은 그 변경 연산이 복잡한 문제점이 있었다.
본 발명은 상기 문제점을 해결하기 위하여 제안된 것으로, 관계형 데이터베이스 기반의 엑스엠엘-데이터베이스 관리 시스템에 의해 구조화 질의어/엑스엠엘(SQL/XML) 기본 맵핑 규칙에 따라 정의되는 엑스엠엘 스키마에 대하여 표준 엑스엠엘 변경 언어인 엑스쿼리 업데이트(XQuery Update)를 지원함으로써, 표준 엑스엠엘 변경 언어를 사용하여 관계형 데이터베이스에 의해 관리되는 엑스엠엘 데이터의 변경 연산(삽입, 갱신, 삭제 등)을 수행할 수 있도록 하기 위한, 확장성 생성 언어 변경 처리 시스템 및 그 방법을 제공하는데 그 목적이 있다.
본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
상기 목적을 달성하기 위한 본 발명의 장치는, 확장성 생성 언어 변경 처리 시스템에 있어서, 외부로부터 입력받은 엑스엠엘 변경 문장을 구문 분석하여 엑스쿼리 업데이트 구문 분석 트리를 생성하기 위한 파싱 수단; 상기 엑스쿼리 업데이트 구문 분석 트리를 순회하며 상기 입력받은 엑스엠엘 변경 문장의 정당성을 검사하기 위한 검증 수단; 상기 검증 수단에 의해 검증됨에 따라 상기 엑스쿼리 업데이트 구문 분석 트리를 순회하며 엑스쿼리 업데이트 변경 트리로 변환하기 위한 변환 수단; 및 상기 엑스쿼리 업데이트 변경 트리를 순회하며 관계형 데이터베이스 변경 문장을 생성하여 외부에 연결된 관계형 데이터베이스에 실행하기 위한 실행 수단을 포함한다.
한편, 상기 목적을 달성하기 위한 본 발명의 방법은, 확장성 생성 언어 변경 처리 시스템에서의 엑스엠엘 변경 처리 방법에 있어서, 외부로부터 엑스엠엘 변경 문장을 입력받는 입력 단계; 상기 입력받은 엑스엠엘 변경 문장을 구문 분석하여 엑스쿼리 업데이트 구문 분석 트리를 생성하는 구문 분석 단계; 상기 생성한 엑스쿼리 업데이트 구문 분석 트리를 순회하며 상기 입력받은 엑스엠엘 변경 문장의 정당성을 검증하는 검증 단계; 상기 검증된 엑스쿼리 업데이트 구문 분석 트리를 순회하며 엑스쿼리 업데이트 변경 트리로 변환하는 변환 단계; 상기 엑스쿼리 업데이트 변경 트리를 순회하며 관계형 데이터베이스 변경 문장을 생성하는 문장 변경 단계; 및 상기 생성한 관계형 데이터베이스 변경 문장을 실행하는 실행 단계를 포함한다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명하기로 한다.
본 발명에서 지원하는 표준 엑스엠엘 변경 언어인 엑스쿼리 업데이트는 W3C에서 표준화 작업중인 엑스쿼리 업데이트 1.0에 변경 기능을 확장한 언어로서, 2002년 10월 15일 현재 W3C에서 작업 초안(Working Draft) 상태이다. 엑스쿼리 업데이트는 단순 변경 기능과 복합 변경 기능을 모두 지원할 수 있고, 엑스쿼리 업데이트에서 엑스쿼리는 변경 대상 노드를 지정하는 용도와 새로운 결과 노드를 구성하는 용도로 사용된다.
이때, 단순 변경 기능은 엑스엠엘 문서에 새로운 노드를 삽입하는 삽입 기능, 엑스엠엘 문서로부터 노드를 삭제하는 삭제 기능, 엑스엠엘 문서 내의 기존 노드 또는 값을 다른 노드 또는 값으로 갱신하는 갱신 기능을 말하고, 복합 변경 기능은 여러 개의 단순 변경 기능을 엑스쿼리의 루프(for) 또는 조건표현식(if-then-else)을 사용하여 조합한 기능을 말한다.
도 1 은 본 발명에 따른 확장성 생성 언어 변경 처리 시스템 및 그를 이용한 관계형 데이터베이스 기반의 엑스엠엘-데이터베이스 관리 시스템의 일실시예 전체 구성도이다.
먼저, 본 발명에 따른 확장성 생성 언어 변경 처리 시스템을 포함하는 관계형 데이터베이스 기반의 엑스엠엘-데이터베이스 관리 시스템에 대하여 살펴보면, 상기 엑스엠엘-데이터베이스 관리 시스템(100)은 관계형 데이터베이스 스키마로부터 구조화 질의어/엑스엠엘 기본 맵핑 규칙에 따라 엑스엠엘 스키마를 생성하고, 상기 생성한 엑스엠엘 스키마 정보를 관리하기 위한 스키마 관리기(110), 엑스엠엘 변경 문장(엑스쿼리 업데이트)(121)을 관계형 데이터베이스 변경 문장(127)으로 변 환 처리하기 위한 엑스엠엘 변경 처리 시스템(120)을 포함한다.
이때, 엑스엠엘-데이터베이스 관리 시스템(100)은 관계형 데이터베이스(130)와 연결되어 있다. 엑스엠엘-데이터베이스 관리 시스템(100)의 스키마 관리기(110)가 구조화 질의어/엑스엠엘 기본 맵핑 규칙에 따라 엑스엠엘 스키마를 자동 생성하면 본 발명에 따른 확장성 생성 언어 변경 처리 시스템, 즉 엑스엠엘 변경 처리 시스템(120)이 상기 생성된 엑스엠엘 스키마를 대상으로 사용자로부터 입력받은 엑스엠엘 변경 문장(121)을 처리한다.
상기 스키마 관리기(110)의 동작을 상세히 살펴보면, 스키마 관리기(110)는 이미 생성된 관계형 데이터베이스 스키마에 대한 엑스엠엘 스키마의 생성을 사용자로부터 요청(112)받음에 따라, 입력받은 관계형 데이터베이스 스키마 이름(111)을 이용하여 관계형 데이터베이스(130)로부터 해당되는 관계형 데이터베이스 스키마에 대한 스키마 정보를 추출(113)한다. 그리고 상기 추출한 스키마 정보를 이용하여 구조화 질의어/엑스엠엘 기본 맵핑 규칙에 따라 엑스엠엘 스키마를 생성하고, 관계형 데이터베이스 스키마와 엑스엠엘 스키마의 맵핑 정보(114)를 메모리 내에 유지한다.
또한, 엑스엠엘 변경 처리 시스템(120)에 대하여 살펴보면, 엑스엠엘 변경 처리 시스템(120)은 상기 생성된 엑스엠엘 스키마를 대상으로 엑스엠엘 변경 문장(121)의 실행을 사용자로부터 요청(122)받는다.
그러면, 엑스쿼리 업데이트 파싱 모듈(123)이 입력받은 엑스엠엘 변경 문장(121)을 구문 분석하여 엑스쿼리 업데이트 구문 분석 트리를 생성한다. 그리고 엑스쿼리 업데이트 검증 모듈(124)이 상기 생성된 엑스쿼리 업데이트 구문 분석 트리를 순회하며 상기 입력받은 엑스엠엘 변경 문장(121)의 정당성 여부를 검사하고, 엑스쿼리 업데이트 변환 모듈(125)이 상기 정당성 검사 과정을 통과한(검증된) 엑스쿼리 업데이트 구문 분석 트리를 순회하며 상기 엑스쿼리 업데이트 구문 분석 트리를 엑스쿼리 업데이트 변경 트리로 변환한다.
이후, 엑스쿼리 업데이트 실행 모듈(126)이 상기 엑스쿼리 업데이트 변경 트리를 순회하며 관계형 데이터베이스 변경 문장(127)을 생성하고, 상기 생성한 관계형 데이터베이스 변경 문장을 관계형 데이터베이스(130)에 실행(127)한다.
도 2 는 본 발명에 따른 확장성 생성 언어 변경 처리 시스템에서의 엑스엠엘 변경 처리 방법에 대한 일실시예 흐름도이다.
여기서는, 엑스엠엘-데이터베이스 관리 시스템(100)의 스키마 관리기(110)가 구조화 질의어/엑스엠엘 기본 맵핑 규칙에 따라 생성한 엑스엠엘 스키마에 대하여 표준 엑스엠엘 변경 언어를 지원하기 위한 방안을 살펴보기로 한다. 즉, 사용자로부터 입력받은 엑스엠엘 변경 문장(121)을 처리하여 관계형 데이터베이스(130)에 수행하는 과정을 설명하기로 한다.
먼저, 엑스엠엘 변경 처리 시스템(120)은 외부(사용자)로부터 엑스엠엘 스키마에 대한 엑스엠엘 변경 문장의 수행을 요청받는다(201). 이때, 수행 대상이 되는 엑스엠엘 변경 문장을 입력받는다.
그에 따라, 엑스쿼리 업데이트 파싱 모듈(123)이 상기 입력받은 엑스엠엘 변경 문장을 구문 분석하여 엑스쿼리 업데이트 구문 분석 트리를 구성한다(202). 즉, 사용자로부터 입력받은 엑스엠엘 변경 문장을 구문 분석하여 엑스엠엘 변경 처리 시스템(120)에서 지원하는 엑스쿼리 업데이트 문법에 적합한지를 검사한 후 엑스쿼리 업데이트 구문 분석 트리를 생성한다.
이후, 엑스쿼리 업데이트 검증 모듈(124)이 상기 구성된 엑스쿼리 업데이트 구문 분석 트리를 순회하며 엑스엠엘 변경 문장의 정당성 여부를 검사한다(203). 예를 들면, 엑스엠엘 변경 문장 내에 명시된 변경 대상 엑스엠엘 스키마가 엑스엠엘 변경 처리 시스템(120)에 등록된 엑스엠엘 스키마인지의 여부 등을 판단한다.
상기 엑스엠엘 변경 문장 정당성 판단 결과(203), 정당한 엑스엠엘 변경 문장일 경우 엑스쿼리 업데이트 변환 모듈(125)이 상기 검증된 엑스쿼리 업데이트 구문 분석 트리를 순회하며 엑스쿼리 업데이트 구문 분석 트리를 엑스쿼리 업데이트 변경 트리로 변환한다(204). 즉, 엑스엠엘-데이터베이스 관리 시스템(100)의 스키마 관리기(110)로부터 관계형 데이터베이스 스키마와 엑스엠엘 스키마의 맵핑 정보를 제공받아 엑스쿼리 업데이트 변경 트리로 변환한다.
이때, 상기 맵핑 정보(114)는 데이터 모델이 상이한 관계형 데이터베이스(130)에 엑스엠엘 데이터를 저장 및 관리할 수 있도록 하고 상기 엑스엠엘 데이터에 대한 질의 기능이 제공될 수 있도록 하기 위하여, 엑스엠엘 모델에서의 엘리먼트, 애트리뷰트 등에 포함된 정보와 관계형 데이터베이스 모델에서의 테이블, 필드 등에 포함된 정보 간의 사상 관계를 알려준다. 상기 맵핑 정보(114)는 관계형 데이터베이스(130)의 테이블로부터 구조화 질의어/엑스엠엘 기본 맵핑 규칙에 따라 자동 생성되는 엑스엠엘 스키마로부터 추출된다.
이후, 엑스쿼리 업데이트 실행 모듈(126)이 상기 엑스쿼리 업데이트 변경 트리를 순회하며 관계형 데이터베이스 변경 문장을 생성하고(205), 상기 생성된 관계형 데이터베이스 변경 문장을 관계형 데이터베이스(130)에 수행한다(206).
한편, 상기 엑스엠엘 변경 문장 정당성 판단 결과(203), 정당한 엑스엠엘 변경 문장이 아닐 경우 종료한다.
여기서, 관계형 데이터베이스 테이블로부터의 엑스엠엘 스키마 생성시 사용되는 구조화 질의어/엑스엠엘 기본 맵핑 규칙에 대하여 살펴보면, 국제 표준화 기구인 ISO/IEC JTC1/SC32/WG3에서 SQL 표준 파트 14로서 제정된 것으로 기본 맵핑 규칙은 다음과 같다. 엑스엠엘 스키마의 루트 엘리먼트(root element) 이름은 입력 테이블 이름이고, 엑스엠엘 스키마의 루트 엘리먼트는 테이블 내의 여러 레코드를 나타낼 수 있도록 0개 이상의 로우 엘리먼트(row element)를 자식 노드(child element)로 가지며, 각 로우 엘리먼트는 입력 테이블을 구성하는 필드 이름에 해당하는 하나 이상의 엘리먼트들을 자식 노드로 가진다. 상기 구조화 질의어/엑스엠엘 기본 맵핑 교칙에 대해서는 도 7을 참조하여 부가적으로 후술하기로 한다.
도 3 은 본 발명에 따른 확장성 생성 언어 시스템에서 엑스쿼리 업데이트 구문 분석 트리를 이용한 엑스쿼리 업데이트 변경 트리 생성 과정에 대한 일실시예 흐름도이다.
먼저, 엑스쿼리 업데이트 변환 모듈(125)은 엑스쿼리 업데이트 구문 분석 트리를 순회하며(301) 단순 변경 문장인지 혹은 복합 변경 문장인지의 여부를 판단한다(302).
상기 변경 문장 판단 결과(302), 단순 변경 문장인 경우 해당되는 단순 변경 문장을 위한 변경 트리를 생성한다(303). 즉, 단순 삽입 문장, 단순 갱신 문장, 단순 삭제 문장 중, 해당되는 단순 변경 문장을 위한 엑스쿼리 업데이트 변경 트리를 생성한다.
한편, 상기 변경 문장 판단 결과(302), 복합 변경 문장인 경우 해당되는 복합 변경 문장을 위한 변경 트리를 생성한다(304). 즉, FLW 갱신 문장, 조건 변경 문장 중, 해당되는 복합 변경 문장을 위한 엑스쿼리 업데이트 변경 트리를 생성한다.
도 4 는 엑스엠엘 데이터 저장을 위한 관계형 데이터베이스 스키마에 대한 일실시예 설명도이다.
도 4에 도시된 바와 같이, 관계형 데이터베이스 스키마인 사용자 테이블을 살펴보면 사용자 테이블은 사용자 아이디, 이름, 도시, 폰 필드로 구성(420)되어 있다. 또한, 사용자 테이블에는 현재 5개의 레코드가 저장(430)된 상태이다.
여기서, 상기 사용자 테이블로부터 생성된 엑스엠엘 스키마에 대하여 도 5를 참조하여 살펴보면 다음과 같다.
도 5 는 상기 도 4의 관계형 데이터베이스 스키마에 구조화 질의어/엑스엠엘 기본 맵핑 규칙이 적용되어 자동 생성된 엑스엠엘 스키마에 대한 일실시예 설명도이다.
도 5에 도시된 바와 같이, 엑스엠엘-데이터베이스 관리 시스템(100)에 저장되는 엑스엠엘 스키마는 상기 도 4의 관계형 데이터베이스 스키마로부터 구조화 질 의어/엑스엠엘 기본 맵핑 규칙에 따라 자동 생성된 엑스엠엘 스키마이다.
상기 엑스엠엘 스키마의 루트 엘리먼트는 사용자 엘리먼트(510)이고, 상기 사용자 엘리먼트(510)는 0개 이상의 로우 엘리먼트(520)를 자식 노드로 갖고 있다. 또한, 로우 엘리먼트(520)는 자식 노드로서 사용자 아이디 엘리먼트(530), 이름 엘리먼트(540), 도시 엘리먼트(550), 폰 엘리먼트(560)를 각각 하나씩 갖고 있다. 한편, 상기 엑스엠엘 스키마의 전문은 도 6에 도시된 바와 같다.
도 7 는 상기 도 4의 관계형 데이터베이스 스키마와 상기 도 5의 엑스엠엘 스키마의 맵핑 규칙을 나타낸 메모리 내 자료 구조에 대한 일실시예 설명도이다.
여기서는, 엑스엠엘 스키마인 사용자 스키마(710)와 관계형 데이터베이스 스키마인 사용자 테이블(720) 간의 맵핑 관계를 나타내고 있다. 즉, 사용자 엑스엠엘 스키마(710)의 사용자 아이디 엘리먼트는 사용자 테이블(720)의 사용자 아이디 필드와 맵핑 관계이고, 사용자 엑스엠엘 스키마(710)의 이름 엘리먼트는 사용자 테이블(720)의 이름 필드와 맵핑 관계이다.
도 8 은 본 발명에 따른 확장형 생성언어 변경 처리 시스템에서 엑스쿼리 업데이트 변경 트리를 구성하는 노드의 상속 관계 다이어그램에 대한 일실시예 설명도이다.
도 8에 도시된 바와 같이, 엑스쿼리 업데이트 변경 트리의 노드 계층 구조는 엑스쿼리 업데이트 언어의 기능 및 기본 구조에 따른 것이다.
엑스쿼리 업데이트 변경 트리는 기본적인 노드 정보를 포함하는 엑스쿼리 업데이트 노드(810)와, 엑스엠엘 변경 문장의 주요 구문을 나타내는 엑스쿼리 업데이 트 삽입 노드(820), 엑스쿼리 업데이트 대체 노드(830), 엑스쿼리 업데이트 삭제 노드(840), 엑스쿼리 업데이트 FLW 갱신 노드(850), 엑스쿼리 업데이트 조건부 갱신 노드(860)와, 엘리먼트 생성자를 표현하는 엑스쿼리 업데이트 엘리먼트 노드(870) 및 애트리뷰트 생성자를 표현하는 엑스쿼리 업데이트 애트리뷰트 노드(880)를 가진다. 이때, 각 노드는 엑스쿼리 업데이트 노드(810)를 상속한다.
도 9 는 상기 도 8의 엑스쿼리 업데이트 변경 트리에서 단순 변경 연산인 삽입, 갱신, 삭제 노드의 자료구조에 대한 일실시예 설명도이다.
도 9에 도시된 바와 같이, 엑스쿼리 업데이트 삽입 노드(910)는 엑스엠엘 데이터의 삽입 방향을 나타내는 삽입 위치 타입 노드(911), 엑스엠엘 데이터가 삽입되는 기존 엑스엠엘 문서 내의 위치를 나타내는 삽입 위치 노드(912), 삽입되는 엑스엠엘 데이터의 내용을 나타내는 삽입 콘텐츠 노드(913)에 대한 정보를 갖고 있다.
또한, 엑스쿼리 업데이트 대체 노드(920)는 변경 대상이 노드인지 노드 값인지를 나타내기 위한 IsValueOf 노드(921), 갱신 전의 기존 엑스엠엘 데이터 정보를 나타내는 OldExpr 노드(922), 새로운 엑스엠엘 데이터 정보를 나타내는 NewExpr 노드(923)에 대한 정보를 갖고 있다.
또한, 엑스쿼리 업데이트 삭제 노드(930)는 삭제되는 엑스엠엘 데이터 정보를 나타내는 삭제 타킷 노드(931)에 대한 정보를 갖고 있다.
도 10 은 상기 도 8의 엑스쿼리 업데이트 변경 트리에서 복합 변경 연산인 FLW 갱신 노드의 자료구조에 대한 일실시예 설명도이다.
도 10에 도시된 바와 같이, 엑스쿼리 업데이트 변경 트리의 노드 계층 구조에서 복합 변경 기능 중의 하나인 FLW 갱신 문장을 나타내는 엑스쿼리 업데이트 FLW 갱신 노드(1010)는 기본 FLW(For-Let-Where)정보 및 다수의 단순 갱신 노드 정보(1011, 1012)를 갖고 있다.
도 11 은 상기 도 8의 엑스쿼리 업데이트 변경 트리에서 복합 변경 연산인 조건부 갱신 노드의 자료구조를 나타낸 일실시예 설명도이다.
도 11에 도시된 바와 같이, 엑스쿼리 업데이트 변경 트리의 노드 계층 구조에서 복합 변경 기능 중의 하나인 조건 변경 문장을 나타내는 엑스쿼리 업데이트 조건부 갱신 노드(1110)의 구성을 설명하면 다음과 같다.
엑스쿼리 업데이트 조건부 갱신 노드(1110)는 조건 표현식을 나타내는 IfExpr 노드(111), 조건이 만족하였을 경우에 수행될 단순 변경 문장을 나타내는 ThenAction 노드(1112), 조건이 만족하지 않았을 경우에 수행될 단순 변경 문장을 나타내는 EleseAction 노드(1113)에 대한 정보를 갖고 있다.
한편, 이하의 설명에서는 엑스엠엘 변경 문장과 상기 엑스엠엘 변경 문장의 본 발명에 따른 처리 결과인 관계형 데이터베이스 변경 문장을 이용하여 본 발명에 따른 엑스엠엘 변경 처리 시스템에서의 동작 예를 설명하기로 한다.
도 12 는 엑스엠엘 변경 문장 및 그에 대응되도록 본 발명에 따라 변경 처리된 관계형 데이터베이스 변경 문장에 대한 일실시예 설명도이다.
도 12에 도시된 바와 같이, 엑스엠엘 변경 문장은 사용자라는 엑스엠엘 스키마를 따르는 엑스엠엘 데이터 집합에 새로운 엑스엠엘 데이터를 삽입하기 위한 문 장이다. 그리고 상기 엑스엠엘 변경 문장은 본 발명에 따른 엑스엠엘 변경 처리 시스템에 의해 그 아래의 관계형 데이터베이스 변경 문장으로 변환된다.
도 13 은 상기 도 12의 엑스엠엘 변경 문장을 관계형 데이터베이스 변경 문장으로 변환하기 위한 엑스쿼리 업데이트 변경 트리의 일실시예 설명도이다.
본 발명에 따른 엑스엠엘 변경 처리 시스템은, 표준 엑스쿼리 업데이트를 지원하기 위하여 외부로부터 입력받은 엑스엠엘 변경 문장에 대한 엑스쿼리 업데이트 구문 분석 트리를 엑스쿼리 업데이트 변경 트리로 변환한다.
도 13에 도시된 바와 같이, 엑스쿼리 업데이트 변경 트리를 단순 삽입 문장임을 나타내기 위하여 루트 노드로서 엑스쿼리 업데이트 삽입 노드(1210)가 위치하고 있다. 여기서, 상기 엑스쿼리 업데이트 삽입 노드(1210)는 삽입 방향인 "AS FIRST"(1221) 정보를 갖는 삽입 위치 타입 노드(1220), 삽입 위치를 나타내는 사용자 테이블(1231) 정보를 갖는 삽입 위치 노드(1230), 삽입되는 엑스엠엘 데이터 정보를 갖는 엘리먼트 부분 트리(1220 내지 1229)를 포함한다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.
상기와 같은 본 발명은, 관계형 데이터베이스를 기반으로 하는 엑스엠엘-데이터베이스 관리 시스템에서 구조화 질의어/엑스엠엘 표준 기본 맵핑 규칙에 의해서 자동으로 정의되는 엑스엠엘 스키마에 대하여, 표준 엑스엠엘 변경 언어인 엑스쿼리 업데이트를 지원할 수 있는 효과가 있다.
그에 따라, 본 발명은 사업자별로 상이한 언어 및 인터페이스로 말미암은 불필요한 개발 비용을 줄일 수 있는 효과가 있다.

Claims (22)

  1. 확장성 생성 언어 변경 처리 시스템에 있어서,
    외부로부터 입력받은 엑스엠엘 변경 문장을 구문 분석하여 엑스쿼리 업데이트 구문 분석 트리를 생성하기 위한 파싱 수단;
    상기 엑스쿼리 업데이트 구문 분석 트리를 순회하며 상기 입력받은 엑스엠엘 변경 문장의 정당성을 검사하기 위한 검증 수단;
    상기 검증 수단에 의해 검증됨에 따라 상기 엑스쿼리 업데이트 구문 분석 트리를 순회하며 엑스쿼리 업데이트 변경 트리로 변환하기 위한 변환 수단; 및
    상기 엑스쿼리 업데이트 변경 트리를 순회하며 관계형 데이터베이스 변경 문장을 생성하여 외부에 연결된 관계형 데이터베이스에 실행하기 위한 실행 수단
    을 포함하는 확장성 생성 언어 변경 처리 시스템.
  2. 제 1 항에 있어서,
    상기 파싱 수단은,
    상기 외부로부터 입력받은 엑스엠엘 변경 문장을 구문 분석하여 상기 엑스쿼리 업데이트 문법에 적합한지를 검사하고, 적합함에 따라 엑스쿼리 업데이트 구문 분석 트리를 생성하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템.
  3. 제 1 항에 있어서,
    상기 검증 수단은,
    상기 외부로부터 입력받은 엑스엠엘 변경 문장 내에 명시된 변경 대상 엑스엠엘 스키마가 상기 확장성 생성 언어 변경 처리 시스템에 등록된 엑스엠엘 스키마인지를 검증하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    상기 변환 수단은,
    에스큐엘/엑스엠엘 기본 맵핑 규칙에 따라 자동 생성된 엑스엠엘 스키마로부터 추출된 맵핑 정보를 이용하여 상기 엑스쿼리 업데이트 구문 분석 트리를 상기 엑스쿼리 업데이트 변경 트리로 변환하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템.
  5. 제 4 항에 있어서,
    상기 변환 수단은,
    엑스엠엘 모델에서의 엘리먼트, 애트리뷰트에 포함된 정보와 관계형 데이터베이스 모델에서의 테이블, 필드에 포함된 정보 간의 사상 관계를 포함하는 맵핑 정보를 외부로부터 제공받음에 따라 상기 제공받은 맵핑 정보를 이용하여 상기 엑스쿼리 업데이트 구문 분석 트리를 상기 엑스쿼리 업데이트 변경 트리로 변환하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템.
  6. 제 4 항에 있어서,
    상기 변환 수단은,
    상기 엑스쿼리 업데이트 구문 분석 트리를 순회하며 상기 입력받은 엑스엠엘 변경 문장의 종류를 확인하여 해당되는 엑스쿼리 업데이트 변경 트리로 변환하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템.
  7. 제 6 항에 있어서,
    상기 변환 수단은,
    상기 입력받은 엑스엠엘 변경 문장이 단순 변경 문장 중 단순 삽입 문장임에 따라 엑스엠엘 데이터의 삽입 방향, 상기 엑스엠엘 데이터가 삽입되는 기존 엑스엠엘 문서 내의 위치, 삽입되는 상기 엑스엠엘 데이터의 내용을 각 자식 노드별로 가지는 엑스쿼리 업데이트 변경 트리로 변환하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템.
  8. 제 6 항에 있어서,
    상기 변환 수단은,
    상기 입력받은 엑스엠엘 변경 문장이 단순 변경 문장 중 단순 갱신 문장임에 따라 변경 대상의 종류(노드/노드 값) 갱신 전의 기존 엑스엠엘 데이터 정보, 새로운 엑스엠엘 데이터 정보를 각 자식 노드별로 가지는 엑스쿼리 업데이트 변경 트리로 변환하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템.
  9. 제 6 항에 있어서,
    상기 변환 수단은,
    상기 입력받은 엑스엠엘 변경 문장이 단순 변경 문장 중 단순 삭제 문장임에 따라, 삭제되는 엑스엠엘 데이터 정보를 나타내는 노드를 자식 노드로 가지는 엑스쿼리 업데이트 변경 트리로 변환하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템.
  10. 제 6 항에 있어서,
    상기 변환 수단은,
    상기 입력받은 엑스엠엘 변경 문장이 복합 변경 문장 중 FLW(For-Let-Where) 갱신 문장임에 따라, 기본 FLW 정보와 다수의 단순 변경 노드 정보를 각 자식 노드별로 가지는 엑스쿼리 업데이트 변경 트리로 변환하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템.
  11. 제 6 항에 있어서,
    상기 변환 수단은,
    상기 입력받은 엑스엠엘 변경 문장이 복합 변경 문장 중 조건 변경 문장임에 따라 조건 표현식, 조건의 만족 여부에 따라 각각 수행될 단순 변경 문장을 각 자식 노드별로 가지는 엑스쿼리 업데이트 변경 트리로 변환하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템.
  12. 확장성 생성 언어 변경 처리 시스템에서의 엑스엠엘 변경 처리 방법에 있어서,
    외부로부터 엑스엠엘 변경 문장을 입력받는 입력 단계;
    상기 입력받은 엑스엠엘 변경 문장을 구문 분석하여 엑스쿼리 업데이트 구문 분석 트리를 생성하는 구문 분석 단계;
    상기 생성한 엑스쿼리 업데이트 구문 분석 트리를 순회하며 상기 입력받은 엑스엠엘 변경 문장의 정당성을 검증하는 검증 단계;
    상기 검증된 엑스쿼리 업데이트 구문 분석 트리를 순회하며 엑스쿼리 업데이트 변경 트리로 변환하는 변환 단계;
    상기 엑스쿼리 업데이트 변경 트리를 순회하며 관계형 데이터베이스 변경 문장을 생성하는 문장 변경 단계; 및
    상기 생성한 관계형 데이터베이스 변경 문장을 실행하는 실행 단계
    를 포함하는 확장성 생성 언어 변경 처리 시스템에서의 엑스엠엘 변경 처리 방법.
  13. 제 12 항에 있어서,
    상기 구문 분석 단계는,
    상기 외부로부터 입력받은 엑스엠엘 변경 문장을 구문 분석하여 엑스쿼리 업데이트 문법에 적합한지를 검사하고, 적합함에 따라 상기 엑스쿼리 업데이트 구문 분석 트리를 생성하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템에서의 엑스엠엘 변경 처리 방법.
  14. 제 12 항에 있어서,
    상기 검증 단계는,
    상기 외부로부터 입력받은 엑스엠엘 변경 문장 내에 명시된 변경 대상 엑스 엠엘 스키마가 상기 확장성 생성 언어 변경 처리 시스템에 등록된 엑스엠엘 스키마인지를 검증하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템에서의 엑스엠엘 변경 처리 방법.
  15. 제 12 항 내지 제 14 항 중 어느 한 항에 있어서,
    상기 변환 단계는,
    에스큐엘/엑스엠엘 기본 맵핑 규칙에 따라 자동 생성된 엑스엠엘 스키마로부터 추출된 맵핑 정보를 이용하여 상기 엑스쿼리 업데이트 구문 분석 트리를 상기 엑스쿼리 업데이트 변경 트리로 변환하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템에서의 엑스엠엘 변경 처리 방법.
  16. 제 15 항에 있어서,
    상기 변환 단계는,
    엑스엠엘 모델에서의 엘리먼트, 애트리뷰트에 포함된 정보와 관계형 데이터베이스 모델에서의 테이블, 필드에 포함된 정보 간의 사상 관계를 포함하는 맵핑 정보를 이용하여 상기 엑스쿼리 업데이트 구문 분석 트리를 상기 엑스쿼리 업데이트 변경 트리로 변환하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템에서의 엑스엠엘 변경 처리 방법.
  17. 제 15 항에 있어서,
    상기 변환 단계는,
    상기 엑스쿼리 업데이트 구문 분석 트리를 순회하며 상기 입력받은 엑스엠엘 변경 문장의 종류를 확인하여 해당되는 엑스쿼리 업데이트 변경 트리로 변환하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템에서의 엑스엠엘 변경 처리 방법.
  18. 제 17 항에 있어서,
    상기 변환 단계는,
    상기 입력받은 엑스엠엘 변경 문장이 단순 변경 문장 중 단순 삽입 문장임에 따라 엑스엠엘 데이터의 삽입 방향, 상기 엑스엠엘 데이터가 삽입되는 기존 엑스엠엘 문서 내의 위치, 삽입되는 상기 엑스엠엘 데이터의 내용을 각 자식 노드별로 가지는 엑스쿼리 업데이트 변경 트리로 변환하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템에서의 엑스엠엘 변경 처리 방법.
  19. 제 17 항에 있어서,
    상기 변환 단계는,
    상기 입력받은 엑스엠엘 변경 문장이 단순 변경 문장 중 단순 갱신 문장임에 따라 변경 대상의 종류(노드/노드 값) 갱신 전의 기존 엑스엠엘 데이터 정보, 새로운 엑스엠엘 데이터 정보를 각 자식 노드별로 가지는 엑스쿼리 업데이트 변경 트리로 변환하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템에서의 엑스엠엘 변경 처리 방법.
  20. 제 17 항에 있어서,
    상기 변환 단계는,
    상기 입력받은 엑스엠엘 변경 문장이 단순 변경 문장 중 단순 삭제 문장임에 따라, 삭제되는 엑스엠엘 데이터 정보를 나타내는 노드를 자식 노드로 가지는 엑스쿼리 업데이트 변경 트리로 변환하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템에서의 엑스엠엘 변경 처리 방법.
  21. 제 17 항에 있어서,
    상기 변환 단계는,
    상기 입력받은 엑스엠엘 변경 문장이 복합 변경 문장 중 FLW(For-Let-Where) 갱신 문장임에 따라, 기본 FLW 정보와 다수의 단순 변경 노드 정보를 각 자식 노드별로 가지는 엑스쿼리 업데이트 변경 트리로 변환하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템에서의 엑스엠엘 변경 처리 방법.
  22. 제 17 항에 있어서,
    상기 변환 단계는,
    상기 입력받은 엑스엠엘 변경 문장이 복합 변경 문장 중 조건 변경 문장임에 따라 조건 표현식, 조건의 만족 여부에 따라 각각 수행될 단순 변경 문장을 각 자식 노드별로 가지는 엑스쿼리 업데이트 변경 트리로 변환하는 것을 특징으로 하는 확장성 생성 언어 변경 처리 시스템에서의 엑스엠엘 변경 처리 방법.
KR1020060033726A 2005-12-01 2006-04-13 확장성 생성 언어 변경 처리 시스템 및 그 방법 KR100691261B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020050116101 2005-12-01
KR20050116101 2005-12-01

Publications (1)

Publication Number Publication Date
KR100691261B1 true KR100691261B1 (ko) 2007-03-12

Family

ID=38102750

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060033726A KR100691261B1 (ko) 2005-12-01 2006-04-13 확장성 생성 언어 변경 처리 시스템 및 그 방법

Country Status (1)

Country Link
KR (1) KR100691261B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100912471B1 (ko) 2008-02-29 2009-08-14 충남대학교산학협력단 히스토그램과 평면적 크기 계산을 이용한 xml 스키마매칭 과정에서의 변환 질의의 적합성 검사 방법
CN109241104A (zh) * 2018-10-12 2019-01-18 北京聚云位智信息科技有限公司 决策型分布式数据库系统中aisql的解析器及其实现方法
CN109669952A (zh) * 2018-11-29 2019-04-23 杭州仟金顶信息科技有限公司 一种sql执行效率静态分析方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040056298A (ko) * 2002-12-23 2004-06-30 한국전자통신연구원 엑스퀘리를 사용하여 통합 스키마를 정의하는 데이터 통합시스템 및 그 방법
KR20060067095A (ko) * 2004-12-14 2006-06-19 한국전자통신연구원 관계형 데이터베이스를 기반으로 하는 XML데이터베이스에서 XQuery 트리거를 지원하는 방법 및시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040056298A (ko) * 2002-12-23 2004-06-30 한국전자통신연구원 엑스퀘리를 사용하여 통합 스키마를 정의하는 데이터 통합시스템 및 그 방법
KR20060067095A (ko) * 2004-12-14 2006-06-19 한국전자통신연구원 관계형 데이터베이스를 기반으로 하는 XML데이터베이스에서 XQuery 트리거를 지원하는 방법 및시스템

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
논문

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100912471B1 (ko) 2008-02-29 2009-08-14 충남대학교산학협력단 히스토그램과 평면적 크기 계산을 이용한 xml 스키마매칭 과정에서의 변환 질의의 적합성 검사 방법
CN109241104A (zh) * 2018-10-12 2019-01-18 北京聚云位智信息科技有限公司 决策型分布式数据库系统中aisql的解析器及其实现方法
CN109241104B (zh) * 2018-10-12 2021-11-02 北京聚云位智信息科技有限公司 决策型分布式数据库系统中aisql的解析器及其实现方法
CN109669952A (zh) * 2018-11-29 2019-04-23 杭州仟金顶信息科技有限公司 一种sql执行效率静态分析方法

Similar Documents

Publication Publication Date Title
US8112704B2 (en) Method for loading large XML documents on demand
US8321834B2 (en) Framework for automatically merging customizations to structured code that has been refactored
US9804837B2 (en) System and method for creating, managing, and reusing schema type definitions in services oriented architecture services, grouped in the form of libraries
US8387030B2 (en) Service adaptation definition language
US7774321B2 (en) Partial XML validation
KR100977352B1 (ko) 워드 프로세서 문서의 원시 xml에서 비원시 xml을 지원하는 시스템 및 방법
US8726229B2 (en) Multi-language support for service adaptation
Bikakis et al. The XML and semantic web worlds: technologies, interoperability and integration: a survey of the state of the art
US7210096B2 (en) Methods and apparatus for constructing semantic models for document authoring
US20070219959A1 (en) Computer product, database integration reference method, and database integration reference apparatus
US7120869B2 (en) Enhanced mechanism for automatically generating a transformation document
US20040239674A1 (en) Modeling graphs as XML information sets and describing graphs with XML schema
US20070174308A1 (en) Data warehousing systems and methods having reusable user transforms
JP6720641B2 (ja) 多言語データティアのデータ制約
US7644095B2 (en) Method and system for compound document assembly with domain-specific rules processing and generic schema mapping
US7130862B2 (en) Methods, systems and computer program prodcuts for validation of XML instance documents using Java classloaders
US9361398B1 (en) Maintaining a relational database and its schema in response to a stream of XML messages based on one or more arbitrary and evolving XML schemas
WO2002059773A1 (en) Modular distributed mobile data applications
US20130198605A1 (en) Document Merge Based on Knowledge of Document Schema
US20070050707A1 (en) Enablement of multiple schema management and versioning for application-specific xml parsers
US20090276784A1 (en) Resource management method
McFadden et al. Automating context-aware application development
US8341514B2 (en) Using static data in a markup language
KR100691261B1 (ko) 확장성 생성 언어 변경 처리 시스템 및 그 방법
US20080059577A1 (en) Scalable logical model for edi and system and method for creating, mapping and parsing edi messages

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

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20111208

Year of fee payment: 20