KR20040046171A - 엘리먼트 기반 웹 문서의 파싱시스템 및 그 방법 - Google Patents

엘리먼트 기반 웹 문서의 파싱시스템 및 그 방법 Download PDF

Info

Publication number
KR20040046171A
KR20040046171A KR1020020074009A KR20020074009A KR20040046171A KR 20040046171 A KR20040046171 A KR 20040046171A KR 1020020074009 A KR1020020074009 A KR 1020020074009A KR 20020074009 A KR20020074009 A KR 20020074009A KR 20040046171 A KR20040046171 A KR 20040046171A
Authority
KR
South Korea
Prior art keywords
parsing
token
markup
tag
document
Prior art date
Application number
KR1020020074009A
Other languages
English (en)
Other versions
KR100483497B1 (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 KR10-2002-0074009A priority Critical patent/KR100483497B1/ko
Priority to EP03774327A priority patent/EP1570379A4/en
Priority to AU2003284768A priority patent/AU2003284768A1/en
Priority to US10/539,762 priority patent/US20060106837A1/en
Priority to CNB2003801077941A priority patent/CN100550007C/zh
Priority to PCT/KR2003/002569 priority patent/WO2004049194A1/en
Publication of KR20040046171A publication Critical patent/KR20040046171A/ko
Application granted granted Critical
Publication of KR100483497B1 publication Critical patent/KR100483497B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/84Mapping; Conversion
    • G06F16/88Mark-up to mark-up conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents
    • 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
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • 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

Abstract

본 발명은 기존의 유무선 웹사이트들을 그대로 활용하여 이를 휴대 단말에서 브라우징하기 위해, 단일 혹은 다중 마크업으로 구성된 웹 문서를 종류에 상관없이 파싱하는 웹 문서 파싱시스템 및 방법에 관한 것이다.
본 발명의 웹 문서 파싱시스템은 지원하고자 하는 문서종류에서 필요로 하는 모든 마크업 데이터를 위한 토큰 테이블을 참조하여 마크업과, non-마크업을 기반으로 토큰을 분리 생성하는 어휘 분석기와, 각 문서의 DTD를 기반으로 컨텐츠 모델을 분석하여 이를 기반으로 각 구문을 분석한 후, 상기 단말의 그래픽 사용자 인터페이스(GUI)를 기반으로 트리 기반의 객체를 형성하는 구문 분석기를 포함하여 웹 서버로부터 다양한 웹 문서를 호출하여 휴대 단말의 응용에 제공한다.
본 발명에 의하면, 기존에 구축된 웹 사이트를 그대로 이용할 수 있을 뿐만 아니라, 단말의 응용 프로그램이 필요로 하는 정보만을 추출하는 것이 가능하므로, 인터넷 서비스 제공자는 각 단말에 특화된 웹 사이트를 구축하지 않아도 되어, 웹 사이트 구축에 따른 시간적, 금전적 비용을 감소시킬 수 있다.

Description

엘리먼트 기반 웹 문서의 파싱시스템 및 그 방법{ Parsing system and method of Multi-document based on elements }
본 발명은 웹 문서를 휴대용 단말기에 브라우징하기 위한 파서(parser)에 관한 것으로, 상세하게는 다양한 종류의 마크업 언어로 작성된 웹 문서들을 통합하여 지원할 수 있는 웹 문서 통합 파싱 시스템 및 그 방법에 관한 것이다.
도 1은 종래의 방식에 따라 휴대 단말기에 웹 문서를 브라우징하는 구성을 도시한 개략도이다.
도면을 참조하면 웹 서버(130)는 다양한 마크업 언어로 된 웹 문서들을 각각 구비하고 있고, 휴대용 단말기(110)는 각 마크업 언어를 지원하는 브라우저들 예를 들면, HDML 브라우저(111), WML 브라우저(112) 및 mHTML 브라우저(113) 등을 각각 탑재한 후 WAP 게이트웨이(120)를 통하거나 직접 웹 서버(130)에 접속하여 해당 웹 문서를 브라우징하도록 되어 있다.
이러한 구성에 의하면, 하나의 단말로 다양한 문서를 보려면 지원하는 마크업 언어의 수에 해당하는 다수의 브라우저를 각각 탑재하여 해당 언어의 문서를 브라우징해야 하므로 휴대 단말의 구성이 복잡해지는 문제점이 있다.
따라서 근래에는 휴대폰의 사용이 일반화되면서 무선 인터넷 서비스를 지원하기 위해 기존의 HTML(Hyper Text Markup Language)로부터 파생된 마크업 언어들이 등장하게 되었다.
기존의 HTML을 사용해 무선 인터넷을 서비스하지 않고, 다른 마크업 언어를 개발하게 된 이유로는 크게 무선 선로에 따른 제약과, 휴대 단말에 따른 제약을 들 수 있다. 현재의 휴대폰과 같은 이동 단말기에서 무선선로는 유선에 비해 상대적으로 대역폭이 좁고 에러 발생률이 높은 제약이 있고, 휴대 단말기 자체는 유선 인터넷에서 사용되는 데스크 탑 컴퓨터에 비해 화면 창의 크기(Window size)가 작고, CPU(Central Processing Unit)와 메모리 등의 컴퓨팅 능력이 데스크 탑 PC (Personal Computer)에 비해 상대적으로 열등하다. 반면, 기존의 유선 인터넷에서 제공되는 HTML은 기능이 많고 처리과정이 복잡하여 휴대 단말에서 지원하기 어려웠던 것이다.
이러한 점을 감안하여, HTML의 기능 중 일부를 그대로 상속하는 한편 각 단말에 특화된 마크업 언어를 개발하게 되었고, 대표적인 예로써, HDML(Handheld Device Markup Language), WML(Wireless Markup Language), mHTML(Mobile HTML), cHTML(Compact HTML) 등이 등장하여 서비스되고 있다.
그러나 상기한 각 마크업 언어들은 서비스 제공자 및 단말의 특성을 고려하여 개별적으로 개발된 언어들로서, 서로 호환성이 되지 않는 문제가 있다. 즉, 인터넷 서비스 제공자가 두 가지 종류의 단말에 같은 내용의 컨텐츠를 제공하고자 한다면, 각 단말에서 처리 가능한 마크업 규칙을 따르도록 두개의 컨텐츠를 개발해야 하는 문제점이 있고, 단말 사용자 입장에서는 다른 인터넷 서비스 제공자가 제공하는 컨텐츠를 볼 수 없게 되는 문제점이 있다.
본 발명은 이러한 문제점을 해결하기 위한 것으로, 그 목적은 기존에 구축된 유,무선 웹사이트에서 제공하는 다양한 마크업 언어로 작성된 컨텐츠들을 휴대용 단말의 사양에 제한없이 통합하여 브라우징할 수 있는 엘리먼트 기반 웹 문서의 파싱 시스템 및 방법을 제공하는 것이다.
본 발명의 다른 목적은 종류가 다른 마크업 언어들의 특성을 분석하여 XML에서 정의하는 엘리먼트(element)를 기반으로 문서를 파싱하는 한편, 단말에서 처리 가능한 엘리먼트만을 선별하여 데이터로 저장할 수 있도록 함으로써, 인터넷 서비스 대역을 확장할 수 있는 엘리먼트 기반 웹 문서의 파싱 시스템 및 방법을 제공하는 것이다.
상기 목적을 달성하기 위한 본 발명의 엘리먼트 기반 웹 문서의 파싱 시스템은 웹 서버로부터 다양한 웹 문서를 호출하여 휴대 단말의 응용에 제공하기 위한 휴대 단말의 웹 문서 파싱 시스템에 있어서, 지원하고자 하는 문서종류에서 필요로 하는 모든 마크업 데이터를 위한 토큰 테이블을 참조하여 마크업; non-마크업을 기반으로 토큰을 분리생성하는 어휘 분석기; 및 각 문서의 DTD를 기반으로 컨텐츠 모델을 분석하여 이를 기반으로 각 구문을 분석한 후, 상기 단말의 그래픽 사용자 인터페이스(GUI)를 기반으로 트리 기반의 객체를 형성하는 구문 분석기;를 포함한다.
상기 어휘 분석기는 주석이나 공백을 처리하는 주석문 분석기, 마크업 시작태그를 인식하여 토큰을 생성하는 마크업 시작 분석기, 속성을 분석하여 토큰을 생성하는 속성 분석기 및 일반 사용자 데이터를 분석하여 토큰을 생성하는 일반 사용자 데이터 분석기를 포함하고, 상기 구문 분석기는 상기 어휘 분석기에서 생성된 토큰을 바탕으로 해당 문서가 각각의 DTD에 적합하게 작성되었는지 여부를 검사하는 XML 검증부 및 상기 분석된 마크업을 단말의 그래픽 사용자 인터페이스와 일치시키는 단말 GUI기반 객체 생성부로 이루어진다.
또한 상기 목적을 달성하기 위한 본 발명의 웹 서버로부터 다양한 웹 문서를 호출하여 휴대 단말의 응용에 제공하기 위한 엘리먼트 기반 웹 문서의 파싱방법은 웹 서버로부터 호출한 웹 문서를 파싱하기 위한 방법에 있어서, 상기 웹 문서로부터 토큰을 읽어와 분석하는 제 1단계; 상기 토큰을 분석한 결과 정의된 시작태그가 아니거나 주석문 또는 공백일 경우 그 토큰을 무시하고, 정의된 시작태그가 읽힐 경우 상기 토큰으로부터 엘리먼트의 속성을 파싱하는 제 2단계; 상기 토큰으로부터 엘리먼트 속성을 파싱하고 엘리먼트의 GUI관련 정보를 저장한 후 엘리먼트의 내용을 파싱하는 제 3단계; 상기 3단계에서 엘리먼트의 내용을 파싱한 결과 일반 사용자 데이터이면 내용의 GUI관련 정보를 저장하고, 일반 사용자 데이터가 아닐 경우에 마침태크가 나올 때까지 데이터를 읽는 제 4단계; 및 상기 제 4단계에서 일반 사용자 데이터가 아닌 상태에서 정의된 시작태그의 마침태크가 나타나면 종료하고, 그렇지 않을 경우 무시하고 리턴하는 제 5단계;의 루틴을 수행하는 것을 특징으로 한다.
도 1은 종래의 방식에 따라 휴대 단말기에 웹 문서를 표시하는 구성을 도시한 개략도,
도 2는 본 발명에 따른 웹 문서 파싱 시스템을 이용하여 휴대 단말기에 웹 문서를 표시하는 구성을 도시한 블록도,
도 3은 본 발명에 따른 웹 문서 파싱 시스템의 구성을 도시한 개략도,
도 4는 도 3에 도시된 어휘분석기의 동작을 설명하기 위해 도시한 개념도,
도 5는 본 발명에 따른 문법구조의 예를 도시한 개념도,
도 6은 본 발명에 따른 통합 파서의 파싱 절차를 도시한 순서도.
*도면의 주요부분에 대한 부호의 설명
210;휴대 단말기212;응용
214;통합 파서230;웹 서버
310;어휘분석기311;토큰테이블
312;토큰발생부313;XML Well-formedness 검사부
320;구문분석기321;문서 컨텐츠 모델
322;XML검증부323;GUI기반 객체 생성부
이하, 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 상세하게 설명한다.
본 발명은 기존에 구축된 인터넷 상의 웹 서버에 의해 제공되는 모든 종류의 컨텐츠를 휴대 단말기의 제약 사항에 관련없이 사용자에게 서비스 가능하도록 하기 위해 웹 페이지를 호출하여 엘리먼트를 기반으로 파싱하여 추출된 정보를 응용 프로그램에 전달하도록 구성을 개시하고자 하는 것으로, 현재 서비스되고 있는 마크업 언어들을 분석해보면 다음 표 1과 같이 3가지의 종류로 분류해 볼 수 있다.
상기 표 1을 참조하여 분류된 마크업 언어들을 분석해보면 HTML문서를 제외한 대부분의 문서는 XML을 기반으로 개발된 것들이며, HTML 역시 XML로 전이하고 있는 추세이다. 따라서 본 발명은 XML을 기반으로 하는 마크업 언어들에 기초하여 통합 파싱시스템을 개시하고자 하는 것이다.
도 2는 본 발명에 따른 웹 문서 파싱 시스템을 이용하여 휴대 단말기에 웹 문서를 브라우징하는 전체 구성을 도시한 블록도이다.
도면을 참조하면, 본 발명은 인터넷을 통해 소정의 언어로 작성된 웹 문서들을 웹 서버(23)에서 제공하고, 본 발명이 적용된 휴대용 단말기(210)는 웹 서버(230)에서 제공된 문서를 파싱하는 통합파서(214)와 상기 통합파서(214)로부터추출된 정보를 이용하는 응용 프로그램(212)을 탑재하고 있다.
여기서, 통합 파서(214)는 웹 서버(230)로부터 가져온 문서들을 입력으로 하고, 응용 프로그램(212)에서 필요로 하는 정보를 메모리 혹은 하드 디스크에 저장한 데이터를 출력한다.
그리고 웹 서버(230)에서 제공되는 문서는 HTML, XHTML, MHTML, CHTML, WML, HDML 등의 SGML 또는 XML을 기반으로 프리젠테이션(presentation)을 목적으로 작성된 문서를 모두 포함한다.
도 3은 본 발명에 따른 웹 문서 파싱시스템의 구성을 도시한 개략도이고, 도 4는 도 3에 도시된 어휘 분석기의 동작을 설명하기 위해 도시한 개념도이며, 도 5는 본 발명에 따른 문법구조의 예를 도시한 개념도이다.
본 발명의 파싱 시스템은 도 3에 도시된 바와 같이, 크게 어휘 분석기(310)와 구문 분석기(320)로 구성된다.
어휘 분석기(310)는 지원하고자 하는 문서 종류에서 필요로 하는 모든 마크업 데이터를 위한 토큰 테이블(311)을 참조하여 마크업과 non-마크업을 기반으로 토큰을 분리한다.
구문 분석기(320)는 XML 검증부(322)와 GUI기반 객체 생성부(323)로 구성되어 모든 문서의 마크업 언어를 각각의 휴대 단말에 적합하게 표현할 수 있도록 도와 주는 것으로, 각 문서의 DTD를 기반으로 컨텐츠 모델(321)을 분석하여 이를 기반으로 구문을 분석한 후, 단말의 그래픽 사용자 인터페이스를 기반으로 트리 기반의 객체를 형성하여 랜더링을 위한 데이터로 제공한다.
어휘 분석기(310)는 토큰발생부(312)와 XML Well-formedness 검사부(313)를 구비하여 XML Well-formedness 표준에 기반하여 토큰을 추출해 내며, 이때 지원하고자 하는 문서들의 모든 토큰을 테이블(311)로 구성한다. 그리고 도 4에 도시된 바와 같이 XML 구조에 따라 상태변이를 하면서 토큰을 분리하게 된다.
여기서, 토큰의 상태란 같은 어휘라 할지라도 어휘 분석기 상태에 따라 다른 토큰으로 분리해 내도록 하는 것을 말한다. 어휘 분석기(310)의 상태는 주석문(comment), 마크업 시작(start tag), 속성(attrStart, attValue) 및 일반 사용자 데이터(pc data) 등으로 나뉜다.
도 4를 참조하면, 일반적으로 웹 문서는 초기상태일 때 공백이나 시작(Start)태그, 종료(End)태그 등을 포함하게 되는데, 본 발명의 어휘 분석기(310)는 주석분석기(410), 마크업 시작분석기(420), 속성분석기(430,440) 및 일반 사용자 데이터 분석기(450)를 통해 웹 문서를 각각 분석함으로써 토큰(Token)을 생성하게 된다.
상기 어휘 분석기(310)에서는 XML Well-formedness 표준을 기반으로 문서를 분석하여 토큰을 추출하고, 구문 분석기(320)에서는 어휘 분석기(310)에서 추출된 토큰을 이용하여 문서가 각각의 DTD(Document Type Definition)에 적합하게 작성되었는지 여부를 검사하게 되며, 이러한 과정에서 분석된 마크업은 단말의 그래픽 사용자 인터페이스(GUI)와 일치시킨다.
즉, 어휘 분석기(310)는 마크업 언어의 그래픽 사용자 인터페이스 모델(321)을 휴대 단말에서 지원 가능한 그래픽 사용자 인터페이스(GUI)로 표현할 수 있도록하기 위해 매핑(mapping)을 하는 것이다.
이와 같이 매핑하는 이유는 휴대 단말들은 각각의 특성에 맞는 그래픽 사용자 인터페이스를 가지므로, 모든 마크업 언어 표준들을 데스크 탑에서와 같이 지원할 수는 없고, 따라서 마크업 언어의 그래픽 사용자 인터페이스 특성들을 해당 휴대 단말의 그래픽 사용자 인터페이스에 맞게 고쳐야 하기 때문이다.
본 발명의 구문 분석기(320)는 여러 종류의 문서 혹은 다중문서를 파싱하기 위해 도 5에 도시된 바와 같은 문법구조를 정의한다.
즉, 도 5의 문법구조에서 파서는 여려 종류의 표준을 지원하는 마크업 언어를 파싱할 수 있는 것으로, 지원하고자 하는 모든 DTD를 분석하여 각 요소별로 문법을 정의한다.
이때, 각 요소나 속성들을 살펴보면, 대부분의 요소나 속성들은 여러 언어에서 공통으로 사용될 수 있으나 어떤 요소나 속성들은 특정 언어에 국한되므로, 본 발명에서는 모든 프리젠테이션을 위한 마크업들의 공통 분모를 파싱할 수 있도록 시스템을 설계하고 있다.
도 5와 같은 문법구조를 BNF 형식으로 표현하면 다음 표 2와 같다.
[1] document: Language A | Language B | Language C[2] Language A: [Element A'| Element B' ]*| Language B| Language C....[3] Element A': attributes contents[4] attributes: Attribute A'' Attribute B''[5] contents: [Element B'| Element C']*.....[6] Language B: [Element A'| Element D']*|Language A| Language C
상기 표 2의 문법을 설명하면, 라인[1]은 파싱하고자 하는 하나의 문서에 대해 여러 표준을 지원하는 언어들 중의 하나로 이루어진다. 라인[2]에서는 각각의 언어에 대해 자신의 DTD를 기반으로 구성된 컨텐츠 모델을 가짐과 동시에 다른 언어를 내장할 수도 있다. 라인[3]~[5]의 각 요소는 속성들과 자신의 컨텐츠들을 가질 수 있다. 라인 [6]은 라인[2]와 마찬가지로 다른 표준을 지원하는 컨텐츠 역시 자신의 DTD를 기반으로 한 컨텐츠 모델과 다른 언어를 내장할 수 있음을 나타낸다.
이하, 도 6을 참조하여 상기와 같이 구성된 본 발명에 따른 웹 문서 파싱 시스템이 다양한 웹 문서를 엘리먼트를 기반으로 파싱하는 파싱과정을 설명한다.
도면을 참조하면, 본 발명의 통합 파서기(214)는 파싱의 시작과 끝을 최상위 엘리먼트를 인식하여 상기 엘리먼트의 시작태그를 인식하면서 시작되어 상기 엘리먼트의 마침태그를 인식하여 종료한다.
본 발명은 어휘 분석기(310)에서 요청에 응답한 웹 문서를 분석하여 생성된 토큰을 읽어와 주석문이나 공백인지를 판단하고, 만약 읽어온 토큰이 주석문이나 공백일 경우 모두 읽어들이나 이들 토큰들에 대한 처리를 하지 않고, 다시 엘리먼트를 인식하기 위해 토큰을 읽어들인다(단계 601~603).
반대로 단계 601에서 읽어온 토큰이 주석문이나 공백이 아니고 응용 프로그램을 위해 정의된 엘리먼트의 시작태그일 경우(단계 604) 엘리먼트의 속성 및 내용을 모두 파싱(단계 605)하여 속성의 끝 즉, 마침태크가 나타날 때까지 읽은 후, 최종적으로 엘리먼트 및 속성의 그래픽 사용자 인터페이스 정보를 저장한다(단계 606~608).
그리고, 어휘 분석기(310)에서는 엘리먼트의 내용을 파싱한 후 나머지 토큰을 읽어온다.(단계 609∼610)
이후, 단계 611에서는 읽어온 토큰들이 일반 사용자 데이터인지를 판단하여 만약, 일반 사용자 데이터이면 단계 612에서 내용의 그래픽 사용자 인터페이스 관련 정보를 저장하고, 일반 사용자 데이터가 아닐 경우에는 단계 613에서와 같이 문자열과 같은 일반 사용자 데이터와 주석문 및 공백, 혹은 엘리먼트의 종료를 알리는 앞서 읽어들인 태그의 마침태그가 오는지를 판단하게 된다.
단계 613에서 읽어 들인 토큰이 마침태그가 오지 않을 경우에는 단계 601부터 반복하고, 마침태그가 올 경우에는 단계 614에서 정의된 시작태그의 마침태그인지를 판단한다.
단계 614에서 읽어 온 토큰에서 정의된 마침태크가 오지 않을 경우에는 이를 무시하고(단계 616), 마침태그가 올 경우에는 종료하게 된다.
단계 611에서 본 발명은 일반 사용자 데이터일 경우 즉, 문자열과 같이 화면에 보여주어야 할 사용자 데이터가 나오면 관련 정보를 저장하고(단계 612), 현재 엘리먼트의 마침태그를 읽어들이면 엘리먼트 파싱을 종료하며, 그렇지 않고, 다시 응용 프로그램에서 정의한 엘리먼트의 시작태그를 읽어들이게 되면 이를 엘리먼트의 내용으로 간주하여 엘리먼트를 파싱한다.
한편, 단계 604에서 본 발명은 응용 프로그램에서 정의되지 않은 엘리먼트의 시작태그를 인식하게 되면, 계속 엘리먼트의 태그와 속성 및 마침태그가 나올 때 까지 읽어들인 후, 이들에 대해 처리하지 않고 초기단계로 리턴한다(단계 615).
이상에서 설명한 바와 같이, 본 발명은 통합 파서를 휴대 단말기 탑재할 경우 기존에 구축된 웹 사이트를 그대로 이용할 수 있을 뿐만 아니라, 단말의 응용 프로그램이 필요로 하는 정보만을 추출하는 것이 가능하다.
더욱이 본 발명에 의하면, 인터넷 서비스 제공자는 각 단말에 특화된 웹 사이트를 구축하지 않아도 되므로 시간적이나 금전적으로 비용을 절감할 수 있는 효과를 얻을 수 있다.
이상에서 설명한 것은 본 발명에 따른 엘리먼트 기반 웹 문서의 파싱 시스템 및 파싱 방법을 설명한 하나의 실시 예에 불과한 것으로써, 본 발명은 상기한 실시 예에 한정되지 않고, 이하의 특허청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변경 실시가 가능한 범위까지 본 발명의 기술적 사상이 미친다고 할 것이다.

Claims (8)

  1. 웹 문서를 호출하여 휴대 단말에 제공하기 위한 웹 문서 파싱시스템에 있어서,
    지원하고자 하는 문서종류에서 필요로 하는 모든 마크업 데이터를 위한 토큰 테이블을 참조하여 마크업과, non-마크업을 기반으로 토큰을 분리하는 어휘 분석기; 및
    각 문서의 DTD를 기반으로 컨텐츠 모델을 분석하여 이를 기반으로 각 구문을 분석한 후, 상기 단말의 그래픽 사용자 인터페이스(GUI)를 기반으로 트리 기반의 객체를 생성하는 구문 분석기;를 포함한 것을 특징으로 하는 휴대 단말의 응용에 적용하기 위한 엘리먼트 기반 웹 문서의 파싱시스템.
  2. 제 1항에 있어서, 상기 어휘 분석기는,
    주석이나 공백을 처리하는 주석문 분석기, 마크업 시작태그를 인식하여 토큰을 생성하는 마크업 시작분석기, 속성을 분석하여 토큰을 생성하는 속성 분석기 및 일반 사용자 데이터를 분석하여 토큰을 생성하는 일반 사용자 데이터 분석기를 포함하는 것을 특징으로 하는 엘리먼트 기반 웹 문서의 파싱시스템.
  3. 제 1항에 있어서, 상기 구문 분석기는,
    상기 어휘 분석기에서 생성된 토큰을 바탕으로 해당 문서가 각각의 DTD에 적합하게 작성되었는지 여부를 검사하는 XML 검증부 및 상기 분석된 마크업을 단말의 그래픽 사용자 인터페이스와 일치시키는 단말 GUI기반 객체 생성부로 이루어진 것을 특징으로 하는 엘리먼트 기반 웹 문서의 파싱시스템.
  4. 제 1항 내지 제 3항 중 어느 한 항에 있어서, 상기 파싱 시스템은,
    HTML, XHTML, MHTML, CHTML, WML, HDML들과 관련된 SGML 또는 XML을 기반으로 작성된 웹 문서를 통합하여 파싱하는 것을 특징으로 하는 엘리먼트 기반 웹 문서의 파싱시스템.
  5. 제 1항 내지 제 3항 중 어느 한 항에 있어서, 상기 파싱 시스템은,
    특정한 휴대 단말에 제한되지 않으며, 각 단말의 사양에 따라 파싱할 엘리먼트의 종류를 선택할 수 있는 것을 특징으로 하는 엘리먼트 기반 웹 문서의 파싱시스템.
  6. 웹 서버로부터 호출한 웹 문서를 파싱하기 위한 방법에 있어서,
    상기 웹 문서로부터 토큰을 읽어와 분석하는 제 1단계;
    상기 토큰을 분석한 결과 정의된 시작태그가 아니거나 주석문 또는 공백일 경우 그 토큰을 무시하고, 정의된 시작태그가 읽힐 경우 상기 토큰으로부터 엘리먼트의 속성을 파싱하는 제 2단계;
    상기 토큰으로부터 엘리먼트 속성을 파싱하고 엘리먼트의 GUI관련 정보를 저장한 후 엘리먼트의 내용을 파싱하는 제 3단계;
    상기 3단계에서 엘리먼트의 내용을 파싱한 결과 일반 사용자 데이터이면 내용의 GUI관련 정보를 저장하고, 일반 사용자 데이터가 아닐 경우에 마침태크가 나올 때까지 데이터를 읽는 제 4단계; 및
    상기 제 4단계에서 일반 사용자 데이터가 아닌 상태에서 정의된 시작태그의 마침태크가 나타나면 종료하고, 그렇지 않을 경우 무시하고 리턴하는 제 5단계;를 포함하는 것을 특징으로 하는 휴대 단말에 적용하기 위한 엘리먼트 기반 웹 문서의 파싱방법.
  7. 제 6항에 있어서, 상기 제 2단계에서,
    읽어 온 토큰에 정의된 시작태그가 없을 경우 마침태그가 나올 때까지 계속 읽은 후 그 토큰을 무시하고, 새로운 토큰을 읽어오도록 하는 것을 특징으로 하는 엘리먼트 기반 웹 문서의 파싱방법.
  8. 웹 서버로부터 호출한 웹 문서를 파싱하기 위한 프로그램이 기록된 기록매체에 있어서,
    상기 웹 문서로부터 토큰을 읽어와 분석하는 제 1기능;
    상기 토큰을 분석한 결과 정의된 시작태그가 아니거나 주석문 또는 공백일 경우 그 토큰을 무시하고, 정의된 시작태그가 읽힐 경우 상기 토큰으로부터 엘리먼트의 속성을 파싱하는 제 2기능;
    상기 토큰으로부터 엘리먼트 속성을 파싱하고 엘리먼트의 GUI관련 정보를 저장한 후 엘리먼트의 내용을 파싱하는 제 3기능;
    상기 3단계에서 엘리먼트의 내용을 파싱한 결과 일반 사용자 데이터이면 내용의 GUI관련 정보를 저장하고, 일반 사용자 데이터가 아닐 경우에 마침태크가 나올 때까지 데이터를 읽는 제 4기능; 및
    상기 제 4기능에서 일반 사용자 데이터가 아닌 상태에서 정의된 시작태그의 마침태크가 나타나면 종료하고, 그렇지 않을 경우 무시하고 리턴하는 제 5기능;을 실현시키기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체.
KR10-2002-0074009A 2002-11-26 2002-11-26 엘리먼트 기반 웹 문서의 파싱시스템 및 그 방법 KR100483497B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR10-2002-0074009A KR100483497B1 (ko) 2002-11-26 2002-11-26 엘리먼트 기반 웹 문서의 파싱시스템 및 그 방법
EP03774327A EP1570379A4 (en) 2002-11-26 2003-11-26 PARSING SYSTEM AND METHOD OF MULTI-DOCUMENT BASED ON ELEMENTS
AU2003284768A AU2003284768A1 (en) 2002-11-26 2003-11-26 Parsing system and method of multi-document based on elements
US10/539,762 US20060106837A1 (en) 2002-11-26 2003-11-26 Parsing system and method of multi-document based on elements
CNB2003801077941A CN100550007C (zh) 2002-11-26 2003-11-26 基于要素的多个文件的分析系统和方法
PCT/KR2003/002569 WO2004049194A1 (en) 2002-11-26 2003-11-26 Parsing system and method of multi-document based on elements

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0074009A KR100483497B1 (ko) 2002-11-26 2002-11-26 엘리먼트 기반 웹 문서의 파싱시스템 및 그 방법

Publications (2)

Publication Number Publication Date
KR20040046171A true KR20040046171A (ko) 2004-06-05
KR100483497B1 KR100483497B1 (ko) 2005-04-15

Family

ID=36387680

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0074009A KR100483497B1 (ko) 2002-11-26 2002-11-26 엘리먼트 기반 웹 문서의 파싱시스템 및 그 방법

Country Status (6)

Country Link
US (1) US20060106837A1 (ko)
EP (1) EP1570379A4 (ko)
KR (1) KR100483497B1 (ko)
CN (1) CN100550007C (ko)
AU (1) AU2003284768A1 (ko)
WO (1) WO2004049194A1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100597666B1 (ko) * 2005-01-31 2006-07-10 주식회사 네오엠텔 무선 인터넷 문서의 브라우징 방법 및 그 방법이 구현된무선 인터넷 단말 장치
KR101880507B1 (ko) * 2017-04-21 2018-07-20 주식회사 한글과컴퓨터 웹 문서에 삽입된 도형의 크기 조정을 지원하는 클라이언트 단말 장치 및 그 동작 방법
KR101880508B1 (ko) * 2017-04-27 2018-07-20 주식회사 한글과컴퓨터 웹 문서에서 목록 생성을 지원하는 웹 문서 편집 지원 장치 및 방법
WO2018194323A1 (ko) * 2017-04-21 2018-10-25 주식회사 한글과컴퓨터 웹 문서의 편집을 지원하는 클라이언트 단말 장치 및 그 동작 방법
KR101991297B1 (ko) * 2018-04-16 2019-06-20 주식회사 한글과컴퓨터 문서 편집 인터페이스의 커스터마이징을 지원하는 웹 기반의 문서 편집 지원 장치 및 그 동작 방법

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100564767B1 (ko) * 2003-12-26 2006-03-27 한국전자통신연구원 Xml처리 장치 및 이를 적용한 시스템의 xml 처리 방법
US7287217B2 (en) * 2004-01-13 2007-10-23 International Business Machines Corporation Method and apparatus for processing markup language information
US7954051B2 (en) * 2004-01-13 2011-05-31 International Business Machines Corporation Methods and apparatus for converting markup language data to an intermediate representation
JP2005234915A (ja) * 2004-02-20 2005-09-02 Brother Ind Ltd データ処理装置及びデータ処理プログラム
US7877383B2 (en) * 2005-04-27 2011-01-25 Microsoft Corporation Ranking and accessing definitions of terms
US7620540B2 (en) * 2005-04-29 2009-11-17 Research In Motion Limited Method for generating text in a handheld electronic device and a handheld electronic device incorporating the same
US8788523B2 (en) * 2008-01-15 2014-07-22 Thomson Reuters Global Resources Systems, methods and software for processing phrases and clauses in legal documents
US8595263B2 (en) * 2008-06-02 2013-11-26 Microsoft Corporation Processing identity constraints in a data store
KR101842209B1 (ko) * 2008-06-18 2018-03-26 톰슨 라이센싱 디지털 문서의 디스플레이와 상기 문서 내에서의 네비게이션을 위해 상기 문서를 준비하는 모바일 디바이스
US8838626B2 (en) * 2009-12-17 2014-09-16 Intel Corporation Event-level parallel methods and apparatus for XML parsing
US9471653B2 (en) * 2011-10-26 2016-10-18 International Business Machines Corporation Intermediate data format for database population
US20130254553A1 (en) * 2012-03-24 2013-09-26 Paul L. Greene Digital data authentication and security system
CN102647458A (zh) * 2012-03-28 2012-08-22 成都立方体科技有限公司 在b/s结构手机移动办公系统中显示多种文件的方法
US10515141B2 (en) * 2012-07-18 2019-12-24 Software Ag Usa, Inc. Systems and/or methods for delayed encoding of XML information sets
US9922089B2 (en) 2012-07-18 2018-03-20 Software Ag Usa, Inc. Systems and/or methods for caching XML information sets with delayed node instantiation
CN103870487B (zh) * 2012-12-13 2017-07-25 腾讯科技(深圳)有限公司 网页文件处理方法及移动终端
US9898523B2 (en) 2013-04-22 2018-02-20 Abb Research Ltd. Tabular data parsing in document(s)
CN104182396B (zh) * 2013-05-21 2017-12-05 北大方正集团有限公司 终端、版式文档内容描述优化装置和方法
US10198583B2 (en) * 2013-11-26 2019-02-05 Sap Se Data field mapping and data anonymization
JP6784084B2 (ja) * 2016-07-27 2020-11-11 富士通株式会社 符号化プログラム、符号化装置、符号化方法、及び検索方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010042081A1 (en) * 1997-12-19 2001-11-15 Ian Alexander Macfarlane Markup language paring for documents
JP3623715B2 (ja) * 2000-04-07 2005-02-23 日本電気株式会社 通信端末装置
US7702995B2 (en) * 2000-04-24 2010-04-20 TVWorks, LLC. Method and system for transforming content for execution on multiple platforms
JP2001325248A (ja) * 2000-05-17 2001-11-22 Fuji Xerox Co Ltd 文書データ処理装置
AU2002226213A1 (en) * 2000-12-22 2002-07-08 Research In Motion Limited Information browser system and method for a wireless communication device
KR100411884B1 (ko) * 2000-12-27 2003-12-24 한국전자통신연구원 엑스엠엘 시스템과 비-엑스엠엘 시스템간의 데이터 전달을위한 아답터 장치 및 그를 이용한 데이터 전달 방법
US7546298B2 (en) * 2001-01-09 2009-06-09 Nextair Corporation Software, devices and methods facilitating execution of server-side applications at mobile devices
US20020107881A1 (en) * 2001-02-02 2002-08-08 Patel Ketan C. Markup language encapsulation
US20040054535A1 (en) * 2001-10-22 2004-03-18 Mackie Andrew William System and method of processing structured text for text-to-speech synthesis
US6880125B2 (en) * 2002-02-21 2005-04-12 Bea Systems, Inc. System and method for XML parsing
US20030184552A1 (en) * 2002-03-26 2003-10-02 Sanja Chadha Apparatus and method for graphics display system for markup languages
JP2005088239A (ja) * 2003-09-12 2005-04-07 Brother Ind Ltd 電子機器

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100597666B1 (ko) * 2005-01-31 2006-07-10 주식회사 네오엠텔 무선 인터넷 문서의 브라우징 방법 및 그 방법이 구현된무선 인터넷 단말 장치
KR101880507B1 (ko) * 2017-04-21 2018-07-20 주식회사 한글과컴퓨터 웹 문서에 삽입된 도형의 크기 조정을 지원하는 클라이언트 단말 장치 및 그 동작 방법
WO2018194323A1 (ko) * 2017-04-21 2018-10-25 주식회사 한글과컴퓨터 웹 문서의 편집을 지원하는 클라이언트 단말 장치 및 그 동작 방법
KR101880508B1 (ko) * 2017-04-27 2018-07-20 주식회사 한글과컴퓨터 웹 문서에서 목록 생성을 지원하는 웹 문서 편집 지원 장치 및 방법
KR101991297B1 (ko) * 2018-04-16 2019-06-20 주식회사 한글과컴퓨터 문서 편집 인터페이스의 커스터마이징을 지원하는 웹 기반의 문서 편집 지원 장치 및 그 동작 방법

Also Published As

Publication number Publication date
KR100483497B1 (ko) 2005-04-15
EP1570379A1 (en) 2005-09-07
US20060106837A1 (en) 2006-05-18
AU2003284768A1 (en) 2004-06-18
CN1732461A (zh) 2006-02-08
EP1570379A4 (en) 2010-04-28
WO2004049194A1 (en) 2004-06-10
CN100550007C (zh) 2009-10-14

Similar Documents

Publication Publication Date Title
KR100483497B1 (ko) 엘리먼트 기반 웹 문서의 파싱시스템 및 그 방법
CN104185845B (zh) 用于提供网页的二进制表示的系统和方法
CN100440222C (zh) 用于文本易读性增强的系统和方法
US7139975B2 (en) Method and system for converting structured documents
US20080301545A1 (en) Method and system for the intelligent adaption of web content for mobile and handheld access
US8145996B2 (en) Systems and methods for pagination and co-pagination
US20040268236A1 (en) System and method for structured document authoring
US20100205524A1 (en) Extensible stylesheet designs using meta-tag information
CN102053994B (zh) 一种语言解析器和应用该解析器的解析方法
US20120072831A1 (en) Method for creating a multi-lingual web page
US7552384B2 (en) Systems and method for optimizing tag based protocol stream parsing
Artail et al. Device-aware desktop web page transformation for rendering on handhelds
CA2452132C (en) Defining layout files by markup language documents
KR20110020115A (ko) 청구항 시각화 장치 및 방법
AU2002320843A1 (en) Defining layout files by markup language documents
KR101501459B1 (ko) 자동 번역 기술을 이용한 작문 시스템 및 방법
KR20010088529A (ko) 전자문서 편집/변환처리장치와 그 방법
Armstrong Working with XML
JP4337309B2 (ja) ブラウザ装置
JP4313698B2 (ja) 電子文書処理装置、電子文書処理方法および電子文書処理プログラム
KR20230114090A (ko) 직관적 리딩을 도와주는 언어 콘텐츠 서비스 제공 시스템
AU2016247060B2 (en) Translating xml with multiple namespace extensions
KR20050111329A (ko) 비트 스트림 형식을 일반적으로 기술하는 체계에 기초하여 문서를 생성하는 방법
Moujabbir et al. New method to parse invoice as a type the document
Flatt et al. Scribble: The Racket Documentation Tool

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120330

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20130325

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee