XML 데이터의 인라인 바인딩 방법
Inline Binding For XML DataInline Binding For XML Data
0
조회
0
다운로드
0
인용
0
참고문헌
키워드
초록
어플리케이션에서 XML 데이터를 이용하기 위한 방법으로 XML 타입 정의에 맞는 클래스를 생성하고 데이터의 인터페이스를 담당하게 하는 XML 바인딩 방법이 있다. 그런데 이러한 방법을 지원하는 기존의 바인딩 프레임워크에서는 XML 정의 문법에서 정의된 모든 요소에 대해 클래스를 생성하여 클래스의 수가 많아지고 전체 어플리케이션의 복잡도가 높아지는 문제가 있다.본 연구에서는 XML 정의 문법에서 XML 바인딩 클래스 생성이 필요한 요소들을 추출하는 인라인 방법을 제안한다. 제안된 바인딩 클래스 생성 방법은 반복과 재귀 등의 경우에만 클래스를 생성하고 터미널 요소의 값은 필드로 표현하는 클래스를 생성한다. 그리고 인라인된 요소들의 경로를 회복하여 XML 문서를 생성하기 위한 마샬링 알고리즘을 소개한다.제안된 방법을 검증하기 위하여 IBinder 시스템을 개발하고 생성된 결과를 기존의 방법과 비교하였다. 그 결과 IBinder 시스템에서 생성된 XML 바인딩 클래스의 수가 크게 줄어드는 것을 보일 수 있었다. 攀 †정 회 원:경기대학교 정보과학부 조교수††준 회 원:경기대학교 전자계산학과 석사과정논문접수:2005년 10월 24일, 심사완료:2005년 12월 19일
Abstract
For using XML data in programming languages, there is a data binding method, which generates classes from XML type definitions. However, since existing binding frameworks for this method generate all classes for element definitions, the number of generated classes becomes large and the complexity of the overall application system gets high.In this research, we propose an inline binding method for selecting necessary classes from element definitions. In the proposed method, classes are created only for elements with repetitions and recursions, and they include fields for values of terminal elements. We introduce a generation algorithm for binding classes and the marshaling methods for recovering the omitted paths.We develop IBinder system to validate the proposed method and compare the generated codes with the ones of existing systems. As a result, we can show that the number of generated classes decrease substantially compared to other systems.
참고문헌 (20)
- 김경덕, "온라인 대화 행위에서 XML 기반 메시지를 이용한 미디어 지원", 정보처리학회논문지. 소프트웨어 및 데이터 공학, 11(1), pp.91~98 (2004), 한국정보처리학회
- 이은정, "XML 데이터 공유를 위한 리스트 잠금 프로토콜", 정보처리학회논문지D, 11(7), pp.1367~1374 (2004), 한국정보처리학회
- 조정길, "인라이닝에 기반한 XML 스키마의 관계형 스키마 변환 기법", 정보처리학회논문지D, 11(6), pp.1021~1030 (2004), 한국정보처리학회
- Frank Atanassow, "Scripting XML with Generic Haskell" (2003)
- Jorge Coelho, "Type-based XML processing in logic programming", pp.273~285 (2003)
- R. Engelen, "Developing web services for C and C++", 7(2), pp.53~61 (2003)
- M. Harren, "XJ: integration of XML processing into Java", pp.340~341 (2004)
- H. Hosoya, "Xduce: A statically typed XML processing language", 3(2) (2003)
- S. Lu, "A New Inlining Algorithm for Mapping XML DTDs to Relational Schemas" (2003)
- T. Milo, S, "Exchanging Intensional XML Data" (2003)
- F.Reuter, "STAX", bc: A binding compiler for event-based XML data binding APIs, 2004, 64~72
- J.Shanmugasundaram, "Relational databases for querying XML documents: Limitations and opportunities", pp.302~314 (1999)
- F.Simeoni, "Language bindings to XML", 7(1), pp.19~27 (2003)
- "XML Data Binding Resources"
- "XML and Java technologies: Data binding"
- "Java Architecture for XML Binding (JAXB)"
- "Castor"
- "XML Schema"
- "XML Spy"
- "Axis WSDL2Java"
