KR20150074611A - Relational Database, Translating Method and Apparatus From data to XML - Google Patents

Relational Database, Translating Method and Apparatus From data to XML Download PDF

Info

Publication number
KR20150074611A
KR20150074611A KR1020130162541A KR20130162541A KR20150074611A KR 20150074611 A KR20150074611 A KR 20150074611A KR 1020130162541 A KR1020130162541 A KR 1020130162541A KR 20130162541 A KR20130162541 A KR 20130162541A KR 20150074611 A KR20150074611 A KR 20150074611A
Authority
KR
South Korea
Prior art keywords
xml
data
node
converting
reference column
Prior art date
Application number
KR1020130162541A
Other languages
Korean (ko)
Inventor
김동훈
어윤
김성수
Original Assignee
삼성에스디에스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성에스디에스 주식회사 filed Critical 삼성에스디에스 주식회사
Priority to KR1020130162541A priority Critical patent/KR20150074611A/en
Publication of KR20150074611A publication Critical patent/KR20150074611A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents

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

The present invention relates to a relational database for storing an eXtensible markup language (XML) in a relational database in a more effective structure and dynamically restoring the same, and to a method and a device for converting data to an XML. The method according to an embodiment of the present invention is a method for restoring an XML from data stored in a relational database (RDB). The method comprises the steps of: (a) converting data stored in the RDB into an entity; and (b) converting the converted entity to an XML. A data storing table of the RDB may convert data, which include a conversion reference column including at least one phrase dynamically changed during an XML conversion process in Step (b), into an XML.

Description

관계형 데이터베이스, 데이터를 XML로 변환하는 방법 및 장치{Relational Database, Translating Method and Apparatus From data to XML}[0001] Relational database, method and apparatus for converting data to XML [0002]

본 발명은 관계형 데이터베이스, 데이터를 XML로 변환하는 방법 및 장치에 관한 것이다. 보다 상세하게는, 본 발명은 확장형 마크업 언어(XML, eXtensible Markup Language)를 관계형 데이터베이스에 보다 효율적 구조로 보관하고 이를 동적으로 복원할 수 있는 관계형 데이터베이스와 데이터를 XML로 변환하는 방법 및 장치에 관한 것이다.The present invention relates to a relational database, and a method and apparatus for converting data to XML. More particularly, the present invention relates to a relational database capable of storing an XML, eXtensible Markup Language (XML) into a relational database in a more efficient structure and dynamically restoring it, and a method and apparatus for converting data into XML will be.

초창기의 컴퓨터에서는 운영체제가 제공하는 파일 시스템을 이용하여 데이터를 단순히 저장하고 읽기만 했는데, 그러한 데이터를 보다 효율적으로 관리하거나 접근하기 위해서는 응용 프로그래머가 직접 파일 시스템 상에서 필요한 응용 프로그램을 개발해야만 했다. 그때에는 사용자의 요구가 바뀔 때마다 계속 응용 프로그램을 변경하거나 심지어는 다시 개발해야 했으며, 그 기능 또한 동시에 많은 사용자가 사용하기에는 극히 제한적이었다.In the early days, data was simply stored and read using the file system provided by the operating system. In order to manage or access such data more efficiently, the application programmer had to develop the necessary application programs directly in the file system. At that time, we had to constantly change or even redevelop the application each time the user's needs changed, and the functionality was also extremely limited at the same time for many users.

1960년대 초에 이르러 처음으로 "데이터베이스"란 용어가 "한 조직의 응용 시스템들이 공용(shared)하기 위해 통합(integrated), 저장(stored)한 운영(operational) 데이터의 집합"이란 개념으로 정의되고 곧이어 데이터베이스를 관리하기 위한 시스템인 DBMS(Database Management System)가 소개되었다. 그 이후 계층적 데이터 모델과 네트워크 데이터 모델에 기반을 둔 IMS, Total 등의 DBMS들이 개발되어 영업망 정보, 부서 조직 정보 등 계층적 구조를 갖는 비즈니스 영역에서 우수한 성능을 발휘하였다. 하지만 이러한 DBMS들은 결정적인 단점을 하나 가지고 있었는데, 그것은 바로 데이터들이 포인터로 연결되어 있고 그러한 포인터들을 최대한 효율적으로 이용하도록 응용 프로그램들을 개발하였기 때문에 데이터베이스의 변경이 응용 프로그램의 성능에 큰 영향을 미친다는 것이다. 더구나 그러한 데이터베이스의 일관성을 유지하기란 여간 어려운 것이 아니었다.For the first time in the early 1960s, the term "database" was defined as "a collection of operational data that was integrated and stored for the application systems of an organization to be shared" DBMS (Database Management System), a system for managing databases, has been introduced. Since then, DBMSs such as IMS and Total based on hierarchical data model and network data model have been developed and showed excellent performance in a business area having a hierarchical structure such as sales network information and department organization information. However, these DBMSs have a decisive disadvantage, because changes to the database have a significant impact on the performance of the application, since the data is pointers and applications have been developed to take full advantage of those pointers. Moreover, maintaining consistency in such databases was not difficult.

이러한 문제점들을 해결할 수 있는 것으로, 관계형 데이터베이스(RDBMS, Relational Database)가 존재한다.To solve these problems, there is a relational database (RDBMS).

기존 관계형 데이터베이스에 확장형 마크업 언어(XML, eXtensible Markup Language)를 저장하고 변환하는 방법은, 단순히 XML 문서 전체를 문자열로 저장하거나, 각 노드(Node)의 내용을 내용 그대로 관계형 DB의 각 항목에 1:1로 맵핑(Mapping)하여 저장하고, 다시 XML로 변환하는 방법이다.A method for storing and converting an XML (Extensible Markup Language) to an existing relational database is as follows. The entire XML document is simply stored as a string, or the content of each node is inserted into each item of the relational DB : 1, and then converted to XML.

이러한, 기존 저장 및 변환 방법은 각 XML 태그(Tag)의 내용이 관계형 데이터베이스에도 구조 그대로 맵핑 되어 저장되는바, 공간의 낭비 및 너무 많은 데이터베이스 테이블(Table) 레코드(Record)가 발생하는 문제점이 존재한다.The existing storage and conversion method has a problem that the content of each XML tag is stored in the relational database as it is structured and stored, resulting in waste of space and too many database table records. .

또한, XML 구조 상의 내용의 동적 변경이 가능한 경우라도, 관계형 데이터베이스의 부모-자식(Parent-Child) 관계의 변화 없이는 로직에 따라 XML 구조상의 내용의 동적 변경이 불가능한 문제점이 존재한다.In addition, even when the contents of the XML structure can be changed dynamically, it is impossible to dynamically change the contents of the XML structure according to the logic without changing the parent-child relationship of the relational database.

한국 공개특허공보 2006-0081255Korean Patent Publication No. 2006-0081255

본 발명이 해결하고자 하는 기술적 과제는, 관계형 데이터베이스에서 데이터가 저장되는 테이블(Table)에 로직(Logic)을 포함하여 데이터의 동적 변경이 존재할 수 있는 내용을 저장할 수 있는 컬럼(Column)과 같은 공간을 제공하는 관계형 데이터베이스를 제공하는 것이다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problems, and an object of the present invention is to provide a method and apparatus for storing data in a relational database including a logic in a table in which data is stored, To provide a relational database.

또한, 본 발명이 해결하고자 하는 다른 기술적 과제는, 로직을 포함하여 데이터의 동적 변경이 존재할 수 있는 내용을 저장할 수 있는It is another object of the present invention to provide a method and apparatus for storing dynamic content, including logic,

보다 상세하게는, 본 발명은 로직(Logic)을 포함하여 데이터의 동적 변경이 존재할 수 있는 내용을 별도로 간략하게 저장할 수 있는 컬럼에 저장된 데이터를 포함하여 관계형 데이터베이스에 저장된 데이터를 XML로 변환하는 데이터를 XML로 변환하는 방법 및 장치를 제공하는 것이다.More particularly, the present invention relates to a method and apparatus for storing data stored in a column that can store data in which a dynamic change of data may exist, including logic, separately, so as to convert data stored in a relational database into XML And to provide a method and apparatus for converting to XML.

또한, 본 발명은 사용자 인터페이스(UI, User Interface)를 통하여 입력된 사용자 조작 정보에 따라서, XML로 변환되는 데이터 정보가 동적으로 변경될 수 있는 데이터를 XML로 변환하는 방법 및 장치를 제공하는 것이다.According to another aspect of the present invention, there is provided a method and an apparatus for converting data, which can be dynamically changed, into XML into XML according to user operation information input through a user interface (UI).

본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해 될 수 있을 것이다.The technical problems of the present invention are not limited to the above-mentioned technical problems, and other technical problems which are not mentioned can be clearly understood by those skilled in the art from the following description.

상기 기술적 과제를 달성하기 위한 본 발명의 제1 태양(ASPECT)에 따른 관계형 데이터베이스는, 확장형 마크업 언어(XML, eXtensible Markup Language)로 복원 가능한 데이터를 입력 또는 저장하는 관계형 데이터베이스에 있어서, 확장형 마크업 언어로 복원 가능한 데이터를 저장하는 테이블을 포함하되, 상기 테이블은 XML 변환 과정에서 동적으로 변경되는 적어도 하나의 구문을 포함하는 변환 참조 컬럼을 포함할 수 있다.According to a first aspect of the present invention, a relational database according to the present invention is a relational database for inputting or storing data that can be restored in an extensible markup language (XML) A table storing decompressed data in a language, the table including a transformation reference column containing at least one syntax that is dynamically changed in the XML transformation process.

상기 관계형 데이터베이스는, 상기 동적 변경이 가능한 데이터를 입력하거나 저장하는데 이용가능 한 용어를 미리 정의하여 저장하고, 상기 미리 정의된 용어에 대응되는 데이터를 저장할 수 있다.The relational database may predefine and store terms available for inputting or storing the data that can be dynamically changed, and may store data corresponding to the predefined term.

상기 적어도 하나의 구문은 로직(Logic)을 포함할 수 있다.The at least one syntax may include logic.

