KR20060079648A - 통합 브라우징 시스템 및 그 방법 - Google Patents

통합 브라우징 시스템 및 그 방법 Download PDF

Info

Publication number
KR20060079648A
KR20060079648A KR1020050000102A KR20050000102A KR20060079648A KR 20060079648 A KR20060079648 A KR 20060079648A KR 1020050000102 A KR1020050000102 A KR 1020050000102A KR 20050000102 A KR20050000102 A KR 20050000102A KR 20060079648 A KR20060079648 A KR 20060079648A
Authority
KR
South Korea
Prior art keywords
server
markup language
user
module
engine
Prior art date
Application number
KR1020050000102A
Other languages
English (en)
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 KR1020050000102A priority Critical patent/KR20060079648A/ko
Publication of KR20060079648A publication Critical patent/KR20060079648A/ko

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/08Upper layer protocols
    • H04W80/12Application layer protocols, e.g. WAP [Wireless Application Protocol]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

서비스의 형태가 왑(Wap), 웹(Web) 또는 기타 규격과 같이 다양할 경우, 단말 내부에 하나의 통합 브라우저를 탑재함으로써, 다양한 데이터 규격을 수용할 수 있도록 한 통합 브라우징 시스템 및 그 방법이 개시된다. 상기 시스템은, A) 이동 단말의 전체적인 동작을 제어하기 위한 운용체제(OS)가 내장되며, 상기 이동 단말에 설치된 응용 소프트웨어를 구동하는 모바일 운영부; B) 서비스 제공자(Service Provider)에 내장된 서버와의 통신을 위한 소켓 접속을 처리하고, 상기 서버로부터의 데이터 전송 기능을 수행하는 네트워킹부; C) 상기 데이터에 포함된 소정 형태의 마크업 언어로 작성된 문서를 분석하고, 각 문서의 규격에 맞게 상기 마크업 언어를 파싱하며, 상기 파싱된 마크업 언어를 입력 받아 화면에 디스플레이 하는 브라우징 엔진부; 및 E) 사용자의 명령에 따라 화면 출력과 관련된 인터페이스를 수행하고, 상기 명령을 입력받아 해당 모듈로 전달하며, 각종 버튼 및 스킨의 배치와 서비스 영역에 대한 인터페이스 역할을 수행하는 사용자 인터페이스부로 구성된다.
통합 브라우저(Browser)

Description

