SNU OOPSLA Lab. XML Road Map © copyright 2001 SNU OOPSLA Lab.

24
SNU OOPSLA Lab. XML Road Map © copyright 2001 SNU OOPSLA Lab.

Transcript of SNU OOPSLA Lab. XML Road Map © copyright 2001 SNU OOPSLA Lab.

SNUOOPSLA Lab.

XML Road Map

© copyright 2001 SNU OOPSLA Lab.

SNU

OOPSLA Lab.

Contents

• R&D Projects– Stanford university– University of Pennsylvania– University of Wisconsin-Madison

• Commercial Products– International– Internal

SNU

OOPSLA Lab.

Lore

• Stanford University(1996~)• Goal

– Declarative query language for XML – Developing new technology for interfactive

searches over XML data – Building an efficient XML query processor

SNU

OOPSLA Lab.

Lore(Cont’d)

• Characteristics– Lorel Query Language– Indexing XML Data– DataGuides– Cost based query optimization

SNU

OOPSLA Lab.

UnQL

• University of Pennsylvania• Description

– a query language for semi-structured databases

– any object may have any combinations of attributes, of any type, even repeated attributes

– the interpreter is written in ML

SNU

OOPSLA Lab.

UnQL(Cont’d)R1 R2

Tup Tup Tup Tup Tup

A B C A B C C D C D C D

“a” 2 3 “b” 4 5 3 “c” 5 “d” 5 “e”

SNU

OOPSLA Lab.

UnQL(Cont’d)

• Example query

select t

where R1=>\t <- DB• Returned expression

{Tup => {A => “a”, B=>2, C=>3},

Tup => {A=> “b”, B=>4, C=>5}}

SNU

OOPSLA Lab.

XML-QL

• AT&T• Description

– XML-QL is a query language for XML designed for tasks like:

• data extraction from large XML documents. • data conversion between relational or object-oriented