상기 동적 변경이 가능한 데이터는. 상기 로직(Logic)이 포함된 데이터인 것을 특징으로 할 수 있다.The data that can be dynamically changed include: And the logic is data including the logic.

상기 로직(Logic)이 포함된 데이터는, 조건문, 반복문 및 변수값 처리 중 적어도 어느 하나의 로직이 포함된 데이터인 것을 특징으로 할 수 있다.The data including the logic may be data including at least one of a conditional statement, a loop statement, and a variable value process.

상기 조건문의 조건, 상기 반복문의 반복 탈출 조건 및 상기 변수값 처리의 변수값의 설정 중 적어도 어느 하나는 사용자 인터페이스(UI, User Interface)를 통하여 입력된 사용자의 조작 정보를 이용하여 결정될 수 있다.At least one of the condition inquiry condition, the repeating condition of the loop, and the setting of the variable value of the variable value process may be determined using the user's operation information input through a user interface (UI).

상기 변환 참조 컬럼은, 노드 마스터(Node Master)의 테이블(Table)에 존재할 수 있다.The transformation reference column may exist in a table of a node master.

상기 변환 참조 컬럼은, 개별 노드들 각각의 테이블(Table) 마다 존재할 수 있다.The transformation reference column may exist for each table of the individual nodes.

상기 변환 참조 컬럼은, 노드 마스터(Node Master)의 테이블(Table) 및 개별 노드들 각각의 테이블 마다 존재할 수 있다.The transformation reference column may exist for each table of the node master and each table of the individual nodes.

상기 기술적 과제를 달성하기 위한 본 발명의 제2 태양(ASPECT)에 따른 데이터를 XML로 변환하는 방법은, 관계형 데이터베이스(RDB, Relational Database)에 저장된 데이터를 확장형 마크업 언어(XML, eXtensible Markup Language)로 복원하는 방법에 있어서, 상기 관계형 데이터베이스에 저장된 데이터를 객체로 변환하는 (a)단계; 및 상기 변환된 객체를 XML로 변환하는 (b)단계를 포함하되, 상기 관계형 데이터베이스의 데이터 저장 테이블은 상기 (b)단계에서 XML 변환 과정시 동적으로 변경되는 적어도 하나의 구문을 포함하는 변환 참조 컬럼을 포함할 수 있다. 상기 (b)단계는, 상기 변환 참조 컬럼에 포함된 데이터를 XML로 변환하고, 상기 (b)단계에서 변환된 XML로 이루어진 문서에는 상기 변환 참조 컬럼에 포함된 상기 하나 이상의 구문을 XML로 변환한 정보를 포함할 수 있다.According to an aspect of the present invention, there is provided a method of converting data into XML according to a second aspect of the present invention, comprising: converting data stored in a relational database into an extensible markup language (XML) (A) converting data stored in the relational database into an object; And (b) converting the transformed object to XML, wherein the data storage table of the relational database includes a transformation reference column including at least one syntax that is dynamically changed during the XML transformation process in the step (b) . ≪ / RTI > Wherein the step (b) comprises: transforming the data included in the transformed reference column into XML; converting the at least one syntax contained in the transformed reference column into XML into a document composed of the transformed XML at the step (b) Information.

일 실시예에 따르면, 상기 관계형 데이터베이스에는 미리 정의된 용어 및 상기 미리 정의된 용어에 대응되는 데이터가 저장되며, 상기 변환 참조 컬럼에 포함된 데이터를 상기 XML로 변환한 정보는, 상기 변환 참조 컬럼에 입력되거나 저장된 상기 적어도 하나의 구문 중 일부 또는 전부가 상기 미리 정의된 용어에 해당하는 경우, 상기 해당하는 미리 정의된 용어에 대응되는 데이터를 이용하여 상기 변환 참조 컬럼에 포함된 데이터를 XML로 변환할 수 있다.According to an embodiment of the present invention, the relational database stores predefined terms and data corresponding to the predefined terms, and information obtained by converting the data included in the conversion reference column into XML is stored in the conversion reference column If at least one of the inputted or stored at least one sentence corresponds to the predefined term, the data included in the converted reference column is converted into XML using data corresponding to the corresponding predefined term .

일 실시예에 따르면, 상기 (b) 단계는, 상기 해당하는 미리 정의된 용어에 대응되는 데이터 및 상기 변환된 객체들의 부모-자식(Parent-Child) 노드 관계를 이용하여 상기 변환 참조 컬럼에 포함된 데이터를 XML로 변환할 수 있다.According to an embodiment, the step (b) may further comprise the step of: using data corresponding to the corresponding predefined term and a parent-child node relationship of the transformed objects, Data can be converted to XML.

일 실시예에 따르면, 상기 구문에 상기 로직(Logic)이 포함된 경우, 상기 (b) 단계는, 상기 미리 정의된 용어에 대응되는 데이터에 기반하여 상기 로직을 해석하여 상기 변환 참조 컬럼에 포함된 데이터를 XML로 변환할 수 있다.According to an embodiment, when the logic includes the logic, the step (b) includes the steps of: analyzing the logic based on data corresponding to the predefined term, Data can be converted to XML.

상기 적어도 하나의 구문 중 상기 로직(Logic)이 포함된 경우, 상기 (b)단계는, 상기 로직을 해석하여 상기 변환 참조 컬럼에 포함된 구문을 XML로 변환할 수 있다.If the logic of the at least one statement is included, the step (b) may convert the syntax included in the conversion reference column into XML by interpreting the logic.

상기 적어도 하나의 구문은, 조건문, 반복문 및 변수값 처리 중 적어도 어느 하나의 로직이 포함되며, 상기 조건문의 조건, 상기 반복문의 반복 탈출 조건 및 상기 변수값 처리의 변수값의 설정 중 적어도 어느 하나는 사용자 인터페이스(UI, User Interface) 를 통하여 입력되는 사용자의 조작 정보를 이용하여 결정되며, 상기 (b)단계는, 상기 사용자의 조작 정보를 이용하여 로직을 해석하여 상기 변환 참조 컬럼에 포함된 구문을 XML로 변환할 수 있다.Wherein at least one of the at least one statement includes at least any one of a condition statement, an iterative statement, and a variable value process, and at least one of the conditions of the condition statement, the repeated exit condition of the loop statement, Wherein the step (b) comprises the steps of: analyzing the logic using the operation information of the user to determine a syntax included in the conversion reference column, It can be converted to XML.

상기 적어도 하나의 구문은. 상기 로직(Logic)이 포함되는 것을 특징으로 할 수 있다.The at least one syntax is: And the logic may be included.

상기 로직(Logic)은, 조건문 및 반복문 중 적어도 어느 하나가 될 수 있다.The logic may be at least one of a conditional statement and a loop statement.

상기 (b)단계는, 상기 변환된 객체 중 부모 노드(Parent Node)를 XML로 변환하기 전에, 상기 부모 노드의 자식 노드(Child Node)부터 상기 XML로 변환을 수행할 수 있다.The step (b) may convert a child node of the parent node to the XML before converting the parent node of the transformed object into XML.

상기 (b)단계는, 상기 변환된 객체 중 리프 노드(Leaf Node)부터 XML 변환을 시작하여 루트 노드(Root Node)까지 순차적으로 XML로 변환할 수 있다.In the step (b), XML transformation may be started from a leaf node of the transformed object, and the XML may be sequentially transformed to a root node.

상기 변환 참조 컬럼에 포함된 구문을 XML로 변환하는 방법은, 상기 객체로 변환된 데이터 중에서 XML로 변환시킬 노드 객체를 결정하는 (c)단계를 더 포함하며, 상기 (b)단계는, 상기 (c)단계에서 결정된 노드 객체만을 XML로 변환할 수 있다.The method of converting the syntax included in the transformation reference column into XML may further comprise the step of (c) determining a node object to be converted into XML from the data converted into the object, wherein (b) Only node objects determined in step c) can be converted to XML.

상기 (b)단계는, 상기 (c)단계에서 결정된 노드 객체 중 최하단의 자식 노드부터 XML 변환을 시작하여, 상기 (c)단계에서 결정된 노드 객체 중 최상단의 부모 노드까지 순차적으로 XML로 변환할 수 있다.In the step (b), the XML transformation is started from the child node of the lowest node among the node objects determined in the step (c), and sequentially converted to XML from the parent node of the node object determined in the step (c) have.

상기 기술적 과제를 달성하기 위한 본 발명의 제3 태양(ASPECT)에 따른 데이터를 XML로 변환하는 장치는, 관계형 데이터베이스에 저장된 데이터를 객체로 변환하는 객체 변환부; 및 상기 변환된 객체를 XML로 변환하는 XML 변환부를 포함하되, 상기 관계형 데이터베이스의 데이터 저장 테이블은 상기 XML 변환 과정시 동적으로 변경되는 적어도 하나의 구문을 포함하는 변환 참조 컬럼을 포함할 수 있다.According to an aspect of the present invention, there is provided an apparatus for converting data into XML according to a third aspect of the present invention, comprising: an object conversion unit for converting data stored in a relational database into an object; And an XML transformation unit for transforming the transformed object into XML. The data storage table of the relational database may include a transformation reference column including at least one syntax that is dynamically changed in the XML transformation process.

본 발명은 XML 내용을 내용 그대로 저장하는 것이 아니라, 로직으로 변환하여 저장할 수 있는 바, 관계형 데이터베이스의 공간의 소모를 감소시킬 수 있으며, 데이터베이스 테이블 레코드의 수도 감소시킬 수 있다.The present invention can reduce the space consumption of the relational database and reduce the number of the database table records because the XML contents can be converted into logic and stored instead of storing the contents as they are.

또한, 본 발명은 XML 내용을 동적으로 변환 처리를 할 수 있다. 즉, 본 발명은 조건문, 반복문 또는 변수값 처리 등의 로직에 따라서 XML 내용을 용이하게 동적으로 변환할 수 있다.In addition, the present invention can dynamically convert XML contents. That is, the present invention can easily and dynamically convert XML contents according to logic such as conditional statements, loop statements, or variable value processing.

본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해 될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned can be clearly understood to those of ordinary skill in the art from the following description.