통합 브라우징 시스템 및 그 방법{Integrated Browsing System And Method Thereof}
본 명세서에서 첨부되는 다음의 도면 들은 본 발명의 바람직한 실시예를 예시하는 것이며, 후술하는 발명의 상세한 설명과 함께 본 발명의 기술사상을 더욱 이해 시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니된다.
도 1은 종래 기술에 따른 일반적인 통합 브라우저의 구성을 보인 도이다.
도 2는 본 발명에 따른 통합 브라우징 시스템의 개략적인 구성을 보인 도이다.
도 3은 본 발명에 따른 통합 브라우징 시스템 내부의 모듈별 세부 구성을 보인 도이다.
< 도면의 주요 부분에 대한 부호 설명>
21: 모바일 운영부 22: 네트워킹부
22-1: 접속 모듈 22-2: 네트워크 모듈
22-3: SSL/TSL 모듈 22-4: HTTP 프로토콜 어댑터
22-4A:쿠키 관리부 22-4B: 캐쉬 관리부
22-4C: 히스토리 관리부 23: 브라우징 엔진부
23-1: 파싱 엔진 23-1A: HTML 파서
23-1B: xHtml/WML 파서 23-1C: WCSS 파서
23-1D: 자바 스크립트 파서 23-1E: WML 스크립트 컴파일러
23-2: 렌더링 엔진 23-2A: HTML 렌더러
23-2B: xHtml/WML 렌더러 23-2C: 이미지 처리부
23-3: 스크립트 엔진 23-3A: 자바 스크립트 엔진
23-3B: WML 스크립트 번역기 24: 사용자 인터페이스부
24-1: 오프라인 홈 핸들러 24-2: 메뉴/툴바 핸들러
본 발명은 휴대 인터넷 환경에서의 전용단말을 위한 통합 브라우저에 관한 것으로서, 보다 상세하게는 서비스의 형태가 왑(Wap), 웹(Web) 또는 기타 규격과 같이 다양할 경우, 단말 내부에 하나의 통합 브라우저를 탑재함으로써 다양한 데이터 규격을 수용할 수 있도록 한 통합 브라우징 시스템 및 그 방법에 관한 것이다.
현재 무선 인터넷에서는 다양한 포맷의 컨텐츠와 이를 전송하기 위한 다양한 프로토콜 들이 아직 정형화 되지 않은 상태에서 무선상의 컨텐츠 서비스를 지원하고 있다.
WAP 에서 제안된 마크업 언어(Markup Language)인 WML 은 게이트웨이에서 인코딩되어 무선구간에서 축소된 컨텐츠 전송을 가능하게 하며 또한 무선 서비스에 적합한 컨텐츠 포맷을 지원하지는 못하지만 그 보급면에서 무선 상에서의 지원을 필요로 한다. 또한, 무선 인터넷 프로토콜 표준으로 자리잡은 WAP 은 무선상의 서비스에 최적화되어 과다한 오버헤드와 응답을 축소하였으며, HTTP 는 현재까지 유선상의 다양한 서비스에서 잘 활용되고 있으나, 이를 무선상에서 적용하는데 있어서는 과다한 오버헤드 등의 다양한 문제가 존재한다.
하지만, 유선상의 컨텐츠 서버에 직접적인 연결을 하거나 유선의 프로토콜과의 보다 원활한 호환을 위해 HTTP 프로토콜의 지원을 필요로 한다.
현재 무선상에서 지원되는 컨텐츠들은 단일한 규격의 컨텐츠만을 지원하는 에이전트(Agent)로 인해 웹(Web) 정보에 있어 유무선 간의 실질적인 공유가 어려운 상황이다.
유무선 간 정보의 공유를 위해 클라이언트는 컨텐츠의 종류와 상관없이 혹은 어떤 서버가 어떤 프로토콜을 지원하는가에 상관없이 사용자에게 정보를 보여줄 수 있어야 한다.
현재는 컨텐츠 제공자(Contents Provider)가 같은 내용의 컨텐츠를 다른 마크업 언어로 다시 제작하는 방식에 의존하거나 혹은 게이트웨이에서 클라이언트 에이전트(Agent)가 정보를 처리할 수 있는 형식으로 변환(Conversion)하는 등의 다양한 방법이 적용되고 있다.
그러나, 게이트웨이에 이러한 기능들을 위탁할 경우 만일 게이트웨이에서 적절한 변환을 지원하지 못한다면 이 정보를 적절하게 활용하지 못할 것이다. 그리고, 마크업 언어의 특성의 차이를 해결한다 해도 컨텐츠 제공자의 의도대로의 완전 한 변환은 사실상 불가능한 문제점이 있다.
이하, 상기 문제점을 극복하기 위하여 개발되어 사용되고 있는 기존의 일반적인 통합 브라우저의 동작에 대하여 설명한다.
도 1은 종래 기술에 따른 일반적인 통합 브라우저의 구성을 보인 도이다.
도시된 바와 같이, 상기 통합 브라우저는 엔진의 구조를 가진다.
상기 엔진의 내부에는 컨버터(Converter)와 파서(Parser) 그리고 렌더러(Renderer)가 존재한다. 일반적으로 컨버터(Converter)는 왑(Wap)의 WML을 HTML로 변환하는 변환기이다. WML 문서를 만났을 때 단말 내부에서 HTML로 변환하여 HTML 파서(Parser)로 보내고, 상기 HTML 파서(Parser)는 다시 상기 렌더러(Renderer)로 데이터를 전송하며, 다시 브라우저 매니저를 거친 후에 UI 컨포넌트를 통해서 디스플레이 되는 형태를 취한다.
현재, 서로 다른 규격을 서비스 하기 위해서는 디바이스 내부에 개별 단위로 브라우저 엔진을 탑재해야만 한다. 이를 적용할 경우, 휴대 단말 메모리 공간이 협소하여, 동시에 상기 개별동작을 수행할 경우 수행 속도가 저하될 수 있다. 그리고, 유지 보수에 있어서 개별 단위로 적용해야 하는 번거로움이 있으며 통일된 규격으로 수용하기 곤란하다.
따라서, 현재의 이동통신 단말기와 PDA에서는 기존 웹(Web) 사이트의 컨텐츠 서비스를 충분히 제공받을 수 없다. 그러므로, 향후에 제공되는 휴대 인터넷 뿐만 아니라 기타 모바일 단말에서 모든 규격을 채용하기 위해 단말 내부에 통합 브라우저를 적용할 필요성이 대두되고 있다.
따라서, 상기한 종래 기술의 제반 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 서비스의 형태가 왑(Wap), 웹(Web) 또는 기타 규격과 같이 다양할 경우, 단말 내부에 하나의 통합 브라우저를 탑재함으로써 이와 같이 다양한 데이터 규격을 수용할 수 있도록 한 통합 브라우징 시스템 및 그 방법을 제공함에 있다.
본 발명에 의하면, 서비스의 형태가 왑(Wap), 웹(Web) 또는 기타 규격과 같이 다양할 경우, 단말 내부에 통합 브라우징 시스템을 탑재하여 상기와 같이 다양한 데이터 규격을 수용함으로써 정보 제공의 다양성을 기대할 수 있으며, 핸드셋에서 자유롭게 특정 왑 사이트 또는 웹 사이트의 정보를 조회할 수 있게 된다.
상기 첨부 도면의 구성요소 들에 참조부호를 부가함에 있어서는 동일한 구성요소 들에 한해서 비록 다른 도면 상에 표시 되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의하여야 한다. 또한, 하기 설명 및 첨부 도면에서 구체적인 처리 흐름과 같은 많은 특정 상세 들이 본 발명의 보다 전반적인 이해를 제공하기 위해 나타나 있다. 이들 특정 상세 들 없이 본 발명이 실시될 수 있다는 것은 이 기술분야에서 통상의 지식을 가진 자에게 자명할 것이다. 그리고, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략한다.
이하, 첨부된 도면에 의거하여 본 발명의 바람직한 실시예를 보다 상세하게 설명한다.
본 발명에 따른 통합 브라우징 시스템은, A) 이동 단말의 전체적인 동작을 제어하기 위한 운용체제(OS)가 내장되며, 상기 이동 단말에 설치된 응용 소프트웨어를 구동하는 모바일 운영부; B) 서비스 제공자(Service Provider)에 내장된 서버와의 통신을 위한 소켓 접속을 처리하고, 상기 서버로부터의 데이터 전송 기능을 수행하는 네트워킹부; C) 상기 데이터에 포함된 소정 형태의 마크업 언어로 작성된 문서를 분석하고, 각 문서의 규격에 맞게 상기 마크업 언어를 파싱하며, 상기 파싱된 마크업 언어를 입력 받아 화면에 디스플레이 하는 브라우징 엔진부; 및 E) 사용자의 명령에 따라 화면 출력과 관련된 인터페이스를 수행하고, 상기 명령을 입력받아 해당 모듈로 전달하며, 각종 버튼 및 스킨의 배치와 서비스 영역에 대한 인터페이스 역할을 수행하는 사용자 인터페이스부를 포함하는 것을 특징으로 한다.
또한, 본 발명에 따른 통합 브라우징 방법은, 가) 서비스 제공자(Service Provider)에 내장된 서버와의 통신을 위한 소켓 접속을 수행하는 단계; 나) 상기 서버로부터 소정 형태의 마크업 언어로 작성된 문서를 다운로드 받는 단계; 다) 상기 각 문서를 분석하고, 각 문서의 규격에 맞게 상기 마크업 언어를 파싱(Parsing)하는 단계; 및 라) 상기 파싱된 마크업 언어를 입력 받아 화면에 디스플레이 하는 단계를 포함하는 것을 특징으로 한다.
도 2는 본 발명에 따른 통합 브라우징 시스템의 개략적인 구성을 보인 도이다.
이에 도시된 바와 같이, 본 발명에 따른 통합 브라우징 시스템(20)은, 모바일 운영부(21), 네트워킹부(22), 브라우징 엔진부(23) 및 사용자 인터페이스부(24) 로 구성되어 있다.
먼저, 상기 모바일 운영부(21)는 이동 단말의 전체적인 동작을 제어하기 위한 운용체제를 내장하고 있으며, 이동 단말 상에 채택된 다양한 응용 소프트웨어를 구동한다.
상기 네트워킹부(22)는 접속 모듈(Connection Module)(22-1), 네트워크 모듈(Network Module)(22-2), SSL/TLS 모듈(Module)(22-3) 및 HTTP 프로토콜 어댑터(Protocol Adaptor)(22-4)를 포함하며, 상기 접속 모듈(Connection Module)(22-1)은 외부 서버와의 무선 접속을 위한 모듈이고, 상기 네트워크 모듈(Network Module)(22-2)은 상기 외부 서버와의 모든 통신을 위한 소켓 작업을 처리하고, 실질적인 소켓 접속과 데이터의 전송 기능을 담당한다.
상기 SSL/TLS 모듈(Module)(22-3)은 인증, 기밀 및 무결성 서비스 제공을 위해 SSL/TLS 프로토콜을 수용하는 모듈이고, 상기 HTTP 프로토콜 어댑터(Protocol Adaptor)(22-4)는 HTTP 통신 프로토콜 규격을 수용하는 모듈로서, HTTP 프로토콜 규격에 맞추어 각종 컨텐츠를 요청하고 다운로드 한다.
상기 브라우징 엔진부(Browsing Engine)(23)는 파싱 엔진(Parsing Engine)(23-1), 렌더링 엔진(Rendering Engine)(23-2) 및 스크립트 엔진(Script Engine)(23-3)을 포함하고 있다.
상기 파싱 엔진(Parsing Engine)(23-1)은 HTML, JavaScript, XML, WML, WCSS, WMLScript 등을 분석하는 역할을 하며, 이때, 상기 WML 형식의 마크업 문자들은 HTML 형식의 문자들로 변환(Converting) 된다.
상기 렌더링 엔진(Rendering Engine)(23-2)은 상기 파싱 엔진(Parsing Engine)으로부터 분석된 데이터에 대해서 표현(Rendering)하는 역할을 수행하고, 상기 스크립트 엔진(Script Engine)(23-3)은 JavaScript, WML Script 등의 스크립트 문자 들을 분석하고 실행한다.
또한, 상기 브라우징 엔진부(23)의 추가적인 기능으로는, 쿠키(Cookie)와 캐쉬(Cache)를 관리하며, 컨텐츠(Contents)의 다운로드 기능도 수행한다.
상기 사용자 인터페이스부(24)는 화면출력에 직접적으로 관련된 사용자 인터페이스(User Interface)로서, 사용자가 직접 접하게 되는 부분이다. 각종 버튼 및 스킨의 배치와 서비스 영역에 대한 인터페이스(Interface)로서의 역할을 수행한다.
도 3은 본 발명에 따른 통합 브라우징 시스템 내부의 모듈별 세부 구성을 보인 도로서, 이를 참조하여 상기와 같이 구성된 본 발명의 작용을 더욱 상세히 설명하면 다음과 같다.
상기 모바일 운영부(21)에 의해 컨텐츠 프로그램이 상기 통합 브라우징 시스템에 다운로드 되고, 이를 구동하는 초기 동작에 대하여는, 본 발명에 있어 본질적인 것이 아니기 때문에 생략하기로 한다.
이후, 상기 네트워킹부(22)의 접속 모듈(22-1)은 상기 모바일 운영부(21)에서 제공되는 PPP(Point-to-Point Protocol) 접속 기능을 제어함으로써 서비스 제공자(Service Provider)의 서버와 실질적인 데이터 통신 을 수행한다. 즉, 본 발명에 따른 통합 브라우징 시스템의 필요에 의하여, PPP 연결 및 접속 해제 또는 온라인 상태 검사 등의 기능을 수행하게 된다.
또한, 상기 접속 모듈(22-1)은 무선 인터넷 플랫폼(예를 들면, Nate, Magicn 등)과의 무선 접속에 필요한 인증 절차를 수행하는데, 이 때 필요한 통합 브라우징 시스템의 사용자-에이젼트(User-Agent) 값을 생성하여 인증 프로세스를 수행하고, 이 값을 상기 브라우징 시스템에 제공하여 컨텐츠 요청시 사용할 수 있도록 한다. 상기 접속 모듈(22-1)은 다른 어플리케이션에서도 사용 가능 하도록 공유 라이브러리(Shared Library)로 구현되어 있다.
상기 PPP 연결이 수행된 후에 상기 서버와의 모든 통신은 소켓을 통해 이루어지는데, 상기 네트워크 모듈(Network Module)(22-2)은 상기 HTTP 프로토콜 어댑터(Protocol Adaptor)(22-4)가 HTTP Protocol을 구현하는데 필요한 모든 소켓 작업을 처리하여 실질적인 소켓 접속과 데이터의 전송을 수행한다.
한편, 상기 SSL/TLS 모듈(Module)(22-3)은 인증, 기밀 및 무결성 서비스 제공을 위해 SSL/TLS 프로토콜을 수용하는 모듈로서, 상기 HTTP 프로토콜 어댑터(Protocol Adaptor)(22-4)가 상기 서버와의 보안 연결 시에 호출된다. 또한, 상기 SSL/TLS 모듈(Module)(22-3)은 SSL/TLS 접속 및 전송 데이터 암호화 등의 기능을 제공하며, 서비스 제공자(이동 통신회사)로부터 제공되는 모듈을 이용한다.
상기 HTTP 프로토콜 어댑터(Protocol Adaptor)(22-4)는 HTTP 통신 프로토콜 규격을 수용하는 모듈로서, 프록시(Proxy)로 이용되는 상기 서버로부터 HTTP 프로토콜 규격에 따라 각종 컨텐츠를 요청하고 다운로드 한다. 상기 서버와의 접속과 데이터 전송은 상기 접속 모듈(Network Module)(22-1)이 제공하는 기능을 통해 구현된다.
상기 HTTP 프로토콜 어댑터(Protocol Adaptor)(22-4)는 3 개의 모듈로 구성되는데, 먼저, 쿠키 관리부(Cookie Manager)(22-4A)는 상기 서버로 부터 다운로드 되는 쿠키 정보를 저장하고 관리하는 모듈로서, 각 도메인과 경로(Path) 별 쿠키 값을 관리하여 상기 HTTP 프로토콜 어댑터(Protocol Adaptor)(22-4)가 컨텐츠 요청 시에 적절한 쿠키 값을 사용할 수 있도록 요청된 URL에 맞추어 쿠키 값을 전달한다.
둘째로, 캐쉬 관리부(Cache Manager)(22-4B)는 이미 방문한 페이지들과 이미지들을 저장하여 재사용할 수 있도록 한다. 상기 페이지와 이미지들을 URL 별로 저장하여 상기 HTTP 프로토콜 어댑터(Protocol Adaptor)(22-4)가 이미 저장된 URL의 컨텐츠를 필요로 하는 경우, 상기 서버에 재 접속하지 않고 컨텐츠를 보여줄 수 있다.
마지막으로, 히스토리 관리부(History Manager)(22-4C)는 본 발명에 따른 통합 브라우징 시스템이 제공하는 후방 탐색(Backward Navigation) 기능을 구현하기 위해서 탐색 히스토리(Navigation History)를 관리한다. 이전에 방문한 페이지들이 순서대로 저장되고, 백(Back) 버튼이 클릭된 경우, 이전 페이지의 URL을 상기 HTTP 프로토콜 어댑터(Protocol Adaptor)(22-4)로 제공한다.
이후, 상기 브라우징 엔진부(23)의 파싱 엔진(Parsing Engine)(23-1)은 상기 HTTP 프로토콜 어댑터(Protocol Adaptor)(22-4)를 통하여 다운로드 받은 페이지를 분석하여, 상기 렌더링 엔진(Rendering Engine)(23-2)이 처리할 수 있는 형태로 변환한다. 즉, 상기 파싱 엔진(Parsing Engine)(23-1)은 HTML, JavaScript, XML, WML, WCSS, WMLScript 등을 분석하는 역할을 하며, 이때, 상기 WML 형식의 마크업 문자들은 HTML 형식의 문자들로 변환(Converting)된다.
상기 파싱 엔진(Parsing Engine)(23-1)은 HTML 파서(Parser)(23-1A), xHTML / WML 파서(Parser)(23-1B), WCSS 파서(Parser)(23-1C), 자바 스크립트 파서(Java Script Parser)(23-1D) 및 WML 스크립트 컴파일러(Script Compiler)(23-1E)로 구성되어 있으며, 상기 파싱 엔진(Parsing Engine)(23-1)에 의해 생성된 결과물은 상기 렌더링 엔진(Rendering Engine)(23-2) 및 스크립트 엔진(Script Engine)(23-3)의 입력으로 사용된다.
또한, 상기 파싱 엔진(Parsing Engine)(23-1)은 페이지를 전처리(Preprocessing)하여 상기 내부의 각 모듈들 중 어느 모듈로 전달해야 하는지의 적정성을 판단한 후 전달하게 된다.
이하, 상기 파싱 엔진(Parsing Engine)(23-1)에 포함된 상기 각 장치들에 의한 파싱 과정에 대하여 설명하면 다음과 같다.
먼저, 상기 HTML 파서(Parser)(23-1A)는 HTML 문서의 규격에 맞추어 파싱(Parsing)을 수행한다. 즉, 상기 HTML 파서(Parser)(23-1A)는 입력 파일을 토큰 형태로 분리하고 문법에 맞는지 검사하며 상기 렌더링 엔진(Rendering Engine)(23-2)에서 처리할 수 있는 형태로 변환하며, 만일 에러 문법이 발견되는 경우에는 가능한 한 많은 내용을 보여줄 수 있도록 자체적으로 에러 처리를 한다.
또한, 상기 xHTML / WML 파서(Parser)(23-1B)는 xHTML / WML 문서의 규격에 맞추어 파싱(Parsing)을 수행한다. 즉, 상기 xHTML / WML 파서(Parser)(23-1B)는 입력 파일을 토큰 형태로 분리하고 문법에 맞는지 검사하며 상기 렌더링 엔진(Rendering Engine)(23-2)에서 처리할 수 있는 형태로 변환하며, 이후의 처리과정은 상기 HTML 파서(Parser)(23-1A)와 동일하다.
또한, 상기 WCSS 파서(Parser)(23-1C)는 상기 xHTML / WML 문서의 각 태그(Tag)에 지정된 스타일(Style) 속성이나 링크 태그(Link Tag)에 지정된 CSS 문서를 입력 받아 분석하여 각 태그(Tag)에 적용할 수 있도록 변환한다. 상기 렌더링 엔진(Rendering Engine)(23-2)는 화면 구성 시에 상기 WCSS 파서(Parser)(23-1C)에서 변환된 결과물을 입력 받아 이용하게 된다.
또한, 상기 자바 스크립트 파서(Java Script Parser)(23-1D)는 자바 스크립트(JavaScript)에 대하여 문법에 맞추어 파싱(Parsing)을 수행하고, 후술할 자바 스크립트 엔진(JavaScript Engine)(23-3A)에서 수행될 수 있도록 변환한다. 상기 자바 스크립트 파서(Java Script Parser)(23-1D)는 자바 스크립트의 모든 사양(JavaScript Full Spec)을 지원하고 있지는 않으며 컨텐츠 제작에 필요한 최소한의 사양(Spec)만을 지원한다.
마지막으로, 상기 WML 스크립트 컴파일러(Script Compiler)(23-1E)는 WML 문서에 링크되어 있는 WML 스크립트(Script) 파일을 분석하여 바이트 코드(Byte Code) 형태로 변환한다. 여기에서 생성된 결과물은 후술할 WML 스크립트 번역기(Script Interpreter)(23-3B)로 전달되어 실행되며, 문법에 에러가 있는 경우는 무시하고 실행되지 않는다.
이후, 상기 렌더링 엔진(Rendering Engine)(23-2)은 상기 파싱 엔진(Parsing Engine)(23-1)으로부터 분석된 데이터에 대해서 표현(Rendering)하는 역할, 즉 상기 데이터를 전달받아 화면 크기에 맞게 배치하고 디스플레이 하는 기능을 수행한다. 상기 HTML 파서(23-1A), xHTML / WML 파서(23-1B) 및 WCSS 파서(23-1C)로부터 나오는 결과물을 처리하게 되며 내부적으로 HTML 렌더러(23-2A)와 xHTML / WML 렌더러(23-2B)로 나누어져 처리를 하게 된다.
이하, 상기 렌더링 엔진(Rendering Engine)(23-2)에 포함된 상기 각 장치들에 의한 렌더링 과정에 대하여 설명하면 다음과 같다.
먼저, 상기 HTML 렌더러(23-2A)는 상기 HTML 파서(23-1A)로부터 생성된 결과물을 이용하여 페이지의 내용을 화면 너비에 맞도록 화면에 그리는 기능을 한다.
한편, 상기 xHTML / WML 렌더러(23-2B)는 상기 xHTML / WML 파서(23-1B) 로부터 생성된 결과물을 이용하여 페이지의 내용을 화면 너비에 맞도록 화면에 그리는 기능을 한다.
마지막으로, 상기 이미지 처리부(Image Processor)(23-2C)는 상기 외부 서버로부터 내려온 각종 이미지들을 디코딩(Decoding) 하여 화면에 보여질 수 있는 구조로 변환한다. 바람직하게, 상기 각종 이미지는, Jpg, Gif, Png, Wbmp, Sis 포맷이 될 수 있다.
이후, 상기 스크립트 엔진(Script Engine)(23-3)은 자바 스크립트 엔진(23-3A) 및 WML 스크립트 번역기(23-3B)를 통해 각각 JavaScript, WML Script 등의 스크립트 문자 들을 분석하고 실행하는데, 이에 대하여 좀더 설명하면 다음과 같다.
먼저, 상기 자바 스크립트 엔진(23-3A)은 HTML 문서 상에 포함된 자바 스크 립트(JavaScript)를 분석하고 실행하는데, 본 발명에 적용되는 브라우징 시스템 내에는 자바 스크립트(JavaScript)의 섭셋(Subset)이 구현되어 있다.
상기 WML 스크립트 번역기(23-3B)는 WML 스크립트 표준 라이브러리(Script Standard Library)를 지원하며, 상기 WML 스크립트 컴파일러(23-1E) 에서 생성된 바이트 코드(Byte Code)를 입력 받아 실행한다.
최종적으로, 상기 사용자 인터페이스부(24)는 화면출력에 직접적으로 관련된 사용자 인터페이스(User Interface)로서, 사용자가 직접 접하게 되는 부분이다. 즉, 사용자 입력을 입력 받아 적절하게 처리될 수 있도록 해당 모듈로 전달하는 기능을 수행하며, 각종 버튼 및 스킨의 배치와 서비스 영역에 대한 인터페이스(Interface)로서의 역할도 수행한다.
이하, 상기 사용자 인터페이스부(24)에 포함된 오프라인 홈 핸들러(Off-Line Home Handler)(24-1) 및 메뉴/툴바 핸들러(Menu/Toolbar Handler)(24-2)에 의한 사용자 인터페이싱 과정에 대하여 설명하면 다음과 같다.
먼저, 오프라인 홈 핸들러(Off-Line Home Handler)(24-1)는 사용자에게 컨텐츠를 빠르게 사용할 수 있도록 하기 위하여 접속이 되지 않은 상태에서 메뉴 페이지를 보여준다. 실질적인 서버 접속이 이루어지면, 서버로부터 최신의 메뉴 내용을 다운받아 메뉴의 내용을 업데이트 한다.
상기 메뉴/툴바 핸들러(Menu/Toolbar Handler)(24-2)는 사용자가 메뉴 항목을 선택하거나 툴바의 버튼을 클릭한 경우 발생하는 이벤트를 처리하며, 필요한 경우 사용자의 입력을 받는 새로운 윈도우를 띄우거나 페이지 네비게이션 등의 사용 자 요청을 처리한다.
이상에서 설명한 바와 같이, 본 발명에 따른 통합 브라우징 시스템은, 서비스의 형태가 왑(Wap), 웹(Web) 또는 기타 규격과 같이 다양할 경우, 단말 내부에 탑재되어 상기와 같이 다양한 데이터 규격을 수용함으로써 정보 제공의 다양성을 기대할 수 있으며, 핸드셋에서 자유롭게 특정 왑 사이트 또는 웹 사이트의 정보를 조회할 수 있게 된다.
이상에서는 본 발명을 특정의 바람직한 실시예로서 설명하였으나, 본 발명은 상기한 실시예에 한정되지 아니하며, 특허 청구의 범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형이 가능할 것이다.
따라서, 본 발명에 의하면, 서비스의 형태가 왑(Wap), 웹(Web) 또는 기타 규격과 같이 다양할 경우, 단말 내부에 통합 브라우징 시스템을 탑재하여 상기와 같이 다양한 데이터 규격을 수용함으로써 표준화 규격을 수용할 수 있고, 개별 단위로 브라우저를 적용하는 것 보다 개발 비용이 감소하며, 유지 보수 비용이 또한 감소하게 된다.