databases and XML data. • data transformation of XML (e.g. between data of

different DTD's.)• data integration from multiple sources.

– XML-QL is relational complete

SNU

OOPSLA Lab.

XML-QL(Cont’d)• Example

where <book>

<publisher> <name>Addison-Wesley</> </>

<title> $t </>

<author> $a </>

</> in “www.a.b.c/bib.xml”

construct <result>

<author> $a </a>

<title> $t </>

</>

SNU

OOPSLA Lab.

Indexes for Semi-structured Data • AT&T• Description

– semi-structured data do not have an a priory schema

– T-index• T-indexes can be used to evaluate a whole

range of path expressions, • every T-index can be efficiently constructed • T-indexes offer a good trade-off between space

and query complexity

SNU

OOPSLA Lab.

NIAGARA

• University of Wisconsin-Madison• Components

– search engine– query engine– trigger manager

SNU

OOPSLA Lab.

IBM(1)• 접근 사이트

– http://www.ibm.com/developer/xml/• 지원 형태

– 데이타베이스 시스템• XML 에 대한 특별한 지원은 하고 있지 않으며 , 비정형화 된

데이터를 다루기 위한 모듈인 DataLink 를 제공하고 있음 .• DataLink

– DB2 유니버설 데이타베이스 서버가 외부 운영체제에 있는 화일들에 저장된 데이터를 마치 데이타베이스에 있는 데이타인 것처럼 다루도록 해주는 소프트웨어 모듈

– referential integrity, access control(read,write), backup&recovery, transaction consistency 지원

SNU

OOPSLA Lab.

IBM(2)– 응용 서버

• 기존에 만든 Domino 서버에 XML 을 지원하는 모듈을 추가함으로써 다음과 같은 서비스를 제공하고자 함

– 서로 다른 데이터 소스에 존재하는 데이터들의 통합– 서버들간의 데이터 교환– 동일한 데이터에 대한 서로 다른 뷰를 사용자에게

제공– 통합 내용 (content) 관리

• 지원 내역– XML Parsers(C,C++,Java), XSL viewer, DOM

interfaces, XSL processor, XML storage

SNU

OOPSLA Lab.

IBM(3) - DOMINO 구조

ClientNotes, Browsers, PDAs, Phones

ApplicationsKnowledge Mgnt, CRM, HR, Mobile, Content Mgnt

Domino Application ServerXML Parsing, XSL Processing, Storage, DOM APIs

Data SourcesERP, RDBMS(DB2, Oracle,…), Domino, Web

XML HTML

XML XML

SNU

OOPSLA Lab.

Sybase

• 접근 사이트– http://www.sybase.com

• 지원 형태– 데이타베이스 시스템

• 저장 : 각 필드를 관계형 테이블의 칼럼으로 저장하거나 텍스트 타입 형태로 저장 가능

• 검색 : Verity indexing, SQL, 또는 Java 메소드를 이용– 응용 서버

• Enterprise Application Server 에서 다음과 같은 기능 지원

– XML 파싱 / 생성 / 교환 모듈

SNU

OOPSLA Lab.

Oracle

• 접근 사이트– http://technet.oracle.com/tech/xml/section.html

• 지원 형태– 데이타베이스 시스템 (Oracle8i)

• Oracle XML Parser• 인터넷 파일 시스템 (iFS) 를 이용하여 XML 과

데이타베이스 간의 데이터 변환을 자동으로 지원• XML 문서에 대한 ‘ section searching’ 지원

SNU

OOPSLA Lab.

Oracle(2) - XML-based File Type<?xml version="1.0"?><InsuranceClaim> <ClaimID>12345</ClaimID> <LossCategory>7</LossCategory> <Settlements> <Payment> <Payee>Borden Real Estate</Payee> <Date>12-OCT-1998</Date> <Amount>200000</Amount> <Approver>JCOX</Approver> </Payment> </Settlements> <DamageReport> A massive <Cause>Fire</Cause> ravaged the building and <Casualties>12</Casualties> people were killed. Early FBI reports indicate that <Motive>arson</Motive> is suspected. </DamageReport> : </InsuranceClaim>

SNU

OOPSLA Lab.

Oracle(3) - Section Search

SELECT SUM(Amount) FROM Claim_Header ch, Claim_Settlements cs, Claim_Settlement_Payments cspWHERE csp.Approver='JCOX' AND CONTAINS (DamageReport, 'Arson WITHIN Motive') > 0 AND CONTAINS (DamageReport, 'Fire WITHIN Cause' ) > 0 AND . . . /* Join Clauses */

SNU

OOPSLA Lab.

Oracle(4) - 시스템 구조

SNU

OOPSLA Lab.

Object Design(1)

• 접근 사이트– http://www.odi.com/excelon/main.htm

• 지원 형태– eXcelon : XML 데이터 서버 시스템

• ObjectStore 를 XML 저장 데이타베이스 엔진으로 사용

• XML Explorer, XQL QP• Java 를 이용한 응용 모듈 지원 , 결과는 XML

문서 형태

SNU

OOPSLA Lab.

Object Design(2) - 시스템 구조

Thin Clients

Web Server

eXcelon

App. ServerCache.

App. ServerCache.

App. ServerCache.

DOM/XQL

JavaExtension

JavaExtension

JavaExtension

DOM/XQL DOM/XQL

Data Sources

XML Store(ObjectStore)

SNU

OOPSLA Lab.

한국 정보 공학

• XML Designer– DTD 에디터– XML 에디터– Style 에디터

SNU

OOPSLA Lab.

한국 지식 웨어

• XAT 1.0(XML Authoring Tool V1.0)– XEditor XML 편집기 – XStyler XSL 편집기 – XParser XML 파서 – XConverter (HWP2XML 변환기 )

• XRMS V1.0 (XML Repository Management System)– XML 객체 관리기 – XML 문서 인덱스 관리기

SNU

OOPSLA Lab.

한국 지식 웨어 (Cont’d)

• XML / EDI– 고객 관리 기능– XML/EDI 문서 관리 기능 – SST 관리기능 – 로그관리기능 – XML Schema 유효성 검증기