도 1은 기존 관계형 데이터베이스의 데이터가 저장된 형태인 테이블의 일 예를 나타내는 도면이다.
도 2a는 관계형 데이터베이스의 데이터가 관계 구조를 가지고 저장된 형태의 일 예를 나타내는 도면이다.
도 2b는 관계형 데이터베이스에 저장된 데이터의 부모-자식(Parent-Chile) 관계 형태의 관계 구조를 설명하기 위한 일 예를 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른 관계형 데이터베이스의 테이블 형태의 일 예를 나타내는 도면이다.
도 4 내지 도 6은 화면(XML 구조) 내용을 관계 구조를 가지고 본 발명의 일 실시예에 따른 관계형 데이터베이스에 저장되는 과정의 일 예를 설명하기 위한 도면이다.
도 7과 8은 변환 참조 컬럼이 존재하는 노드의 예들을 나타내는 도면이다.
도 9는 본 발명의 일 실시예에 따른 데이터를 XML로 변환하는 장치에 관한 블록도이다.
도 10은 본 발명의 일 실시예에 따른 데이터를 XML로 변환하는 방법에 관한 흐름도이다.
도 11은 XML 변환부가 객체를 XML로 변환하는 구체적인 과정의 일 예를 나타내는 흐름도이다.
도 12는 본 발명의 또 다른 실시예에 따른 데이터를 XML로 변환하는 장치가 가질 수 있는 구성 예시를 나타낸 도면이다.
1 is a diagram showing an example of a table in which data of an existing relational database is stored.
2A is a diagram showing an example of a form in which data of a relational database is stored with a relational structure.
FIG. 2B is a diagram illustrating an example of a relationship structure of parent-child relationship types of data stored in a relational database.
3 is a diagram showing an example of a table format of a relational database according to an embodiment of the present invention.
4 to 6 are views for explaining an example of a process of storing contents of a screen (XML structure) in a relational database according to an embodiment of the present invention with a relational structure.
Figures 7 and 8 are diagrams showing examples of nodes where a transformed reference column is present.
9 is a block diagram of an apparatus for converting data into XML according to an embodiment of the present invention.
10 is a flowchart illustrating a method of converting data into XML according to an embodiment of the present invention.
FIG. 11 is a flowchart showing an example of a concrete process of the XML conversion unit converting an object into XML.
FIG. 12 is a diagram illustrating an exemplary configuration of an apparatus for converting data into XML according to another embodiment of the present invention. Referring to FIG.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and the manner of achieving them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Is provided to fully convey the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout the specification.

어떤 구성요소가 다른 구성요소에 “연결되어”있다거나 “접속되어”있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 “직접 연결되어”있다거나 “직접 접속되어”있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless defined otherwise, all terms (including technical and scientific terms) used herein may be used in a sense commonly understood by one of ordinary skill in the art to which this invention belongs. Also, commonly used predefined terms are not ideally or excessively interpreted unless explicitly defined otherwise.

본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함될 수 있다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.In this specification, a singular form may include plural forms unless specifically stated in the phrase. It is noted that the terms "comprises" and / or "comprising" used in the specification are intended to be inclusive in a manner similar to the components, steps, operations, and / Or additions.

확장형 마크업 언어(XML, eXtensible Markup Language)는 화면 출력이 목적이 아닌 내용을 기술하도록 설계된 것으로서, 사용자가 구조를 기술하는데 새로운 태그를 정의하도록 허용할 수 있다. XML은 데이터 구조와 내용, 출력형식이 각각 분리되어 전체 데이터를 정의하므로 데이터 구조의 재활용 및 출력형식의 유연성, 데이터 구조에 대한 검색 기능 등의 데이터 구조화에 따른 다양한 특성을 제공한다는 장점이 있다. XML에 있는 기본단위는 엘리먼트(Element)로, 사용자가 엘리먼트를 자유롭게 정의할 수 있다. 엘리먼트 내부에 텍스트나 엘리먼트 혹은 텍스트와 엘리먼트가 혼합된 형태를 가질 수 있다. 이와 같은 XML은 언어 자체가 지니는 정보 표현의 유연성으로 인터넷상의 정보 표현 및 전자 데이터 교환을 위한 표준이 되었다.Extensible Markup Language (XML) is designed to describe content that is not intended for display, and allows the user to define new tags to describe the structure. XML has the advantage of providing various characteristics according to data structure such as data structure reuse, flexibility of output format, search function of data structure, and so on, since data structure, contents, and output format are defined as whole data. The basic unit in XML is an Element, which allows the user to freely define the element. You can have text, an element, or a mixture of text and elements inside an element. Such XML has become a standard for information representation and electronic data exchange on the Internet due to the flexibility of the information expression of the language itself.

XML은 관리의 용이성 등을 이유로 관계형 데이터베이스에 저장될 수 있으며, 관계형 데이터베이스에 저장된 데이터로부터 XML을 복원할 수 있다.XML can be stored in a relational database for reasons such as ease of management, and can restore XML from data stored in a relational database.

관계형 데이터베이스(RDB, Relational DataBase)는 일련의 정형화된 테이블로 구성된 데이터 항목들의 집합체로서, 상호관련성을 가진 테이블(Table)들의 집합이다. 관계형 데이터베이스는 만들거나 이용하기가 비교적 쉽지만, 무엇보다도 확장이 용이하다는 장점을 가지고 있다. 처음 데이터베이스를 만든 후 관련되는 응용프로그램들을 변경하지 않고도, 새로운 데이터 항목을 데이터베이스에 추가할 수 있다. 데이터베이스의 설계도를 ER(Entity Relationship) 모델이라고 하는데, ER 모델에 따라, 데이터베이스가 만들어진다. 데이터베이스는 하나 이상의 테이블로 구성되며 ER 모델에서 엔티티(Entity)를 기반으로 테이블이 만들어질 수 있다.A relational database (RDB) is a collection of data items consisting of a set of formalized tables, which are sets of related tables. Relational databases are relatively easy to create and use, but most of all have the advantage of being easy to extend. After creating the database for the first time, you can add new data items to the database without changing related applications. The design of the database is called the Entity Relationship (ER) model. Depending on the ER model, a database is created. A database consists of one or more tables and tables can be created based on entities in the ER model.

도 1은 기존 관계형 데이터베이스의 데이터가 저장된 형태인 테이블의 일 예를 나타내는 도면이다.1 is a diagram showing an example of a table in which data of an existing relational database is stored.

본 발명의 이해 및 설명을 돕기 위하여 도 1을 예로 들어, 기존 관계형 데이터베이스의 테이블의 구성요소 별 용어를 설명한다.In order to facilitate the understanding and explanation of the present invention, for example, terms of components of existing relational database tables will be described with reference to FIG.

테이블(Table)은 관계형 데이터베이스의 기본 데이터 저장 구조이며, 하나의 테이블은 여러 개의 행(Row)로 구성될 수 있다. 즉, 도 1에서는 사원정보라는 표 전체가 테이블이다.A table is a basic data storage structure of a relational database, and a table can be composed of a plurality of rows. That is, in FIG. 1, the entire table of employee information is a table.

테이블은 컬럼(Column)과 행(Row)의 2차원 구조로 나타낼 수 있다.A table can be represented by a two-dimensional structure of a column and a row.

행(Row)는 하나의 테이블을 구성하는 다른 유형의 데이터로, 도 1에서는 {1 김철수 차장 300 60}이 하나의 열이 될 수 있으며, {2 이갑돌 부장 400 70}이 다른 열이 될 수 있다.Row is another type of data that constitutes one table. In Fig. 1, {1} Kim Cheol-soo 300 60} can be a single column, {2} have.

행이 가로 방향의 데이터를 의미한다면, 컬럼(Column)은 세로 방향의 데이터를 의미할 수 있다.If the row represents data in the horizontal direction, the column may mean data in the vertical direction.

컬럼(Column)은 세로 방향을 하나의 열(Row)를 구성하는 구성요소이다. 도 1을 예로 들면, {사원명 김철수 이갑돌 홍길동 임꺽정 이순신}이 하나의 컬럼이 될 수 있으며 {직급 차장 부장 대리 과장 이사}가 다른 컬럼이 될 수 있다.A column is a component that constitutes a row in the vertical direction. Taking FIG. 1 as an example, {column name: Kim Cheol-soo Ebagdhdong Hong Gil-dong Lim Jung Jung Yi Soon Shin} can be a column, and {column manager's deputy manager's deputy director} can be another column.

컬럼과 행이 겹치는 하나의 공간을 필드(Field)라고 한다.One space where columns and rows overlap is called a field.

도 2a는 관계형 데이터베이스의 데이터가 관계 구조를 가지고 저장된 형태의 일 예를 나타내는 도면이다.2A is a diagram showing an example of a form in which data of a relational database is stored with a relational structure.

도 2a를 참조하여 기본키(Primary Key)와 외부기(Foreign Key)에 관하여 설명한다.Referring to FIG. 2A, a primary key and a foreign key will be described.

각 행을 한가지 의미로 특정할 수 있는 한 개 이상의 컬럼을 기본키(Primary Key)라 한다. 도 2a를 예로 들면, 사원정보 테이블(1)의 {선수번호}, 부서정보 테이블(2)의 {부서번호}, 지역정보 테이블(3)의 {지역 코드}가 기본키가 될 수 있다.One or more columns that can specify each row in one sense are called primary keys. 2A, for example, {player number} in the employee information table 1, {department number} in the department information table 2, and {area code} in the local information table 3 can be the basic keys.

외부키(Foreign Key)는 다른 테이블의 기본 키로 사용되면서 테이블과의 관계를 연결하는 역할을 하는 컬럼을 의미한다. 도 2a를 예로 들면, 사원정보 테이블(1)과 부서정보 테이블(2)을 연결하는 {부서번호}가 외부키가 될 수 있다. 또한, 도 2a에서 부서정보 테이블(2)과 지역정보 테이블(3)을 연결하는 {지역코드}가 외부키가 될 수 있다.A foreign key is a column that is used as a primary key of another table and is used to connect the relationship with the table. 2A, for example, {department number} connecting the employee information table 1 and the department information table 2 can be a foreign key. In Fig. 2A, {area code} connecting the department information table 2 and the local information table 3 can be a foreign key.