Claims (11)

  1. A) 이동 단말의 전체적인 동작을 제어하기 위한 운용체제(OS)가 내장되며, 상기 이동 단말에 설치된 응용 소프트웨어를 구동하는 모바일 운영부;
    B) 서비스 제공자(Service Provider)에 내장된 서버와의 통신을 위한 소켓 접속을 처리하고, 상기 서버로부터의 데이터 전송 기능을 수행하는 네트워킹부;
    C) 상기 데이터에 포함된 소정 형태의 마크업 언어로 작성된 문서를 분석하고, 각 문서의 규격에 맞게 상기 마크업 언어를 파싱하며, 상기 파싱된 마크업 언어를 입력 받아 화면에 디스플레이 하는 브라우징 엔진부; 및
    E) 사용자의 명령에 따라 화면 출력과 관련된 인터페이스를 수행하고, 상기 명령을 입력받아 해당 모듈로 전달하며, 각종 버튼 및 스킨의 배치와 서비스 영역에 대한 인터페이스 역할을 수행하는 사용자 인터페이스부를 포함하는 것을 특징으로 하는 통합 브라우징 시스템.
  2. 제 1 항에 있어서, 상기 데이터는,
    상기 서비스 제공자의 서버로부터 전송된 웹 또는 왑 페이지의 URL 인 것을 특징으로 하는 통합 브라우징 시스템.
  3. 제 1 항에 있어서, 상기 각 문서는,
    HTML, JavaScript, XML, WML, WCSS 또는 WMLScript 중 어느 하나로 작성된 문서인 것을 특징으로 하는 통합 브라우징 시스템.
  4. 제 1 항에 있어서, 상기 네트워킹부는,
    B-1) 상기 서비스 제공자(Service Provider)의 서버와 데이터 통신을 수행하기 위하여 상기 모바일 운영부로부터 제공되는 PPP(Point-to-Point Protocol) 접속 기능을 제어하는 접속 모듈(Connection Module);
    B-2) 상기 서버와의 HTTP Protocol을 구현하는데 필요한 모든 소켓 작업을 처리하여 소켓 접속 및 데이터의 전송을 수행하는 네트워크 모듈(Network Module);
    B-3) 인증, 기밀 및 무결성 서비스 제공을 위해 SSL/TLS 접속 및 전송 데이터 암호화 기능을 수행하는 SSL/TLS 모듈; 및
    B-4) HTTP 통신 프로토콜 규격을 수용하는 모듈로서, 프록시(Proxy)로 이용되는 상기 서버로부터 HTTP 프로토콜 규격에 따라 각종 컨텐츠를 요청하고 다운로드 하는 HTTP 프로토콜 어댑터(Protocol Adaptor)를 포함하는 것을 특징으로 하는 통합 브라우징 시스템.
  5. 제 4 항에 있어서, 상기 접속 모듈은,
    상기 시스템의 필요에 의하여, PPP 연결 및 접속 해제 또는 온라인 상태 검사 등의 기능을 수행하는 것을 특징으로 하는 통합 브라우징 시스템.
  6. 제 4 항 또는 제 5 항에 있어서, 상기 접속 모듈은,
    무선 인터넷 플랫폼과의 무선 접속에 필요한 인증 절차를 수행하고, 상기 시스템의 사용자-에이젼트(User-Agent) 값을 생성하여 인증 프로세스를 수행하며, 이 값을 컨텐츠 요청시 사용하는 것을 특징으로 하는 통합 브라우징 시스템.
  7. 제 1 항에 있어서, 상기 브라우징 엔진부는,
    C-1) 상기 서버로부터 전송된 HTML, JavaScript, XML, WML, WCSS, WMLScript 문자들을 분석한 후, 상기 WML 형식의 마크업 문자들을 HTML 형식의 문자들로 변환(Converting)하는 파싱 엔진(Parsing Engine);
    C-2) 상기 파싱 엔진(Parsing Engine)으로부터 분석된 데이터를 화면에 배치하고 디스플레이 하는 렌더링 엔진(Rendering Engine); 및
    C-3) 상기 JavaScript, WML Script와 같은 스크립트 문자를 분석하고 실행하는 스크립트 엔진(Script Engine)을 포함하는 것을 특징으로 하는 통합 브라우징 시스템.
  8. 제 1 항에 있어서, 상기 사용자 인터페이스부는,
    E-1) 사용자에게 컨텐츠를 빠르게 사용할 수 있도록 하기 위하여 상기 서버와 접속이 되지 않은 상태에서 메뉴 페이지를 사용자에게 디스플레이 하는 오프라인 홈 핸들러(Off-Line Home Handler); 및
    E-2) 사용자가 메뉴 항목을 선택하거나 툴바의 버튼을 클릭한 경우 발생하는 이벤트를 처리하며, 필요한 경우 사용자의 입력을 받는 새로운 윈도우를 띄우거나 페이지 네비게이션의 사용자 요청을 처리하는 메뉴/툴바 핸들러(Menu/Toolbar Handler)를 포함하는 것을 특징으로 하는 통합 브라우징 시스템.
  9. 제 8 항에 있어서, 상기 오프라인 홈 핸들러(Off-Line Home Handler)는,
    서버 접속이 이루어지면, 상기 서버로부터 최신의 메뉴 내용을 다운받아 메뉴의 내용을 업데이트 하는 것을 특징으로 하는 통합 브라우징 시스템.
  10. 가) 서비스 제공자(Service Provider)에 내장된 서버와의 통신을 위한 소켓 접속을 수행하는 단계;
    나) 상기 서버로부터 소정 형태의 마크업 언어로 작성된 문서를 다운로드 받는 단계;
    다) 상기 각 문서를 분석하고, 각 문서의 규격에 맞게 상기 마크업 언어를 파싱(Parsing)하는 단계; 및
    라) 상기 파싱된 마크업 언어를 입력 받아 화면에 디스플레이 하는 단계를 포함하는 것을 특징을 하는 통합 브라우징 방법.
  11. 제 10 항에 있어서, 상기 방법은,
    마) 사용자의 명령에 따라 화면 출력과 관련된 인터페이스를 수행하고, 상기 명령을 입력받아 해당 모듈로 전달하며, 각종 버튼 및 스킨의 배치와 서비스 영역에 대한 인터페이스를 수행하는 단계를 더 포함하는 것을 특징으로 하는 통합 브라 우징 방법.
