Presentation is loading. Please wait.

Presentation is loading. Please wait.

XML Parser 순천향대학교 정보기술공학부 이상정.

Similar presentations


Presentation on theme: "XML Parser 순천향대학교 정보기술공학부 이상정."— Presentation transcript:

1 XML Parser 순천향대학교 정보기술공학부 이상정

2 XML Parser 개요 XML Parser Non-Validating Parser Validating Parser
Application XML Parser XML 문서 XML Parser XML 문서가 XML의 규칙 및 제약을 따르는 지를 검사 Application에게 XML 문서의 데이터 또는 자료구조를 제공 Non-Validating Parser 문서의 Well-formedness 만을 체크한다. Validating Parser 문서를 DTD의 구조에 맞는 지 검증한다. 순천향대학교 정보기술공학부 이 상 정

3 Non-Validating Parser
XML Parser 툴 Non-Validating Parser Validating Parser XP (James Clark) Sun “Java Project X” TR-2 Oracle XML Parser IBM XML4j MSXML Apache Xerces 각 파서마다 다른 API를 사용하면 개발자들은 다른 파서를 사용할 때마다 그 API를 익혀야 하는 혼란이 발생 표준 API(SAX, DOM)를 제정하고 파서들이 지원하게 됨 순천향대학교 정보기술공학부 이 상 정

4 SAX (Simple API for XML)
자료구조를 만들지 않고 XML 문서를 스캔해 가면서 순차적으로 이벤트를 발생시켜서 XML 문서에 접근할 수 있게 해 주는 API DOM이 W3C의 표준인데 반해 SAX는 공식적인 표준은 아니지만 업계에서 많이 사용됨 현재 SAX 2.0이 최신 버전 장점 입력 파일의 크기에 구애 받지 않고 파싱할 수 있다. 자신의 데이터 구조를 만들기 원할 때 유용하다. 정보의 작은 부분만 원할 때 유용하다. 단순하고 속도가 빠르다. 단점 문서의 구조 정보에 대해 파악할 수 없다. 문서를 생성시키거나 편집하는데 사용할 수 없다. 순천향대학교 정보기술공학부 이 상 정

5 DOM (Document Object Model)
XML 문서를 트리 구조의 형태로 access할 수 있게 해 주는 API DOM을 사용해서 XML 문서를 파싱하면 그 XML 문서의 논리적인 구조에 따라 트리 형태의 자료 구조가 만들어지고 DOM API는 트리에 접근할 수 있는 API들을 제공한다. 다양한 Language Binding: Java, JavaScript, ActiveX 현재 DOM Level 2가 W3C의 Recommendation임 장점 문서의 구조에 대한 풍부한 표현력 XML 문서를 생성 및 조작할 수 있다. 단점 메모리 사용량이 많다. 속도가 느리다. 순천향대학교 정보기술공학부 이 상 정

6 Apache XML Parser - Xercex
XML parsers in Java, C++ with Perl and COM(MS Common Object Model) bindings Fully-validating parsers W3C XML and DOM (Level 1 and 2) standards SAX (version 2) standard 순천향대학교 정보기술공학부 이 상 정

7 Xerces-C++ 아파치 프로젝트의 C++ XML 파서 Unix,Windows 용 소스, 바이너리 제공
Win32 binary Command Line에서 실행 Bin\Domprint.exe 예제로 VoiceXML문서의 유효성 검사 VoiceXML문서도 XML의 서브셋이기 때문에 동일한 XML파서를 사용 테스트 순천향대학교 정보기술공학부 이 상 정

8 VoiceXML 예제 <?xml version="1.0" encoding="ksc5601"?>
<!DOCTYPE vxml PUBLIC "-//Voicexml 1.0//EN" " <vxml version="1.0"> <menu> <prompt>원하시는 서비스를 선택하세요. 1번은 음성사서함관리 2번은 사용자정보관리 3번은 뉴스정보 입니다. </prompt> <choice dtmf="1" next=" <choice dtmf="2" next=" <choice dtmf="3" next=" <noinput>입력 시간이 지났습니다. 다시한번 입력해 주세요</noinput> <nomatch>잘못 입력하셨습니다. 다시 입력해 주세요.</nomatch> </menu></vxml> 순천향대학교 정보기술공학부 이 상 정

9 예제의 대화의 예 -> 사용자 접속 컴퓨터> 원하시는 서비스를 선택하세요.
1번은 음성사서함관리 2번은 사용자정보관리 3번은 뉴스정보 입니다. ->사용자는 DTMF를 이용하여 입력 사용자> (4번을 누름) 컴퓨터> 잘못 입력하셨습니다. 다시 입력해 주세요. 사용자> (3번을 누름) -> 3번에 해당하는 가져와서 계속 다이얼로그 진행 순천향대학교 정보기술공학부 이 상 정

10 DOMPrint 이용한 검사 순천향대학교 정보기술공학부 이 상 정


Download ppt "XML Parser 순천향대학교 정보기술공학부 이상정."

Similar presentations


Ads by Google