즉, 관계형 데이터베이스의 데이터는 외부키(Foreign Key) 등을 통하여 관계 구조를 가지고 저장될 수 있다. That is, the data of the relational database can be stored with a relational structure through a foreign key or the like.

도 2b는 관계형 데이터베이스에 저장된 데이터의 부모-자식(Parent-Chile) 관계 형태의 관계 구조를 설명하기 위한 일 예를 나타내는 도면이다.FIG. 2B is a diagram illustrating an example of a relationship structure of parent-child relationship types of data stored in a relational database.

구체적으로 도 2b는 도 2a의 데이터의 경우 형성될 수 있는 부모-자식 형태의 관계 구조를 설명하는 일 예이다.Specifically, FIG. 2B illustrates an example of a parent-child relationship structure that can be formed in the case of the data of FIG. 2A.

도 2b를 참조하면, 사원 정보 노드(20)가 사원 번호 노드(21), 사원명 노드(22), 직급 노드(23), 월급 노드(24) 및 부서 정보 노드(25)의 부모(Parent) 노드가 될 수 있다. 또한, 사원 정보 노드(20)는 부모 노드가 없는 최상위 부모 노드인 루트 노드(Root Node)가 될 수도 있다.2B, when the employee information node 20 is a parent of the employee number node 21, the employee name node 22, the rank node 23, the salary node 24, and the department information node 25, Node. In addition, the employee information node 20 may be a root node which is the highest parent node having no parent node.

사원 번호 노드(21), 사원명 노드(22), 직급 노드(23), 월급 노드(24) 및 부서 정보 노드(25)는 각각 사원 정보 노드(20)의 자식(Child) 노드임과 동시에, 각각의 노드의 하위 노드의 부모(Parent) 노드가 될 수도 있다.The employee number node 21, the employee name node 22, the rank node 23, the salary node 24 and the department information node 25 are child nodes of the employee information node 20, It may be a parent node of a child node of each node.

예를 들어, 부서정보 노드(25)의 자식 노드로 부서명 노드(25_1) 및 지역코드 노드(25_2)가 존재할 수 있다. 즉, 부서정보 노드(25)는 부서명 노드(25_1) 및 지역코드 노드(25_2)의 부모 노드가 될 수 있다.For example, a department name node 25_1 and a region code node 25_2 may exist as child nodes of the department information node 25. That is, the department information node 25 may be the parent node of the department name node 25_1 and the region code node 25_2.

부서명 노드(25_1) 및 지역코드 노드(25_2)도 각각 부모 노드가 될 수도 있다. 예를 들어, 도 2b서, 지역코드 노드(25_2)는 지역명 노드(25_2_1)의 부모 노드가 될 수 있고, 지역명 노드(25_2_1)는 지역코드 노드(25_2)의 자식 노드가 될 수 있다.The department name node 25_1 and the area code node 25_2 may also be parent nodes. For example, in FIG. 2B, the area code node 25_2 may be a parent node of the area name node 25_2_1, and the area name node 25_2_1 may be a child node of the area code node 25_2.

도 3은 본 발명의 일 실시예에 따른 관계형 데이터베이스의 테이블 형태의 일 예를 나타내는 도면이다.3 is a diagram showing an example of a table format of a relational database according to an embodiment of the present invention.

도 3을 참조하면, 본 발명의 일 실시예에 따른 관계형 데이터베이스의 테이블 형태는 기존 관계형 데이터베이스의 테이블에서 변환 참조 컬럼(10)이라는 컬럼(Colum)이 포함된 것이다.Referring to FIG. 3, a table format of a relational database according to an embodiment of the present invention includes a column (Colum) called a transform reference column 10 in a table of an existing relational database.

변환 참조 컬럼(10)은 도 3과 같이 컬럼(Colum)으로 나타나는 것만은 아니며, 테이블의 형태에 따라서, 행(Row)으로도 나타날 수도 있다. 즉, 변환 참조 컬럼(10)은 발명의 이해를 돕기 위한 명칭일 뿐, 행(Row)으로 형성된 공간의 의미도 포함될 수 있다.The conversion reference column 10 may not only be represented by a column (Colum) as shown in FIG. 3, but may also be represented by a row, depending on the type of the table. That is, the conversion reference column 10 is a name for facilitating understanding of the invention, and may also include the meaning of a space formed by a row.

변환 참조 컬럼(10)은 XML 변환 과정시 동적으로 변경되는 적어도 하나의 구문을 포함하는 구문을 포함할 수 있다. 변환 참조 컬럼(10)에 입력되는 정보 또는 저장되는 사용자에 의하여 입력되는 정보일 수 있다.The transformation reference column 10 may include a syntax that includes at least one syntax that changes dynamically during the XML transformation process. And may be information input to the conversion reference column 10 or information input by a user to be stored.

변환 참조 컬럼(10)에 입력 또는 저장되는 적어도 하나의 구문은 로직(Logic)이 포함된 데이터일 수 있다.The at least one syntax that is input or stored in the transformation reference column 10 may be logic-included data.

구체적으로, 로직이 포함된 데이터는 조건문, 반복문 및 변수값 처리 중 적어도 어느 하나의 로직이 포함된 데이터일 수 있다.Specifically, the data including the logic may be data including at least any one of conditional statements, loop statements, and variable value processing.

보다 구체적으로 조건문의 예로는 조건을 지정하는 if문, if else 문, 조건에 따라서 원하는 결과 값으로 옮겨가는 switch ~ case문 등 다양하게 존재할 수 있다.More specifically, an example of a conditional statement may be an if-statement specifying a condition, an if-else statement, or a switch-case statement shifting to a desired result according to a condition.

반복문으로는 수치 등에 의한 반복인 for문, 조건에 의한 반복인 while문, loop문 등 다양하게 존재할 수 있다.There are various types of iterations such as a for statement that is a repetition by numerical value, a while statement which is a conditional iteration, and a loop statement.

변수값 처리는 입력 받은 정보에 따라 변수값이 결정되면, 결정된 변수값이 지정하고 있는 출력값을 출력 처리하는 것을 포함할 수 있다.The variable value processing may include outputting the output value designated by the determined variable value when the variable value is determined according to the input information.

변수값을 결정하데 이용될 수 있는 입력 받은 정보는 사용자 인터페이스(UI, User Interface)를 통하여 사용자가 UI를 조작한 정보 또는 입력한 정보일 수 있다.The input information that can be used to determine the variable value may be the information that the user has manipulated the UI through the user interface (UI) or the input information.

예를 들면, 사용자 UI 창에서 선택한 위치나 선택한 버튼 등에 따라서 변수값이 상이하게 결정될 수 있고, 상이한 출력값으로 처리될 수 있다.For example, variable values can be determined differently depending on the position selected in the UI window, the selected button, and the like, and can be processed with different output values.

변수값 처리와 마찬가지로, 조건문과 반복문의 경우에도, UI를 통하여 사용자가 UI를 조작한 정보 또는 입력한 정보를 이용하여 조건문이나 반복문의 로직 처리를 수행할 수 있다.As in the case of variable value processing, even in the case of conditional statements and loop statements, the user can perform logical processing of conditional statements or loop statements using information manipulated by the user through the UI or inputted information.

즉, 조건문의 조건이나 반복문의 수치나 조건이 사용자가 조작한 정보 또는 입력한 정보를 기반으로 설정되고 변경될 수 있다.That is, the condition of the condition statement or the numerical value or condition of the loop statement can be set and changed based on the information manipulated by the user or the information inputted.

계속하여 도 3을 참조하여 구체적으로 변환 참조 컬럼(10)의 일 예 및 효과를 설명하면, 변환 참조 컬럼(10) 중에서 ID가 N3고 Tag ID가 T3이며, Parent ID가 N1인 행(Row)에 해당하는 필드에는 동적 변경이 가능한 로직이 포함된 데이터의 일 예로 하기와 같은 데이터가 포함될 수 있다.3, a specific example of the transformed reference column 10 will be described. In the transformed reference column 10, a row having an ID N3, a Tag ID T3, and a Parent ID N1, Field may include data such as the following as an example of data including logic capable of dynamically changing.

#if(조건A)#if (Condition A)

<SubNodeA/> <SubNodeA />

#end#end

#if(조건B)#if (condition B)

<SubNodeB/> <SubNodeB />

#end#end

상기 데이터는 조건문 로직이 포함된 데이터로, 조건이 A이면, XML로 SubNodeA를 변환하여 출력하고, 조건이 B이면 XML로 SubNodeB를 변환하여 출력하고, 조건이 A와 B를 둘 다 만족하면 XML로 SubNodeA와 SubNodeB를 변환하여 출력하라는 의미이다.If the condition is A, the data is converted into XML and outputted. If the condition is B, the data is converted to XML and outputted. If the condition satisfies both A and B, the data is converted into XML It means to convert and output SubNodeA and SubNodeB.

SubNodeA와 SubNodeB는 미리 설정되거나, 본 발명에 따른 관계형 데이터베이스에 저장된 노드일 수 있다.SubNode A and SubNode B may be preset or nodes stored in a relational database according to the present invention.

조건은 사용자의 UI 조작이나 입력에 의하여 결정될 수도 있다.The condition may be determined by user UI manipulation or input.

계속하여, 도 3에서 Node(30) 테이블의 내용을 XML로 변환하면 도 3의 31과 같은 XML 문서가 될 수 있다.Subsequently, in FIG. 3, when the contents of the table of the Node 30 are converted into XML, an XML document such as 31 in FIG. 3 can be obtained.

도 3의 31과 같은 XML 문서를 참조하면, 조건이 A이면, XML로 SubNodeA를 변환하여 출력하고, 조건이 B이면 XML로 SubNodeB를 변환하여 출력하고, 조건이 A와 B를 둘 다 만족하면 XML로 SubNodeA와 SubNodeB를 변환하여 출력하라는 의미이다. 즉, 본 발명의 일 실시예에 따른 관계형 데이터베이스에 변환 참조 컬럼(10)에 로직을 이용하여 저장된 내용과 동일한 내용이다.Referring to the XML document as 31 in FIG. 3, if the condition is A, the SubNodeA is converted into XML and outputted. If the condition is B, the SubNodeB is converted into XML and outputted. If the condition satisfies both A and B, To convert SubNodeA and SubNodeB to output. That is, the same contents as those stored using the logic in the transformation reference column 10 in the relational database according to an embodiment of the present invention.