KR1020050000102A 2005-01-03 2005-01-03 통합 브라우징 시스템 및 그 방법 KR20060079648A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050000102A KR20060079648A (ko) 2005-01-03 2005-01-03 통합 브라우징 시스템 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050000102A KR20060079648A (ko) 2005-01-03 2005-01-03 통합 브라우징 시스템 및 그 방법

Publications (1)

Publication Number Publication Date
KR20060079648A true KR20060079648A (ko) 2006-07-06

Family

ID=37171248

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050000102A KR20060079648A (ko) 2005-01-03 2005-01-03 통합 브라우징 시스템 및 그 방법

Country Status (1)

Country Link
KR (1) KR20060079648A (ko)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100936612B1 (ko) * 2008-02-20 2010-01-13 주식회사 케이티 모바일 인터넷 브라우저에서의 멀티미디어 콘텐츠 로딩방법 및 이를 위한 무선통신단말
KR100984816B1 (ko) * 2008-08-20 2010-10-01 주식회사 컴퍼니원헌드레드 3d 그래픽스 사용자 인터페이스 모델링 언어 기반의 모바일 응용 프로그램 구성 방법
KR101068292B1 (ko) * 2008-08-11 2011-09-28 에스케이 텔레콤주식회사 단말장치 및 단말장치의 ui 제공 방법
KR101373863B1 (ko) * 2012-11-30 2014-03-14 성균관대학교산학협력단 요청 대행 프록시를 이용한 모바일 인터넷 접속 방법 및 시스템
KR101470646B1 (ko) * 2008-09-29 2014-12-08 주식회사 엘지유플러스 이동통신단말기의 통합 브라우징 시스템 및 이에 적용되는 이동통신단말기
KR20160075211A (ko) * 2014-12-19 2016-06-29 한국전자통신연구원 위성관제 시스템의 절차서 처리 장치 및 처리 방법
WO2018110763A1 (ko) * 2016-12-13 2018-06-21 주식회사 모코플렉스 스크립트의 자동 생성 방법 및 프로그램
KR101888792B1 (ko) * 2017-04-18 2018-08-14 엘에스산전 주식회사 데이터 통신 방법 및 이를 포함하는 시스템

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100936612B1 (ko) * 2008-02-20 2010-01-13 주식회사 케이티 모바일 인터넷 브라우저에서의 멀티미디어 콘텐츠 로딩방법 및 이를 위한 무선통신단말
KR101068292B1 (ko) * 2008-08-11 2011-09-28 에스케이 텔레콤주식회사 단말장치 및 단말장치의 ui 제공 방법
KR100984816B1 (ko) * 2008-08-20 2010-10-01 주식회사 컴퍼니원헌드레드 3d 그래픽스 사용자 인터페이스 모델링 언어 기반의 모바일 응용 프로그램 구성 방법
KR101470646B1 (ko) * 2008-09-29 2014-12-08 주식회사 엘지유플러스 이동통신단말기의 통합 브라우징 시스템 및 이에 적용되는 이동통신단말기
KR101373863B1 (ko) * 2012-11-30 2014-03-14 성균관대학교산학협력단 요청 대행 프록시를 이용한 모바일 인터넷 접속 방법 및 시스템
KR20160075211A (ko) * 2014-12-19 2016-06-29 한국전자통신연구원 위성관제 시스템의 절차서 처리 장치 및 처리 방법
WO2018110763A1 (ko) * 2016-12-13 2018-06-21 주식회사 모코플렉스 스크립트의 자동 생성 방법 및 프로그램
KR101888792B1 (ko) * 2017-04-18 2018-08-14 엘에스산전 주식회사 데이터 통신 방법 및 이를 포함하는 시스템

Similar Documents

Publication Publication Date Title
US7461134B2 (en) Bi-directional communication between a web client and a web server
US7523223B2 (en) Web control simulators for mobile devices
US6836886B2 (en) Method and apparatus for delivering electronic information
US7958232B1 (en) Dashboard for on-the-fly AJAX monitoring
US8849985B1 (en) On-the-fly instrumentation of Web applications, Web-pages or Web-sites
US8639743B1 (en) System and method for on-the-fly rewriting of JavaScript
US6480882B1 (en) Method for control and communication between computer systems linked through a network
US8719451B1 (en) System and method for on-the-fly, post-processing document object model manipulation
EP2264618A1 (en) Virtual machine web browser
US20050066037A1 (en) Browser session mobility system for multi-platform applications
US20030115365A1 (en) Transcoding information in a first markup language into a second markup language
Britton et al. Transcoding: Extending e-business to new environments
US8819539B1 (en) On-the-fly rewriting of uniform resource locators in a web-page
JP2004038876A (ja) プログラム等のデータ形式変換方法及び装置、並びにそのデータ形式変換装置を用いたコントローラ管理システム
US20080294667A1 (en) Method of communication for data transfer to an electronic microdevice
CN102323880A (zh) 基于浏览器解析方式的手机应用界面的开发方法和终端
US20080028416A1 (en) System and Method for Controlling Local Computer Applications Using a Web Interface
US20100229081A1 (en) Method for Providing a Navigation Element in an Application
CN109413140B (zh) Pacs服务器远程自动升级的方法
CA2437273C (en) Network conduit for providing access to data services
JP2002334033A (ja) 情報配信方法、システム、装置、及びプログラム、並びに記録媒体
JP5151696B2 (ja) ユニフォームリソースロケータ情報を書き換えるプログラム
KR20060079648A (ko) 통합 브라우징 시스템 및 그 방법
JP2004246747A (ja) 既存サービスのラッピング方法および装置
JP4487725B2 (ja) 分析データ処理システム及び分析装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E601 Decision to refuse application
J201 Request for trial against refusal decision
J501 Disposition of invalidation of trial