기존의 관계형 데이터베이스의 경우에는 상기 XML 문서의 내용이 모두 테이블에 입력되고 저장되어야 한다.In the case of an existing relational database, the contents of the XML document must be all entered and stored in the table.

따라서, 기존의 관계형 데이터베이스에 비하여 변환 참조 컬럼(10)가 존재하는 본 발명의 일 실시예에 따른 관계형 데이터베이스는 동일한 내용이 자치하는 공간이 감소될 수 있다.Thus, the relational database according to an embodiment of the present invention in which the transformed reference column 10 exists in comparison with the existing relational database can be reduced in space where the same contents are autonomous.

앞서 설명한 바와 같이 변환 참조 컬럼(10)은 도 3과 같이 컬럼(Colum)으로 나타나는 것만은 아니며, 테이블의 형태에 따라서, 행(Row)으로 나타날 수도 있다. 즉, 도 1과 도 2a를 참조하여 설명한 테이블에서 행(Row)과 컬럼(Column)의 역할이 체인지되는 경우에는 변환 참조 컬럼(10)은 행(Row)으로 나타날 수도 있다.As described above, the conversion reference column 10 is not limited to a column (Colum) as shown in FIG. 3, and may be represented by a row according to the type of the table. In other words, when the roles of a row and a column are changed in the table described with reference to FIG. 1 and FIG. 2A, the transformed reference column 10 may appear as a row.

도 4 내지 8을 참조하여, 보다 구체적으로 본 발명의 일 실시예에 따른 관계형 데이터베이스 및 변환 참조 컬럼(10)에 관하여 설명한다.Referring to Figures 4-8, more specifically, the relational database and transform reference column 10 according to an embodiment of the present invention will be described.

도 4 내지 도 6은 화면(XML 구조) 내용을 관계 구조를 가지고 본 발명의 일 실시예에 따른 관계형 데이터베이스에 저장되는 과정의 일 예를 설명하기 위한 도면이다.4 to 6 are views for explaining an example of a process of storing contents of a screen (XML structure) in a relational database according to an embodiment of the present invention with a relational structure.

도 4를 참조하면, ComA라는 명칭의 XML로 구성된 컴포넌트(Component)(41)를 A하위에 배치하는 모습니다. 도 4에서 A, B, C, D가 각각 배치되어 있는 화면은 미리 설정된 양식(Form)(40)이 될 수 있다.Referring to FIG. 4, a component (41) composed of XML named ComA is arranged in the A subordinate. A screen in which A, B, C, and D are respectively arranged in FIG. 4 may be a preset form (40).

도 5를 참조하면, 도 4의 XML 구조 내용을 관계 구조(Parent-Child) 형태로 변경한 모습이다.Referring to FIG. 5, the XML structure of FIG. 4 is changed to a Parent-Child form.

도 5에서 R, A, B, C, D, A1 각각을 노드로 볼 수 있으며, R:Form이 루트 노드(Root Node)이며, ComA(41)가 A의 자식 노드(Child Node)인 A1노드(41)로 추가된 것을 볼 수 있다.5, the R: Form is a root node, and the ComA 41 is a child node of A, which is a child node of A, (41). &Lt; / RTI &gt;

도 6을 참조하면, 도 5의 관계 구조 내용이 관계형 데이터베이스에 테이블 형태로 저장된 예를 볼 수 있다.Referring to FIG. 6, an example in which the contents of the relationship structure of FIG. 5 is stored in a relational database in the form of a table can be seen.

도 6에서 노드 마스터(Node Master)(61)는 XML 태그의 기본정보를 저장하고 있는 마스터 테이블이다. 즉, 노드 마스터(61)는 XML 태그의 기본 정보를 한 곳에서 일괄 저장하도록 하여 중복데이터를 최소화하는 데이터 구성기법일 수 있다.In FIG. 6, a node master 61 is a master table storing basic information of an XML tag. That is, the node master 61 may be a data structure technique for minimizing redundant data by collectively storing the basic information of the XML tag in one place.

예를 들면, 노드 마스터(61)에서 Tag ID 값이 T1은 <Form> 형식으로 된 XML 태그에 대한 정보를 저장하고 있으며, 다른 노드에서는 T1이라는 ID값만 있으면, <Form>태그 내용 전체를 저장하지 않아도 되므로 데이터 중복 보관을 줄여줄 수 있다.For example, in the node master 61, the tag ID value T1 stores information about the XML tag in the form <Form>. In other nodes, if the ID value is T1, the entire contents of the <Form> tag are not stored You do not have to worry about data redundancy.

계속하여 도 6을 참조하면, 노드 마스터(61)는 도 5에 존재하는 태그(Tag)인 Form, Div, ComA를 각각 Tag ID T1, T2, T3로 저장하고 있음을 볼 수 있다. 또한, 노드 마스터(61)에는 변환 참조 컬럼(10)가 존재하여 관리자가 사용자의 UI 조작 등 다양한 이유에 따라서 데이터의 동적 변경이 필요한 경우 변환 참조 컬럼(10)에 로직 구문을 입력할 수 있다.Referring to FIG. 6, the node master 61 stores Form, Div, and ComA, which are tags in FIG. 5, as Tag IDs T1, T2, and T3, respectively. In addition, the node master 61 can input the logic syntax into the transformation reference column 10 when the transformation reference column 10 exists and the administrator needs to change the data dynamically for various reasons such as UI operation of the user.

즉, 변환 참조 컬럼(10)의 내용은 관계형 데이터베이스 또는 XML의 관리자에 의하여 입력될 수 있으며, 또는 메모리상에 저장된 별도의 파일을 이용하여 내용이 결정될 수도 있다. 메모리상에 저장된 별도의 파일은 어떤 파일인지에 대한 규칙이나 정의가 미리 설정될 수 있다.That is, the contents of the transformation reference column 10 may be input by a relational database or an administrator of the XML, or the content may be determined using a separate file stored in the memory. A rule or a definition of what file is a separate file stored in the memory can be preset.

즉, 도 6에서 하기와 같은 조건문인 if문을 이용한 로직 구문을 관리자가 변환 참조 컬럼(10)에 입력할 수 있다.That is, an administrator can input a logic statement using an if statement, which is a conditional statement as shown in FIG. 6, in the conversion reference column 10.

#if(조건A)#if (Condition A)

<SubNodeA/> <SubNodeA />

#end#end

#if(조건B)#if (condition B)

<SubNodeB/> <SubNodeB />

#end#end

즉, 관리자는 데이터의 동적 변경이 필요한 경우, 변환 참조 컬럼(10)에 조건문, 반복문 및/또는 변수값 처리를 이용하여 로직에 따라서 출력값이 동적으로 변경될 수 있는 데이터를 입력할 수 있다.That is, the administrator can input data in which the output value can be changed dynamically according to logic using conditional statements, loop statements, and / or variable value processing in the conversion reference column 10 when dynamic change of data is required.

관리자가 변환 참조 컬럼(10)에 로직에 따라서 출력값이 동적으로 변경될 수 있는 데이터를 입력할 수 있음으로써, 기존 관계형 데이터베이스와는 달리 데이터베이스의 부모-자식 관계의 변화 없이 로직에 따라서 내용을 변경할 수 있다. 또한, 관리자는 변환 참조 컬럼(10)를 이용하여 로직에 따라 관계 구조를 변경하거나, 문자열로 저장, 노드 문자 추가 또는 자식 노드를 문자열로만 추가 보관하는 등 다양한 형태로 유연성 있는 활용이 가능하다.By allowing the administrator to enter data that can dynamically change output values according to logic in the transformation reference column (10), it is possible to change the contents according to logic without changing the parent-child relationship of the database, unlike existing relational databases. have. In addition, the administrator can flexibly utilize the transformation reference column (10) in various forms, such as changing the relationship structure according to logic, storing it as a string, adding a node character, or storing a child node only as a string.

도 7과 8은 변환 참조 컬럼(10)가 존재하는 노드의 예들을 나타내는 도면이다.7 and 8 are diagrams showing examples of nodes in which the transformed reference column 10 is present.

도 7을 참조하면 변환 참조 컬럼(10)은 개별 노드 각각에 포함될 수 있다. 변환 참조 컬럼(10)가 개별 노드 각각에 포함되는 경우, 개별 노드 별로 변환 참조 컬럼(10)의 내용을 수정할 수 있다.Referring to FIG. 7, the transform reference column 10 may be included in each of the individual nodes. If the transformed reference column 10 is included in each of the individual nodes, the contents of the transformed reference column 10 can be modified for each individual node.

구체적으로, 초기에는 노드 마스터(61)의 변환 참조 컬럼(10)의 내용이 개별 노드 각각에 복사되고, 복사된 이후에 개별 노드별로 각각의 노드에 존재하는 변환 참조 컬럼(10)를 관리할 수 있다.Specifically, initially, the contents of the transformation reference column 10 of the node master 61 are copied to each of the individual nodes, and after the copying, the transformation reference column 10 existing in each node for each individual node can be managed have.

보다 구체적으로 예를 들면, 노드 마스터(61)의 변환 참조 컬럼(10)의 내용이 개별 노드 각각에 복사되는 시점은 컴포넌트(Component)들이 템플릿(Template)에 배치될 때 복사될 수 있다.More specifically, for example, the time at which the contents of the transformation reference column 10 of the node master 61 is copied to each of the individual nodes may be copied when the components are placed in a template.

도 8을 참조하면, 도 7과는 달리 변환 참조 컬럼(10)은 노드 마스터(61)에서 가지고 있으며, 태그 명을 기준으로 변환 참조 컬럼(10)의 내용을 일괄 수정만 가능할 수 있다. 즉, 도 8과 같이 변환 참조 컬럼(10)가 노드 마스터(61)에만 존재하는 경우, 노드 마스터(61)의 Tag ID 기준으로 변환 참조 컬럼(10)의 내용을 변경 시 변경되는 내용에 해당되는 각 노드에 일괄적으로 적용될 수 있다.Referring to FIG. 8, unlike FIG. 7, the transformed reference column 10 is held by the node master 61 and only the contents of the transformed reference column 10 can be collectively modified based on the tag name. That is, when the transformed reference column 10 exists only in the node master 61 as shown in FIG. 8, the transformed reference column 10 corresponding to the contents changed when the contents of the transformed reference column 10 is changed on the basis of the Tag ID of the node master 61 And can be applied collectively to each node.

도 9는 본 발명의 일 실시예에 따른 데이터를 XML로 변환하는 장치에 관한 블록도이다.9 is a block diagram of an apparatus for converting data into XML according to an embodiment of the present invention.

도 9를 참조하면, 본 발명의 일 실시예에 따른 데이터를 XML로 변환하는 장치(100)는 객체 변환부(110) 및 XML 변환부(130)를 포함할 수 있으며, 객체 결정부(120)를 더 포함할 수 있다.Referring to FIG. 9, an apparatus 100 for converting data into XML according to an embodiment of the present invention may include an object conversion unit 110 and an XML conversion unit 130, As shown in FIG.

객체 변환부(110)는 관계형 데이터베이스(200)에 저장된 데이터를 객체로 변환할 수 있다.The object conversion unit 110 may convert the data stored in the relational database 200 into an object.

상기 관계형 데이터베이스(200)는 본 발명의 일 실시예에 따른 관계형 데이터베이스(200)로 변환 참조 컬럼(10)를 포함할 수 있다.The relational database 200 may include a transformation reference column 10 in a relational database 200 according to one embodiment of the present invention.

XML 변환부(130)는 변환된 객체를 XML로 변환할 수 있다.The XML conversion unit 130 may convert the converted object into XML.

구체적으로 XML 변환부(130)는 변환 참조 컬럼(10)에 포함된 구문을 XML로 변환하고, XML 변환부(130)에 의하여 변환된 XML로 이루어진 문서에는 상기 변환 참조 컬럼(10)에 포함된 구문을 상기 XML로 변환한 정보를 포함할 수 있다.More specifically, the XML conversion unit 130 converts the syntax included in the conversion reference column 10 into XML, and the document composed of the XML converted by the XML conversion unit 130, And may include information obtained by converting a syntax into the XML.

보다 구체적으로, 본 발명에 따른 관계형 데이터베이스(200)에는 미리 정의된 용어 및 미리 정의된 용어에 대응되는 데이터가 저장될 수 있다.More specifically, the relational database 200 according to the present invention may store data corresponding to predefined terms and predefined terms.

사용자, 관리자 등에 의하여 변환 참조 컬럼(10)에 입력되거나 저장될 수 있는 적어도 하나의 구문 중 미리 정의된 용어에 해당하는 것이 있으면, XML 변환부(130)는 관계형 데이터 베이스(200)에 저장된 상기 미리 정의된 용어에 해당하는 데이터를 이용하여 변환 참조 컬럼(10)에 포함된 구문을 XML으로 변환할 수 있다.If there is a predefined term among at least one phrase that can be input or stored in the conversion reference column 10 by a user, an administrator, or the like, the XML conversion unit 130 converts the pre- The syntax contained in the transformation reference column 10 can be converted into XML using data corresponding to the defined term.

관계형 데이터베이스(200)에 저장된 미리 정의된 용어 및 미리 정의된 용어에 대응되는 데이터는 관계형 데이터베이스(200)에 저장되거나 관계형 데이터베이스(200)에 연결된 별도의 저장장치에 저장될 수도 있다.The predefined terms stored in the relational database 200 and the data corresponding to the predefined terms may be stored in the relational database 200 or in a separate storage device connected to the relational database 200. [

또한, XML 변환부(130)는 변환 참조 컬럼(10)에 입력된 데이터 중 미리 정의된 용어에 해당하는 것이 있으면, 상기 미리 정의된 용어에 해당하는 용어에 대응되는 데이터 및 상기 변환된 객체들의 부모-자식(Parent-Child) 노드 관계를 이용하여 변환 참조 컬럼(10)에 포함된 구문을 XML로 변환할 수 있다.In addition, if there is a predefined term in the data input to the transformation reference column 10, the XML transformation unit 130 transforms the data corresponding to the term corresponding to the predefined term, Using the parent-child node relation, the syntax contained in the transformation reference column (10) can be converted into XML.

예를 들면, 특정 노드의 하위 자식 노드를 모두 나타내는 미리 정의된 용어로 '$childnode'를 정의하고, 미리 정의된 용어 및 해당 미리 정의된 용어에 해당하는 데이터를 저장할 수 있다.For example, '$ childnode' can be defined as a predefined term representing all child nodes of a particular node, and data corresponding to predefined terms and corresponding predefined terms can be stored.

미리 정의된 용어에 해당하는 데이터는 관계형 데이터베이스(200)에 저장된 노드들 간의 부모-자식(Parent-Child) 관계를 이용하는 데이터 일 수 있다. 예를 들면, 미리 정의된 용어가 '$childnode'인 경우, '$childnode'에 해당하는 데이터는 노드들 간 부모-자식 관계를 이용하여 특정 노드의 하위 자식 노드의 식별자에 관한 데이터일 수 있다.The data corresponding to the predefined term may be data using a parent-child relationship between the nodes stored in the relational database 200. For example, if the predefined term is '$ childnode', the data corresponding to '$ childnode' may be data related to the identifier of a child node of a particular node using a parent-child relationship between the nodes.

미리 정의된 용어 및 미리 정의된 용어에 해당하는 데이터는 관리자에 의하여 설정될 수 있다.Data corresponding to predefined terms and predefined terms can be set by the administrator.

또한, XML 변환부(130)는 변환 참조 컬럼(10)에 조건문, 반복문 및/또는 변수값 처리 등으로 이루어진 로직(Logic)이 포함된 경우, 로직을 해석하여 변환 참조 컬럼(10)에 포함된 구문을 XML로 변환할 수 있다. 조건문, 반복문 및/또는 변수값 처리 등으로 이루어진 로직(Logic)은 상기 로직을 나타내는 미리 정의된 용어 및 로직을 해석하는데 필요한 데이터가 관계형 데이터베이스(200)에 저장될 수 있다.If the transformed reference column 10 includes logic such as conditional statements, looped statements, and / or variable value processing, the XML transformation unit 130 may analyze the logic and convert the logic included in the transformed reference column 10 You can convert the syntax to XML. Logic consisting of conditional statements, loop statements, and / or variable value processing, etc., can be stored in the relational database 200 with the data needed to interpret the predefined terms and logic representing the logic.

XML 변환부(130)는 변환 참조 컬럼(10)에 입력 또는 저장된 로직을 해석하는 과정에서 사용자 인터페이스 제공 장치(300)의 UI를 통하여 입력되는 사용자의 조작 정보나 입력 정보에 따라서 조건이나 수치를 결정하여 로직을 해석할 수도 있다.The XML conversion unit 130 determines conditions or numerical values according to the user's operation information or input information input through the UI of the user interface providing apparatus 300 in the process of analyzing the logic inputted or stored in the conversion reference column 10 To interpret the logic.

XML 변환부(130)는 부모 노드(Parent Node)를 XML로 변환하기 전에, 부모 노드의 자식 노드(Child Node)부터 상기 XML로 변환을 수행할 수 있다.The XML conversion unit 130 may convert the parent node's child node to XML before converting the parent node to XML.

즉, XML 변환부(130)는 리프 노드(Leaf Node)부터 XML 변환을 시작하여 루트 노드(Root Node)까지 아래에서 위로 향하는 방향으로 순차적으로 XML 변환을 수행할 수 있다.That is, the XML transformation unit 130 may start XML transformation from a leaf node and sequentially perform XML transformation from the bottom node to the root node.

객체 결정부(120)는 객체 변환부(110)에 의하여 변환된 객체 중 XML로 변환할 객체를 결정할 수 있다. 즉, 관리자의 필요성, 사용자의 입력 등에 따라서, 모든 객체가 아닌 일부 객체만 XML로 변환할 경우, 관리자의 필요성이나 사용자의 입력 등을 이용하여 객체 결정부(120)가 XML로 변환할 객체를 결정할 수 있다. The object determining unit 120 may determine an object to be converted into XML among the objects converted by the object converting unit 110. [ That is, when converting only some objects, not all objects, to XML according to the necessity of an administrator, a user's input, etc., the object determining unit 120 determines an object to be converted into XML by using an administrator's need or a user's input .

객체 결정부(120)가 XML로 변환할 객체를 결정하면, XML 변환부(130)는 객체 결정부(120)에 의하여 결정된 객체들만 XML로 변환할 수 있으며, 객체 결정부(120)에 의하여 결정된 객체들에 포함된 변환 참조 컬럼(10)의 내용만 로직 해석을 수행하고 XML로 변환할 수 있다.When the object determining unit 120 determines an object to be converted into XML, the XML converting unit 130 can convert only the objects determined by the object determining unit 120 into XML, and the object determining unit 120 determines Only the contents of the transformation reference column (10) contained in the objects can be subjected to logic analysis and transformed into XML.

또한, XML 변환부(130)는 객체 결정부(120)에 의하여 결정된 객체 중 최하단의 자식 노드부터 XML 변환을 위한 해석을 시작하여 객체 결정부(120)에 의하여 결정된 객체 중 최상단의 부모 노드까지 아래에서부터 위로 순차적으로 XML 변환을 수행할 수 있다.The XML transformation unit 130 starts the analysis for the XML transformation from the child node at the bottom of the objects determined by the object determination unit 120, and then, at the bottom of the object determined by the object determination unit 120, XML conversion can be performed sequentially from top to bottom.

도 10은 본 발명의 일 실시예에 따른 데이터를 XML로 변환하는 방법에 관한 흐름도이다.10 is a flowchart illustrating a method of converting data into XML according to an embodiment of the present invention.

도 10을 참조하면, 본 발명의 일 실시예에 따른 데이터를 XML로 변환하는 방법을 설명하면, 객체 변환부(110)가 본 발명의 일 실시예에 따른 관계형 데이터베이스(200)에 저장된 데이터를 객체로 변환할 수 있다(S1010 단계).Referring to FIG. 10, a method of converting data into XML according to an embodiment of the present invention will be described. The object transformation unit 110 transforms data stored in the relational database 200 according to an embodiment of the present invention into an object (Step S1010).

객체 결정부(120)가 XML로 변환할 노드 객체를 결정할 수 있다(S1020 단계).The object determining unit 120 may determine a node object to be converted into XML (step S1020).

XML 변환부(130)가 객체 결정부(120)에 의하여 결정된 노드 객체를 XML로 변환할 수 있다(S1030 단계).The XML conversion unit 130 may convert the node object determined by the object determination unit 120 into XML (step S1030).

XML 변환부(130)에 의하여 변환된 XML은 출력될 수 있다(S1040 단계).The XML converted by the XML conversion unit 130 may be output (step S1040).

도 11은 XML 변환부(130)가 객체를 XML로 변환하는 구체적인 과정의 일 예를 나타내는 흐름도이다.11 is a flowchart illustrating an example of a concrete process of the XML conversion unit 130 converting an object into XML.

도 11을 참조하면, XML 변환부(130)는 변환 대상이 되는 노드 객체에서 자식 노드 리스트를 추출할 수 있다(S1031 단계).Referring to FIG. 11, the XML transformation unit 130 may extract a child node list from a node object to be transformed (step S1031).

XML 변환부(130)는 자식 노드를 XML 변환할 수 있다(S1032 단계).The XML conversion unit 130 can perform XML conversion on the child node (step S1032).

구체적으로 XML 변환부(130)는 자식 노드 중 최하단에 존재하는 자식 노드부터 XML 변환을 수행하고, 최하단 노드의 부모 노드의 XML 변환을 수행한 후, 최하단 노드의 부모 노드의 부모 노드를 XML 변환을 수행하는 식으로, 아래에서 위로 향하는 방향으로 순차적으로 XML변환을 수행할 수 있다.Specifically, the XML transformation unit 130 performs XML transformation from a child node existing at the bottom of the child nodes, performs XML transformation of the parent node of the bottom node, and then performs XML transformation on the parent node of the parent node of the bottom node By doing so, you can perform XML conversions sequentially from bottom to top.

XML 변환부(130)가 자식 노드에서 부모 노드로 향하는 방향으로 XML 변환을 수행하는 과정에서, 각각의 자식 노드들에서도 XML 변환이 수행되어야 하는바, S1032 단계를 재귀적으로 호출하여 처리할 수도 있다.Since the XML transformation unit 130 performs XML transformation in the direction from the child node to the parent node, the XML transformation must be performed also in each child node, and the step S1032 may be recursively called and processed .

XML 변환부(130)가 자식 노드에서 부모 노드로 향하는 방향으로 XML 변환을 수행하는 이유는, 부모 노드에서 자식 노드의 정보를 이용하여 로직을 해석하는 경우가 존재할 수 있기 때문이다. 이러한 이유로 인하여, XML 변환부(130)는 자식 노드에서 부모 노드로 향하는 방향으로 XML 변환을 수행하는 것이 XML 변환의 속도 향상 및 XML 변환의 오류를 감소시킬 수 있다.The reason why the XML transformation unit 130 performs the XML transformation in the direction from the child node to the parent node is that there may exist a case where the logic is analyzed using the information of the child node in the parent node. For this reason, the XML transformation unit 130 can perform the XML transformation in the direction from the child node to the parent node, thereby improving the speed of the XML transformation and reducing errors in the XML transformation.

또한, 본 발명은 변환 참조 컬럼(10)에 의하여 로직이 포함된 데이터가 존재할 수 있고 로직 해석을 위하여 자식 노드의 정보가 필요할 수 있기 때문에, XML 변환부(130)는 자식 노드에서 부모 노드로 향하는 방향으로 XML 변환을 수행할 수 있다.In addition, since the present invention can have data including logic by the transform reference column 10 and information of the child node may be needed for logic analysis, the XML transform unit 130 transforms the data from the child node to the parent node You can do XML conversion in the direction of

XML 변환부(130)는 자식 노드 리스트에 존재하는 모든 노드를 XML로 변환하면(S1033 단계), Start 태그 XML을 추가하고 변환 참조 컬럼(10)의 데이터를 변환한 XML을 추가할 수 있다(S1034 단계).The XML conversion unit 130 may add all the nodes present in the child node list to XML (step S1033), add the start tag XML and convert the data of the transformation reference column 10 to XML (S1034 step).

XML 변환부(130)는 변환 참조 컬럼(10)의 데이터에 포함된 로직을 해석하여, XML로 변환할 수 있다. 예를 들면, 도 3에서 변환 참조 컬럼(10)에 포함된 if문을 이용한 로직이 XML 변환부(130)에 의하여 변환된 문서는 도 3의 31과 같을 수 있다.The XML conversion unit 130 interprets the logic included in the data of the conversion reference column 10 and converts the logic into XML. For example, the document converted from the logic using the if statement included in the conversion reference column 10 in FIG. 3 by the XML conversion unit 130 may be the same as 31 in FIG.

XML 변환부(130)는 변환 참조 컬럼(10)에 포함된 내용을 XML로 변환한 후 앞서 자식 노드를 XML로 변환한 내용에 포함시키고 End 태그 XML을 추가할 수 있다(S1035 단계 및 S1036 단계).The XML conversion unit 130 may convert the content included in the transformation reference column 10 into XML, add the child node to the XML-converted content and add the end tag XML (steps S1035 and S1036) .

본 발명의 일 실시예에 따른 관계형 데이터베이스(200)는 XML 내용을 내용 그대로 저장하는 것이 아니라, 로직으로 변환하여 저장할 수 있는 바, 관계형 데이터베이스(200)의 공간의 소모를 감소시킬 수 있으며, 데이터베이스 테이블 레코드의 수도 감소시킬 수 있다.The relational database 200 according to an embodiment of the present invention can reduce the consumption of space of the relational database 200 because the XML contents can be converted into logic and stored instead of storing the contents as they are, The number of records can be reduced.

또한, 본 발명의 일 실시예에 따른 데이터를 XML로 변환하는 장치 및 방법은 XML 내용을 동적으로 변환 처리를 할 수 있다. 즉, 본 발명의 일 실시예에 따른 데이터를 XML로 변환하는 장치 및 방법은 조건문, 반복문 또는 변수값 처리 등의 로직에 따라서 XML 내용을 용이하게 동적으로 변환할 수 있다.In addition, an apparatus and method for converting data to XML according to an embodiment of the present invention can dynamically convert XML contents. That is, an apparatus and method for converting data to XML according to an embodiment of the present invention can easily and dynamically convert XML contents according to logic such as conditional statements, loop statements, or variable value processing.

도 12는 본 발명의 또 다른 실시예에 따른 데이터를 XML로 변환하는 장치가 가질 수 있는 구성 예시를 나타낸 도면이다.FIG. 12 is a diagram illustrating an exemplary configuration of an apparatus for converting data into XML according to another embodiment of the present invention. Referring to FIG.

도 12를 참조하면, 본 발명의 일 실시예에 따른 데이터를 XML로 변환하는 장치(100)는 시스템 버스(101), CPU(102), 메모리(103), 스토리지(104) 및 시계열 데이터 입력용 클라이언트 장치와의 통신을 위한 네트워크 인터페이스(105)를 포함할 수 있다. 상술한 본 발명의 일 실시예의 데이터를 XML로 변환하는 방법을 구현하는 컴퓨터 프로그램 코드는 스토리지(105)에 저장되어 메모리(103)에 로드 되고 CPU(102)에 의해 실행될 수 있다.도 9의 각 구성요소는 소프트웨어(software) 또는, FPGA(field-programmable gate array)나 ASIC(application-specific integrated circuit)과 같은 하드웨어(hardware)를 의미할 수 있다. 그렇지만 상기 구성요소들은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 어드레싱(addressing)할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 실행시키도록 구성될 수도 있다. 상기 구성요소들 안에서 제공되는 기능은 더 세분화된 구성요소에 의하여 구현될 수 있으며, 복수의 구성요소들을 합하여 특정한 기능을 수행하는 하나의 구성요소로 구현할 수도 있다.Referring to FIG. 12, an apparatus 100 for converting data into XML according to an embodiment of the present invention includes a system bus 101, a CPU 102, a memory 103, a storage 104, And a network interface 105 for communication with the client device. The computer program code embodying the method of converting data of the above-described embodiment of the present invention into XML may be stored in the storage 105 and loaded into the memory 103 and executed by the CPU 102. [ The component may be software or hardware such as a field-programmable gate array (FPGA) or an application-specific integrated circuit (ASIC). However, the components are not limited to software or hardware, and may be configured to be in an addressable storage medium and configured to execute one or more processors. The functions provided in the components may be implemented by a more detailed component or may be implemented by a single component that performs a specific function by combining a plurality of components.

이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, You will understand. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive.

Claims (14)

관계형 데이터베이스(RDB, Relational Database)에 저장된 데이터를 확장형 마크업 언어(XML, eXtensible Markup Language)로 복원하는 방법에 있어서,
상기 관계형 데이터베이스에 저장된 데이터를 객체로 변환하는 (a)단계; 및
상기 변환된 객체를 XML로 변환하는 (b)단계를 포함하되,
상기 관계형 데이터베이스의 데이터 저장 테이블은 상기 (b)단계에서 XML 변환 과정시 동적으로 변경되는 적어도 하나의 구문을 포함하는 변환 참조 컬럼을 포함하는, 데이터를 XML로 변환하는 방법.
1. A method for restoring data stored in a relational database (RDB) into an extensible markup language (XML)
(A) converting data stored in the relational database into an object; And
And (b) converting the transformed object into XML,
Wherein the data storage table of the relational database includes a transformation reference column including at least one statement that is dynamically changed in the XML transformation step in the step (b).
제 1 항에 있어서,
상기 (b)단계에서 변환된 XML로 이루어진 문서에는 상기 변환 참조 컬럼에 포함된 상기 하나 이상의 구문을 XML로 변환된 정보를 포함하는, 데이터를 XML로 변환하는 방법.
The method according to claim 1,
Wherein the step (b) includes converting the at least one syntax contained in the conversion reference column into XML, and converting the XML into XML.
제 1 항에 있어서,
상기 (b) 단계는,
상기 변환된 객체들의 노드 관계를 이용하여 상기 변환 참조 컬럼에 포함된 상기 적어도 하나의 구문을 XML로 변환하는, 데이터를 XML로 변환하는 방법.
The method according to claim 1,
The step (b)
And transforming the at least one statement contained in the transformed reference column into XML using the node relation of the transformed objects.
제 1 항에 있어서,
상기 적어도 하나의 구문은,
조건문, 반복문 및 변수값 처리 중 적어도 어느 하나의 로직이 포함된 구문이며,
상기 조건문의 조건, 상기 반복문의 반복 탈출 조건 및 상기 변수값 처리의 변수값의 설정 중 적어도 어느 하나는 사용자 인터페이스(UI, User Interface) 를 통하여 입력되는 사용자의 조작 정보를 이용하여 결정되며,
상기 (b)단계는,
상기 사용자의 조작 정보를 이용하여 로직을 해석하여 상기 변환 참조 컬럼에 포함된 적어도 하나의 구문을 XML로 변환하는, 데이터를 XML로 변환하는 방법.
The method according to claim 1,
Wherein the at least one syntax comprises:
A statement including at least one of a conditional statement, a loop statement, and a variable value processing,
At least one of the condition inquiry condition, the repeating exit condition of the loop statement, and the setting of the variable value of the variable value process is determined using the user's operation information input through a user interface (UI)
The step (b)
And translating the data into XML by parsing the logic using the user's operational information and converting at least one statement contained in the translation reference column to XML.
제 1 항에 있어서,
상기 (b)단계는,
상기 변환된 객체 중 부모 노드(Parent Node)를 XML로 변환하기 전에, 상기 부모 노드의 자식 노드(Child Node)부터 상기 XML로 변환을 수행하는, 데이터를 XML로 변환하는 방법.
The method according to claim 1,
The step (b)
And transforming the data from the child node of the parent node to the XML before converting the parent node of the transformed object into XML.
제 1 항에 있어서,
상기 (b)단계는,
상기 변환된 객체 중 리프 노드(Leaf Node)부터 XML 변환을 시작하여 루트 노드(Root Node)까지 순차적으로 XML로 변환하는, 데이터를 XML로 변환하는 방법.
The method according to claim 1,
The step (b)
Starting from a leaf node of the transformed object, and sequentially converting the transformed XML to a root node.
제 1 항에 있어서,
상기 데이터를 XML로 변환하는 방법은,
상기 객체로 변환된 데이터 중에서 XML로 변환시킬 노드 객체를 결정하는 (c)단계를 더 포함하며,
상기 (b)단계는, 상기 (c)단계에서 결정된 노드 객체만을 XML로 변환하는, 데이터를 XML로 변환하는 방법.
The method according to claim 1,
The method of converting the data into XML includes:
(C) determining a node object to be converted into XML from the data converted into the object,
The step (b) may convert only the node object determined in the step (c) into XML.
제 7 항에 있어서,
상기 (b)단계는, 상기 (c)단계에서 결정된 노드 객체 중 최하단의 자식 노드부터 XML 변환을 시작하여, 상기 (c)단계에서 결정된 노드 객체 중 최상단의 부모 노드까지 순차적으로 XML로 변환하는, 데이터를 XML로 변환하는 방법.
8. The method of claim 7,
The step (b) may include: starting XML transformation from a child node of the lowest node among the node objects determined in the step (c), and sequentially converting the XML object to a parent node of the node object determined in the step (c) How to convert data to XML.
관계형 데이터베이스에 저장된 데이터를 객체로 변환하는 객체 변환부; 및
상기 변환된 객체를 XML로 변환하는 XML 변환부를 포함하되,
상기 관계형 데이터베이스의 데이터 저장 테이블은 상기 XML 변환 과정시 동적으로 변경되는 적어도 하나의 구문을 포함하는 변환 참조 컬럼을 포함하는, 데이터를 XML로 변환하는 장치.
An object conversion unit for converting the data stored in the relational database into an object; And
And an XML conversion unit for converting the converted object into XML,
Wherein the data storage table of the relational database comprises a transformation reference column that includes at least one statement that is dynamically changed during the XML transformation process.
제 9 항에 있어서,
상기 XML 변환부는,상기 XML 변환부에 의하여 변환된 XML로 이루어진 문서에는 상기 변환 참조 컬럼에 포함된 상기 하나 이상의 구문을 상기 XML로 변환한 정보를 포함하는, 데이터를 XML로 변환하는 장치.
10. The method of claim 9,
Wherein the XML conversion unit includes information obtained by converting the one or more statements included in the conversion reference column into the XML into a document composed of XML converted by the XML conversion unit.
제 9 항에 있어서,
상기 (b) 단계는,
상기 변환된 객체들의 노드 관계를 이용하여 상기 변환 참조 컬럼에 포함된 데이터를 XML로 변환하는, 데이터를 XML로 변환하는 장치.
10. The method of claim 9,
The step (b)
And transforming the data included in the transformed reference column into XML using the node relation of the transformed objects.
제 9 항에 있어서,
상기 적어도 하나의 구문은,
조건문, 반복문 및 변수값 처리 중 적어도 어느 하나의 로직이 포함된 구문이며,
상기 조건문의 조건, 상기 반복문의 반복 탈출 조건 및 상기 변수값 처리의 변수값의 설정 중 적어도 어느 하나는 사용자 인터페이스(UI, User Interface) 를 통하여 입력되는 사용자의 조작 정보를 이용하여 결정되며,
상기 XML 변환부는,
상기 사용자의 조작 정보를 이용하여 로직을 해석하여 상기 변환 참조 컬럼에 포함된 적어도 하나의 구문을 XML로 변환하는, 데이터를 XML로 변환하는 장치.
10. The method of claim 9,
Wherein the at least one syntax comprises:
A statement including at least one of a conditional statement, a loop statement, and a variable value processing,
At least one of the condition inquiry condition, the repeating exit condition of the loop statement, and the setting of the variable value of the variable value process is determined using the user's operation information input through a user interface (UI)
Wherein the XML conversion unit comprises:
And translating the data into XML by analyzing the logic using the operation information of the user and converting at least one syntax contained in the conversion reference column into XML.
확장형 마크업 언어(XML, eXtensible Markup Language)로 복원 가능한 데이터를 입력 또는 저장하는 관계형 데이터베이스에 있어서,
확장형 마크업 언어로 복원 가능한 데이터를 저장하는 테이블을 포함하되,
상기 테이블은 XML 변환 과정에서 동적으로 변경되는 적어도 하나의 구문을 포함하는 변환 참조 컬럼을 포함하는 관계형 데이터베이스.
1. A relational database for inputting or storing restorable data in an extensible markup language (XML)
A table for storing recoverable data in an expandable markup language,
Wherein the table comprises a transformation reference column containing at least one syntax that is dynamically changed in the XML transformation process.
제 13 항에 있어서,
상기 적어도 하나의 구문은 로직(Logic)을 포함하는, 관계형 데이터베이스.
14. The method of claim 13,
Wherein the at least one statement comprises logic.
KR1020130162541A 2013-12-24 2013-12-24 Relational Database, Translating Method and Apparatus From data to XML KR20150074611A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130162541A KR20150074611A (en) 2013-12-24 2013-12-24 Relational Database, Translating Method and Apparatus From data to XML

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130162541A KR20150074611A (en) 2013-12-24 2013-12-24 Relational Database, Translating Method and Apparatus From data to XML

Publications (1)

Publication Number Publication Date
KR20150074611A true KR20150074611A (en) 2015-07-02

Family

ID=53787702

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130162541A KR20150074611A (en) 2013-12-24 2013-12-24 Relational Database, Translating Method and Apparatus From data to XML

Country Status (1)

Country Link
KR (1) KR20150074611A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110222237A (en) * 2016-06-06 2019-09-10 福建榕基软件股份有限公司 The conversion method and its system of database table and XML message

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110222237A (en) * 2016-06-06 2019-09-10 福建榕基软件股份有限公司 The conversion method and its system of database table and XML message
CN110222237B (en) * 2016-06-06 2021-01-19 福建榕基软件股份有限公司 Method and system for converting database table and XML message

Similar Documents

Publication Publication Date Title
Chambers et al. Spark: The definitive guide: Big data processing made simple
Capriolo et al. Programming Hive: Data warehouse and query language for Hadoop
Karnitis et al. Migration of relational database to document-oriented database: Structure denormalization and data transformation
US8056047B2 (en) System and method for managing resources using a compositional programming model
US8689171B2 (en) System and method for managing resources using a compositional programming model
US7634515B2 (en) Data model and schema evolution
US7882154B2 (en) Hierarchical inherited XML DOM
US20080183725A1 (en) Metadata service employing common data model
US9740713B1 (en) Dynamic modeling of data in relational databases
Luu Beginning Apache Spark 2: with resilient distributed datasets, Spark SQL, structured streaming and Spark machine learning library
Dang et al. Intermediate data format for the elastic data conversion framework
Jennings Professional ADO. NET 3.5 with LINQ and the Entity Framework
Schildgen et al. NotaQL is not a query language! it’s for data transformation on wide-column stores
Hewasinghage et al. Managing polyglot systems metadata with hypergraphs
KR20150074611A (en) Relational Database, Translating Method and Apparatus From data to XML
Dawborn et al. docrep: A lightweight and efficient document representation framework
US7197496B2 (en) Macro-based dynamic discovery of data shape
JP2005056085A (en) Data structure conversion program
US20150286700A1 (en) Recording medium having stored thereon database access control program, method for controlling database access, and information processing apparatus
Pelekh Principles of Mashup System Semistructured Data Processing
Geipel et al. Metamorph: a transformation language for semi-structured data
Ren et al. Intelligent visualization system for big multi-source medical data based on data lake
Chihoub et al. Architecture of Data Lakes
Serna Nocedal et al. A mathematical model for managing XML data
CN101501685A (en) Personalizable information networks

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination