JP2009163326A - Markup language document conversion device, method, program, and system - Google Patents
Markup language document conversion device, method, program, and system Download PDFInfo
- Publication number
- JP2009163326A JP2009163326A JP2007339878A JP2007339878A JP2009163326A JP 2009163326 A JP2009163326 A JP 2009163326A JP 2007339878 A JP2007339878 A JP 2007339878A JP 2007339878 A JP2007339878 A JP 2007339878A JP 2009163326 A JP2009163326 A JP 2009163326A
- Authority
- JP
- Japan
- Prior art keywords
- markup language
- language document
- document
- conversion
- display element
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Landscapes
- Information Transfer Between Computers (AREA)
- Document Processing Apparatus (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明は、PC用マークアップ言語文書のような第1マークアップ言語文書を、モバイル端末の仕様に対応して表示要素の配置替えを行った非PC用マークアップ言語文書のような第2マークアップ言語文書に変換するマークアップ言語文書変換装置、マークアップ言語文書変換方法、マークアップ言語文書変換プログラム、およびマークアップ言語文書変換システムに関する。 The present invention provides a second mark such as a non-PC markup language document in which display elements are rearranged from a first markup language document such as a PC markup language document according to the specifications of a mobile terminal. The present invention relates to a markup language document conversion apparatus, a markup language document conversion method, a markup language document conversion program, and a markup language document conversion system for converting into a markup language document.
最近、携帯電話端末や通信機能付きPDAなどの移動通信端末装置では、インターネット上のPC用のwebサイトでのwebページを閲覧することができるようになってきている。移動通信端末装置を本明細書ではモバイル端末ともいう。 Recently, a mobile communication terminal device such as a mobile phone terminal or a PDA with a communication function has been able to browse a web page on a PC web site on the Internet. The mobile communication terminal device is also referred to as a mobile terminal in this specification.
モバイル端末の表示画面のサイズは一律ではないが、通常、PC用の表示装置の表示画面に比べてその解像度(縦横画素数)は小さい。そのため、PC用webページをそのままモバイル端末の表示画面に表示させようとすると、表示されたwebページが垂直方向のみならず水平方向にも、画面から大きくはみ出し、水平、垂直両方向に頻繁にスクロール操作を行う必要が生じる。 Although the size of the display screen of the mobile terminal is not uniform, the resolution (number of vertical and horizontal pixels) is usually smaller than the display screen of a display device for PC. Therefore, if you try to display the PC web page as it is on the display screen of the mobile terminal, the displayed web page protrudes greatly from the screen not only in the vertical direction but also in the horizontal direction, and frequently scrolls in both the horizontal and vertical directions. Need to be done.
また、全体像を把握するためにwebページの表示を縮小することも考えられるが、その場合には細部が見づらくなり、文字が読めなくなる場合も生じうる。 In addition, it may be possible to reduce the display of the web page in order to grasp the whole image, but in this case, it may be difficult to see details and characters may not be readable.
このような問題に対して、特許文献1には、大サイズのwebページを解析してより小さいサイズのサブページに分割し、これをモバイル端末で閲覧する技術が開示されている。 To deal with such a problem, Patent Document 1 discloses a technique for analyzing a large web page and dividing it into smaller sub-pages and browsing the sub-page on a mobile terminal.
特許文献2にはPC用のwebページを解析して無線端末での表示に適した情報に変換する技術が開示されている。
ところで、最近のwebサイトで用いられているHTML文書はCSS(Cascading Style Sheet)を利用するのが通例である。CSSとは、HTML文書の装飾部分(修飾情報)を一括管理する機能であり、CSSファイルを用いて文字や背景の装飾部分を定義するものである。 By the way, HTML documents used in recent web sites usually use CSS (Cascading Style Sheet). CSS is a function for collectively managing decoration parts (modification information) of HTML documents, and defines decoration parts of characters and backgrounds using CSS files.
また、webページ中で特定の処理を実行したい場合、HTML文書中にJavaScript(登録商標)のような一種のプログラムが内蔵されることがある。 In addition, when a specific process is desired to be executed in a web page, a kind of program such as JavaScript (registered trademark) may be incorporated in an HTML document.
このようなCSSが適用されたHTML文書や、JavaScript等を含むHTML文書では、単にその解析をしただけではモバイル用マークアップ言語(ML)文書への変換が適正に行えない場合があった。 An HTML document to which such CSS is applied or an HTML document including JavaScript or the like may not be properly converted into a mobile markup language (ML) document by simply analyzing it.
例えば、PC用webページを構成するHTML文書の構造から推測されるPC画面上での各表示要素の位置は、CSSが適用された後またはJavaScriptが実行された後の実際の位置と必ずしも一致しない場合がある。このような場合、HTML文書の解析結果のみに基づいてモバイル用ML文書への変換を行うと、特定の表示要素の配置位置が極端に変わったり(例えばPC用の実表示ページでは先頭に来るべき表示要素がモバイル用の実表示ページでは最後に来る等)、特定の表示要素が表示されなかったりする、ということが起こりうる。 For example, the position of each display element on the PC screen inferred from the structure of the HTML document constituting the PC web page does not necessarily match the actual position after the CSS is applied or after the JavaScript is executed. There is a case. In such a case, if the conversion to the mobile ML document is performed based only on the analysis result of the HTML document, the arrangement position of a specific display element may change drastically (for example, the actual display page for PC should come first) It is possible that a specific display element may not be displayed, for example, when a display element comes last on an actual display page for mobile.
本発明はこのような背景においてなされたものであり、PC用webページなどに対応する第1マークアップ言語文書を、比較的忠実にモバイル用webページなどに対応する第2マークアップ言語文書に変換することができるマークアップ言語文書変換装置、マークアップ言語文書変換方、マークアップ言語文書変換プログラム、およびマークアップ言語文書変換システムを提供することを目的とする。 The present invention has been made in such a background, and a first markup language document corresponding to a PC web page or the like is relatively faithfully converted into a second markup language document corresponding to a mobile web page or the like. An object of the present invention is to provide a markup language document conversion apparatus, a markup language document conversion method, a markup language document conversion program, and a markup language document conversion system.
本発明によるマークアップ言語文書変換装置は、第1のマークアップ言語で記述された第1マークアップ言語文書と、これに付随するデータおよびプログラムの少なくとも一方とを取得する手段と、取得された第1マークアップ言語文書と前記データおよびプログラムの少なくとも一方とをレンダリングし、規定のサイズの表示画面上で描画すべき各表示要素の配置座標を確認する手段と、確認された各表示要素およびその配置座標に基づいて表示要素の配置替えを行った、第2のマークアップ言語で記述された第2マークアップ言語文書に変換する手段と、変換された第2マークアップ言語文書を記憶する手段とを備えたことを特徴とする。 The markup language document conversion apparatus according to the present invention includes a first markup language document described in a first markup language, means for acquiring at least one of data and a program associated therewith, and the acquired first markup language document. Means for rendering one markup language document and at least one of the data and the program, and confirming the arrangement coordinates of each display element to be drawn on a display screen of a prescribed size, and each confirmed display element and its arrangement Means for converting to a second markup language document described in the second markup language, wherein the display elements are rearranged based on the coordinates, and means for storing the converted second markup language document It is characterized by having.
また、本発明によるマークアップ言語文書変換方法は、 第1のマークアップ言語で記述された第1マークアップ言語文書のリクエストを受けるステップと、 The markup language document conversion method according to the present invention includes a step of receiving a request for a first markup language document described in a first markup language;
リクエストされた第1のマークアップ言語で記述された第1マークアップ言語文書と、これに付随するデータおよびプログラムの少なくとも一方とを取得するステップと、取得された第1マークアップ言語文書および前記データおよびプログラムの少なくとも一方をレンダリングするステップと、規定のサイズの表示画面上で描画すべき各表示要素の配置座標を確認するステップと、確認された各表示要素およびその配置座標に基づいて表示要素の配置替えを行った、第2のマークアップ言語で記述された第2マークアップ言語文書に変換するステップとを備えたことを特徴とする。 Obtaining a first markup language document described in the requested first markup language and at least one of data and a program associated therewith; and the obtained first markup language document and the data And a step of rendering at least one of the program, a step of confirming an arrangement coordinate of each display element to be drawn on a display screen of a predetermined size, and a display element based on each confirmed display element and its arrangement coordinate And a step of converting to a second markup language document described in the second markup language after rearrangement.
さらに、本発明によるマークアップ言語文書変換プログラムは、第1のマークアップ言語で記述された第1マークアップ言語文書と、これに付随するデータおよびプログラムの少なくとも一方とをレンダリングするステップと、規定のサイズの表示画面上で描画すべき各表示要素の配置座標を確認するステップと、確認された各表示要素およびその配置座標に基づいて表示要素の配置替えを行った、第2のマークアップ言語で記述された第2マークアップ言語文書に変換するステップとをコンピュータに実行させることを特徴とする。 Furthermore, a markup language document conversion program according to the present invention includes a step of rendering a first markup language document described in a first markup language and at least one of data and a program accompanying the first markup language document; In the second markup language, the step of confirming the arrangement coordinates of each display element to be drawn on the size display screen, and the rearrangement of the display elements based on each confirmed display element and its arrangement coordinates And a step of causing the computer to execute the step of converting the document into the second markup language document described.
本発明の構成によれば、第1マークアップ言語文書を単に解析するだけでなく、規定のサイズの表示画面上で描画すべき各表示要素の配置座標を確認することにより、例えばPC用の表示画面上に表示される各種表示要素が実際にどこにどのように表示されるかを確認することができ、この確認結果に基づいて、比較的忠実に、当該各種表示要素を非PC用の表示画面に再配置することが可能となる。 According to the configuration of the present invention, not only simply analyzing the first markup language document but also checking the arrangement coordinates of each display element to be drawn on a display screen of a prescribed size, for example, display for PC It is possible to confirm where and how the various display elements displayed on the screen are actually displayed. Based on the confirmation result, the various display elements are displayed on the non-PC display screen relatively faithfully. Can be rearranged.
前記表示要素の配置座標は、当該表示要素の矩形占有領域の対角座標である。これにより、各表示要素の位置と大きさが分かる。 The arrangement coordinates of the display element are diagonal coordinates of the rectangular occupation area of the display element. Thereby, the position and size of each display element can be known.
所定の条件に基づいて横並びの複数の表示要素を縦並びに変換し、かつ、それらの複数の表示要素を折り畳むステップをさらに含んでもよい。これにより、冗長な表示要素の羅列を表示省略することができる。 The method may further include converting a plurality of display elements arranged side by side in a row based on a predetermined condition and folding the plurality of display elements. Thereby, the display of redundant display elements can be omitted.
折り畳まれた複数の表示要素を縦並びの状態に復元する記述を前記変換後のモバイル用ML文書に含めるようにすれば、必要に応じて省略前の表示要素を確認することができる。 If a description for restoring a plurality of folded display elements to a vertically arranged state is included in the converted mobile ML document, the display elements before omission can be confirmed as necessary.
本発明によれば、自動的に、PC用webページを比較的忠実にモバイル用webページに変換し、PC用コンテンツをモバイル端末等で閲覧可能とすることができる。しかも、そのためにコンテンツプロバイダ(通常、企業)ではPC用webページ毎にそれに対応するモバイル用のwebページを別途用意しておく必要がなくなる。その結果、PC用コンテンツとモバイル用コンテンツの双方を作成し、かつ双方を同様にメンテナンス(同期)しなければならない、という煩雑な処理負担から当該コンテンツプロバイダを開放することができる。 According to the present invention, a PC web page can be automatically converted into a mobile web page with relatively high fidelity, and the PC content can be viewed on a mobile terminal or the like. In addition, for this reason, a content provider (usually a company) does not need to prepare a separate mobile web page for each PC web page. As a result, it is possible to release the content provider from the complicated processing burden of creating both PC content and mobile content and maintaining (synchronizing) both in the same manner.
以下、本発明の好適な実施の形態について図面を参照しながら詳細に説明する。 DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, preferred embodiments of the invention will be described in detail with reference to the drawings.
図1は、本実施の形態におけるマークアップ言語文書変換システムの全体の概略の構成を示している。 FIG. 1 shows an overall schematic configuration of a markup language document conversion system according to the present embodiment.
このシステムは、携帯電話端末や通信機能付きPDAなどの移動通信端末装置であるモバイル端末110と、webコンテンツを提供するwebサーバ120(PC用、モバイル用を問わない)と、PC用webコンテンツを提供するPC用webサーバ130と、本願発明のマークアップ言語文書変換装置に相当する変換サーバ150と、各サーバが接続されるインターネットのような通信ネットワーク140とにより構成される。 This system includes a mobile terminal 110 that is a mobile communication terminal device such as a mobile phone terminal or a PDA with a communication function, a web server 120 that provides web content (whether for PC or mobile use), and web content for PC. The PC web server 130 to be provided, a conversion server 150 corresponding to the markup language document conversion apparatus of the present invention, and a communication network 140 such as the Internet to which each server is connected are configured.
変換サーバ150は、PC用webページを構成するPC用マークアップ言語(ML)文書(すなわち第1マークアップ言語文書)を、リアルタイムに、モバイル用webページを構成するモバイル用ML文書(すなわち第2マークアップ言語文書)に変換するためのサーバであり、トランスコーダともいう。通信ネットワーク140には、モバイル用パケット通信網とこれをインターネットに接続するゲートウェイ(図示せず)を含みうる。webサーバ120はインターネットではなくモバイル用パケット通信網に接続されたサーバであってもよい。 The conversion server 150 converts the PC markup language (ML) document constituting the PC web page (ie, the first markup language document) into the mobile ML document constituting the mobile web page (ie, the second markup language document) in real time. This is a server for converting to a markup language document, and is also called a transcoder. The communication network 140 may include a mobile packet communication network and a gateway (not shown) that connects the mobile packet communication network to the Internet. The web server 120 may be a server connected to a mobile packet communication network instead of the Internet.
モバイル端末110のユーザの操作に従い、モバイル端末110のwebブラウザはwebサーバ120に対して特定のwebページをリクエストする(1)。このリクエストにはモバイル端末のwebブラウザからユーザエージェント(UA)と呼ばれる情報が含めて送信される。 In accordance with the operation of the user of the mobile terminal 110, the web browser of the mobile terminal 110 requests a specific web page from the web server 120 (1). This request is transmitted by including information called a user agent (UA) from the web browser of the mobile terminal.
webサーバ120は、受け取ったユーザエージェント情報に基づいて当該モバイル端末の機種IDを判別でき、これによりその機種の仕様情報を確認することができる。この仕様情報には、例えば、表示画面サイズや利用可能なメモリサイズ、一度に処理できるwebデータ量、サポートフォーマットなどが含まれる。このようなリクエストに対するレスポンスとして、webサーバ120からモバイル端末110に対してリダイレクト(変換サーバ150のURLを含む)が返送される(2)。リダイレクトとは、webページを要求してきた端末がモバイル端末であることをそのユーザエージェント情報に基づいてwebサーバ120が認識したとき、アクセス先を自身から他の特定のサイト(ここでは変換サーバ150)へ移動させるためのレスポンスである。 The web server 120 can determine the model ID of the mobile terminal based on the received user agent information, and thereby can confirm the specification information of the model. The specification information includes, for example, a display screen size, a usable memory size, a web data amount that can be processed at one time, a support format, and the like. As a response to such a request, a redirect (including the URL of the conversion server 150) is returned from the web server 120 to the mobile terminal 110 (2). Redirection means that when the web server 120 recognizes that the terminal that has requested the web page is a mobile terminal based on the user agent information, the access destination from itself to another specific site (in this case, the conversion server 150). It is a response to move to.
モバイル端末110は、このリダイレクト情報を受けて、変換サーバ150へアクセスし、目的のPC用webページをリクエストする(3)。すなわち、このリクエストにはPC用webサーバ130のURLも含んでいる。 The mobile terminal 110 receives this redirect information, accesses the conversion server 150, and requests the target PC web page (3). That is, this request includes the URL of the PC web server 130.
なお、リダイレクトによらず、モバイル端末110がモバイル用webページ内に組み込まれた変換サーバ150のURLから、または、URLの手動入力に基づいて、変換サーバ150へ直接アクセスしてもよい。 Instead of redirecting, the mobile terminal 110 may directly access the conversion server 150 from the URL of the conversion server 150 incorporated in the mobile web page or based on manual input of the URL.
変換サーバ150は、このようなリクエストを受けると、指定されたPC用webサーバ130にアクセスして当該モバイル端末用に変換すべきPC用マークアップ言語文書で記述されたPC用webページをリクエストする(4)。さらに、PC用webサーバ130からそのレスポンスとして当該PC用webページのML文書を取得する(5)。変換サーバ150は、取得したPC用ML文書ならびに必要に応じて取得されるそのPC用ML文書に付随するデータおよびプログラムをレンダリングして、その結果に基づいてモバイル用ML文書を自動的に生成し、レスポンスとしてモバイル端末110へ返送する(6)。モバイル端末110は返送されたモバイル用ML文書を受信し、webブラウザにより処理し、必要な付随するデータおよびプログラムをさらに取得して、レンダリングを行い、その結果をモバイル用表示画面に表示する。「付随するデータおよびプログラム」とは、例えば、CSSなどのML文書から参照される修飾情報、画像(広告画像も含む)、JavaScriptなどのスクリプト、Flashなどのプラグイン用のデータ、等を含む。レンダリングとは、一般に数値データとして与えられた物体や図形に関する情報をデータ処理によって画像化することであり、本明細書では、HTMLなどのマークアップ言語文書をwebブラウザが読み込んで種々のタグを解釈し、各種の表示要素を表示画面上のどこにどのように表示するかを確定し、表示用の描画データを生成することをいう。レンダリングにはCSSの解析、JavaScriptなどの実行等も含む。 Upon receiving such a request, the conversion server 150 accesses the specified PC web server 130 and requests a PC web page described in the PC markup language document to be converted for the mobile terminal. (4). Further, an ML document of the PC web page is acquired from the PC web server 130 as a response (5). The conversion server 150 renders the acquired PC ML document and data and a program accompanying the acquired PC ML document as necessary, and automatically generates a mobile ML document based on the result. The response is returned to the mobile terminal 110 as a response (6). The mobile terminal 110 receives the returned mobile ML document, processes it with a web browser, further acquires necessary accompanying data and programs, performs rendering, and displays the result on the mobile display screen. The “accompanying data and program” includes, for example, modification information referenced from ML documents such as CSS, images (including advertisement images), scripts such as JavaScript, and plug-in data such as Flash. Rendering is to image information about objects and figures given as numerical data in general by data processing. In this specification, a web browser reads a markup language document such as HTML and interprets various tags. It means to determine where and how various display elements are displayed on the display screen and to generate display drawing data. Rendering includes CSS analysis, execution of JavaScript, and the like.
変換サーバ150は、好ましくは、リクエストを受けた端末の「一度に処理できるwebデータ量」に基づいて、これに対応する単位量毎に、モバイル用ML文書のデータを区切ることにより、ページ分割を行う。ページ分割の方法としては、任意の既存の手法を用いることができる。例えば、モバイル用ML文書内の各ページの最後に、次のページの内容にリンクした「次のページ」等の名称のアンカータグを設定する。なお、モバイル端末から変換サーバ150へのリクエストにもユーザエージェントが含まれており、変換サーバ150は、受け取ったユーザエージェント情報に基づいて当該モバイル端末の機種IDを判別でき、これによりその機種の仕様情報を確認することができる。そのために、変換サーバ150は、図示しないが、機種IDと機種の仕様情報との対応データを保持している。 The conversion server 150 preferably performs page division by dividing the data of the mobile ML document for each unit amount based on the “amount of web data that can be processed at a time” of the terminal that has received the request. Do. Any existing method can be used as a method of page division. For example, an anchor tag having a name such as “next page” linked to the contents of the next page is set at the end of each page in the mobile ML document. Note that a request from the mobile terminal to the conversion server 150 includes a user agent, and the conversion server 150 can determine the model ID of the mobile terminal based on the received user agent information, and thereby the specification of the model. Information can be confirmed. For this purpose, the conversion server 150 holds correspondence data between the model ID and the model specification information, which is not shown.
図2は、本発明における変換サーバ150の基本概念を説明するための図である。変換サーバ150は、従来のwebブラウザのブラウザエンジンと同等の機能を有するブラウザエンジン20と、変換処理部161とを含む。ブラウザエンジン20は、HTMLファイルのようなPC用ML文書10を読み込んで、レンダリングを行う。その結果として得られる、予め想定されている標準的な規定のサイズ(例えば縦600画素×横800画素)のPC表示画面上に配置される表示要素としての各パーツおよびその親子関係の情報である描画ドキュメントツリーや、そのパーツの占有領域(ブロック)の配置座標情報を変換処理部161へ伝える。変換処理部161は、パーツの親子関係や配置座標情報に基づいて、パーツの配置をモバイル端末での表示に適したモバイル用ML文書(例えばcHTML文書)を生成する。 FIG. 2 is a diagram for explaining the basic concept of the conversion server 150 in the present invention. The conversion server 150 includes a browser engine 20 having a function equivalent to that of a conventional web browser browser engine, and a conversion processing unit 161. The browser engine 20 reads and renders the PC ML document 10 such as an HTML file. Information obtained as a result of each part as a display element arranged on a PC display screen of a standard stipulated standard size (for example, vertical 600 pixels × horizontal 800 pixels) assumed in advance and its parent-child relationship The drawing document tree and the arrangement coordinate information of the occupied area (block) of the part are transmitted to the conversion processing unit 161. The conversion processing unit 161 generates a mobile ML document (for example, a cHTML document) suitable for displaying the arrangement of the parts on the mobile terminal based on the parent-child relationship of the parts and the arrangement coordinate information.
図3は、図2に示したブラウザエンジン20の内部構成を示す。ブラウザエンジン20は、パーサ21、ページメーカ23、およびフォーマッタ25の各機能を有する。パーサ21は、表示対象のマークアップ言語(ML)文書10の論理的な構造を解釈し、その構造に関するドキュメントツリー22を生成する。ページメーカ23は、ドキュメントツリー22を基に、各タグで決められた表現形式(block, inline, table, list, itemなど)の情報を含むレイアウトツリー24を生成する。このレイアウトツリー24は、block, inline, tableなどがどのような順番に存在しているかを表している。但し、レイアウトツリー24は、まだ、これらの要素が画面のどこにどのような幅と高さで表示されるか、文字列がどこで折り返されるか、等のレイアウトに関する情報までは含んでいない。フォーマッタ25は、レイアウトツリー24を基に、既知の表示画面幅などの実際の表示画面に関する情報を用いてレイアウトを行う。すなわち、レイアウトツリー24を実際の表示画面に配置していき、文字の折り返しや、画面上の位置、幅、高さを決定する。この段階で、描画ドキュメントツリー(レンダリングツリーともいう)26が生成される。本実施の形態では、描画ドキュメントツリー26には各パーツのブロックの対角座標を含めている。 FIG. 3 shows an internal configuration of the browser engine 20 shown in FIG. The browser engine 20 has functions of a parser 21, a page maker 23, and a formatter 25. The parser 21 interprets the logical structure of the markup language (ML) document 10 to be displayed, and generates a document tree 22 related to the structure. Based on the document tree 22, the page maker 23 generates a layout tree 24 including information on the expression format (block, inline, table, list, item, etc.) determined by each tag. This layout tree 24 represents the order in which block, inline, table, etc. exist. However, the layout tree 24 does not yet include information relating to the layout such as where and in what width and height these elements are displayed on the screen, and where the character string is folded. Based on the layout tree 24, the formatter 25 performs layout using information related to the actual display screen such as a known display screen width. That is, the layout tree 24 is arranged on the actual display screen, and the character wrapping and the position, width, and height on the screen are determined. At this stage, a drawing document tree (also called a rendering tree) 26 is generated. In the present embodiment, the drawing document tree 26 includes the diagonal coordinates of the blocks of each part.
図4に、本実施の形態における変換サーバ150の機能構成例を示す。 FIG. 4 shows a functional configuration example of the conversion server 150 according to the present embodiment.
トランスコーダエンジン160は、変換サーバ150の中枢部であり、ブラウザエンジン20と変換処理部161とを含む。ブラウザエンジン20の構成及び機能については上述したとおりである。変換処理部161は、ブラウザエンジン20の処理結果を用いてPC用ML文書をモバイル用ML文書に変換する処理を行う部位である。この具体的な処理手順については後述する。 The transcoder engine 160 is a central part of the conversion server 150 and includes the browser engine 20 and a conversion processing unit 161. The configuration and functions of the browser engine 20 are as described above. The conversion processing unit 161 is a part that performs processing for converting the PC ML document into the mobile ML document using the processing result of the browser engine 20. This specific processing procedure will be described later.
本発明を用いれば、コンテンツプロバイダはPC用webサイトとは別途にモバイル向けのwebサイトをつくりこむ手間を省くことができる。 By using the present invention, the content provider can save the trouble of creating a mobile web site separately from the PC web site.
コンテンツデータ内部キャッシュ管理部158は、変換前のwebページのデータ(ML文書、JavaScript、CSS、Cookie、画像等)を一時的に保存するための装置である。 The content data internal cache management unit 158 is a device for temporarily storing web page data (ML document, JavaScript, CSS, cookie, image, etc.) before conversion.
コンテンツ取得情報内部キャッシュ管理部157は、キャッシュのメタ情報として、各データの有効期限、対応URLなどの情報を一時的に保存するための装置である。 The content acquisition information internal cache management unit 157 is a device for temporarily storing information such as an expiration date of each data and a corresponding URL as cache meta information.
セッション管理部152は、webサイトにアクセスした時にセッションを管理するための装置である。ユーザが継続的にそのサイトを使えるように,そのユーザの状態をページに埋め込むことがwebの世界ではしばしばある。埋め込む場所はURLクエリ内やCookie内である。このような動作はセッションと呼ばれる。 The session management unit 152 is a device for managing a session when accessing a web site. Often in the web world, the user's status is embedded in the page so that the user can continue to use the site. The place to embed is in the URL query or Cookie. Such an operation is called a session.
トランスコーダフロントエンド162は、HTML埋め込み型のサーバサイド・スクリプト言語を用いてCGI(Common Gateway Interface:コモン・ゲートウェイ・インタフェース)のような機能を実現するサーバサイド・スクリプト処理部である。CGIとは、webサーバ上でユーザプログラムを動作させるための仕組みであり、そのユーザプログラムがサーバサイド・スクリプトである。トランスコーダフロントエンド162は、端末においてユーザが何かをクリックしたり、フォームで何かを送信したときに、それに基づいてプログラムを実行し、新たなMLの記述を生成してブラウザに対して送信する。スクリプト言語としては本実施の形態ではPHP(PHP: Hypertext Preprocessor)を使用しているが、これに限るものではない。 The transcoder front end 162 is a server-side script processing unit that implements a function such as CGI (Common Gateway Interface) using an HTML-embedded server-side script language. CGI is a mechanism for operating a user program on a web server, and the user program is a server-side script. When the user clicks something on the terminal or sends something in a form, the transcoder front end 162 executes a program based on that and generates a new ML description and sends it to the browser. To do. In this embodiment, PHP (PHP: Hypertext Preprocessor) is used as the script language, but the present invention is not limited to this.
変換結果キャッシュ管理部156は、変換処理部161での変換結果であるモバイル用ML文書を一時的に保存する装置である。 The conversion result cache management unit 156 is a device that temporarily stores the mobile ML document that is the conversion result of the conversion processing unit 161.
httpd(Hyper Text Transfer Protocol Daemon)154はhttpデーモンと呼ばれるwebサーバのプログラムであり、ユーザからの要求に応じてサーバ内に蓄積されたコンテンツを送信したり、サーバサイド・スクリプトを起動したりするためのものである。 The httpd (Hyper Text Transfer Protocol Daemon) 154 is a web server program called an http daemon, which transmits contents accumulated in the server and starts server-side scripts in response to requests from users. belongs to.
なお、変換サーバ150のハードウェア構成は特に示さないが、CPU、主記憶装置、外部記憶装置、通信装置、各種入出力装置、等、既存のハードウェア構成により実現される。 The hardware configuration of the conversion server 150 is not particularly shown, but is realized by an existing hardware configuration such as a CPU, a main storage device, an external storage device, a communication device, and various input / output devices.
以下、本実施の形態における変換サーバ150の動作を、具体的なwebページ例を示して説明する。 Hereinafter, the operation of the conversion server 150 according to the present embodiment will be described with reference to a specific web page example.
図5は出願人のホームページの概略画面を示している。このwebページを構成するHTML文書の概略構成を図6に示す。 FIG. 5 shows a schematic screen of the applicant's home page. FIG. 6 shows a schematic configuration of an HTML document constituting this web page.
HTML文書は各種のタグを含むテキストで記述されており、webページを構成する表示要素は主として「ブロック要素」と「インライン要素」に分類される。 The HTML document is described by text including various tags, and the display elements constituting the web page are mainly classified into “block elements” and “inline elements”.
ブロック要素は、文書の骨組みとなる要素で、例えば見出しや段落などである。このタイプの要素は与えられた領域の横幅一杯の領域を持ち、要素の前後には自動的に改行が入る。ブラウザの画面上で、ブロック要素の占有する領域は、文字列や画像等のある部分だけではなく、それらを含む矩形の(ブロック状の)領域である。具体的には、見出し(h1〜h6)、(意味)段落(p)、章/意味段落(div)、区切り線(hr)、引用(blockquote)、テーブル(table)等がブロック要素である。リスト(ul/ol/dl)及びその項目(li/dt/dd)もブロック要素である。 The block element is an element that becomes a framework of the document, and is, for example, a heading or a paragraph. This type of element has the full width of the given area, and newlines are automatically inserted before and after the element. On the browser screen, the area occupied by the block elements is not only a certain part such as a character string or an image, but also a rectangular (block-like) area including them. Specifically, heading (h1 to h6), (meaning) paragraph (p), chapter / semantic paragraph (div), separator (hr), quotation (blockquote), table (table), etc. are block elements. The list (ul / ol / dl) and its items (li / dt / dd) are also block elements.
インライン要素は、文章中の一部として扱われる要素(例えばリンクや文字の強調など)である。このタイプの要素は行の一部として扱われるので、要素の前後には改行は入らない。具体的には、リンク/アンカー(a)、語・文節・文単位の強調(em/strong)、プログラムの出力結果(samp)、プログラムのソースコード(code)、引用元の明示(cite)、強制改行(br)等がインライン要素である。画像(img)もインライン要素に含まれる。 An inline element is an element (for example, a link or character emphasis) that is treated as a part of a sentence. Since this type of element is treated as part of a line, there are no line breaks before or after the element. Specifically, link / anchor (a), word / sentence / sentence emphasis (em / strong), program output result (samp), program source code (code), citation clarification (cite), Forced line feed (br) etc. are inline elements. An image (img) is also included in the inline element.
ブロック要素の中には、別のブロック要素やインライン要素が入り得る。インライン要素の中には、別のインライン要素が入りうる。インライン要素の中には、ブロック要素は入らない。 Another block element or inline element can be included in the block element. Another inline element can be included in the inline element. Block elements are not included in inline elements.
多くのタグは開始タグ<>と終了タグ</>から構成される。開始タグと終了タグの間の他のタグが含まれる、すなわち入れ子状態となりうる。入れ子関係にあるタグのうち外側のタグが「親」、内側がタグが「子」となる。 Many tags are composed of a start tag <> and an end tag </>. Other tags between the start and end tags can be included, i.e. nested. Of the tags that are nested, the outer tag is “parent” and the inner tag is “child”.
上述したように、ブラウザエンジン20はHTML文書を読み込んで、解釈し、レンダリングを行う。その結果として、図7に示すように、ブロック要素等の表示要素(すなわちパーツ)毎にその表示位置(配置座標)およびサイズ(矩形占有領域の対角座標)が求められる。図8にその様子をツリー形式で模式的に示す。この図における「ブロック」は図7に示した各表示要素のブロックに対応している。各ブロックには、(X1,Y1,X2,Y2)の形式の対角座標が定められている。(X1,Y1)は矩形状のブロックの左上角の座標であり、(X2,Y2)はブロックの右下角の座標である。 As described above, the browser engine 20 reads an HTML document, interprets it, and performs rendering. As a result, as shown in FIG. 7, the display position (placement coordinates) and size (diagonal coordinates of the rectangular occupied area) are obtained for each display element (ie, part) such as a block element. FIG. 8 schematically shows the state in a tree format. The “block” in this figure corresponds to the block of each display element shown in FIG. Each block has diagonal coordinates in the form of (X1, Y1, X2, Y2). (X1, Y1) are the coordinates of the upper left corner of the rectangular block, and (X2, Y2) are the coordinates of the lower right corner of the block.
図8の描画ドキュメントツリーは、CSSを解釈した後の結果に基づくものである。HTML文書中にJavaScriptが含まれ、それにより表示要素が決定される場合には、その実行結果をも反映したものである。例えば、図6の記述200内のJavaScriptにおいて、予め用意された複数の画像のなかからランダムに選択した画像を表示するという処理が行われる場合、図7の「画像A」はその選択された画像がwebページ上に実際に表示された状態に相当する。CSSでは座標を指定してブロックを配置する場合があり、そのような場合にはCSSを適用した結果のブロックの位置が考慮される。また、CSSのコメント行も表示対象から確実に削除される。 The drawing document tree of FIG. 8 is based on the result after interpreting the CSS. When JavaScript is included in the HTML document and the display element is determined by this, the execution result is reflected. For example, in the case of JavaScript in the description 200 of FIG. 6, when a process of displaying an image randomly selected from a plurality of images prepared in advance is performed, “image A” of FIG. 7 is the selected image. Corresponds to the state actually displayed on the web page. In CSS, a block may be arranged by designating coordinates. In such a case, the position of the block as a result of applying CSS is taken into consideration. Also, the CSS comment line is surely deleted from the display target.
変換処理部161は、パーツの親子関係や座標情報に基づいて、パーツの配置をモバイル端末での表示に適して組み替える。この組み替えに際して、モバイル端末の表示画面では水平方向のスクロールは行わなくて済むようなwebページ構成が望ましい。そこで、複数のパーツを画面の横方向(水平方向)に羅列すると、モバイル端末の表示画面からはみ出してしまうような場合には、複数のパーツの横並びを縦並びに変更する。例えば、図7の上部のブロック211、ブロック221〜229、ブロック231〜237は、図9の位置300に示すように縦並びに配置を変更する。図9は図7のPC用webページがモバイル用に変換されてモバイル画面上に表示される様子を模式的に示した図である。実際には、図9の内容の全体がモバイル画面内に収まるわけではなく、縦方向にはページ送りおよび/またはスクロール操作により隠れた部分をモバイル画面上に移動させて見ることができる。横方向についてはページの幅全体がモバイル画面に収まることを想定している。 The conversion processing unit 161 rearranges the arrangement of the parts suitable for display on the mobile terminal based on the parent-child relationship of the parts and the coordinate information. At the time of this rearrangement, it is desirable to have a web page configuration that does not require horizontal scrolling on the display screen of the mobile terminal. Therefore, when a plurality of parts are arranged in the horizontal direction (horizontal direction) of the screen, the horizontal arrangement of the plurality of parts is changed in the vertical direction in the case where the parts protrude from the display screen of the mobile terminal. For example, the upper block 211, blocks 221 to 229, and blocks 231 to 237 in FIG. FIG. 9 is a diagram schematically showing a state where the PC web page of FIG. 7 is converted for mobile and displayed on the mobile screen. Actually, the entire content of FIG. 9 does not fit within the mobile screen, and the portion hidden by the page feed and / or scroll operation can be moved and viewed on the mobile screen in the vertical direction. In the horizontal direction, it is assumed that the entire width of the page fits on the mobile screen.
一つの画像(イメージ)の横幅がモバイル表示画面サイズより大きいものについては、その横幅がモバイル表示画面サイズに収まるように、全体の画像サイズを縮小するよう最適化する。図7の画像241(画像A)は最適化された画像241’(画像A’)として、図9の位置300の直下の位置340に配置されている。 If the width of one image (image) is larger than the mobile display screen size, the entire image size is optimized so that the horizontal width fits within the mobile display screen size. The image 241 (image A) in FIG. 7 is arranged as an optimized image 241 ′ (image A ′) at a position 340 immediately below the position 300 in FIG. 9.
図7のブロック251〜256は元々縦並びで、すべてモバイル表示画面サイズに収まるため、図9の位置340の直下の位置350に配置している。
図7の画像のブロック257は、その横幅がモバイル表示画面サイズに収まるので、図9の位置350の直下の位置355に配置している。
図7のブロック261〜265についても、同様に、図9の位置355の直下の位置360に配置している。
図7のブロック271〜272については、同様に、図9の位置360の直下の位置(図示省略)に配置する。
図7の画像のブロック281についてはその横幅がモバイル表示画面サイズに収まるので、図9のブロック272の直下の位置に配置する。なお、画像の配置位置はその親のブロック要素の座標により決まる。画像を縮小または拡大する場合にはその画像サイズを参照する。
図7のブロック291についてはブロック281の直下の位置に配置する。このブロック291は縦横比が大きいので後述する「折り畳み」を行うことができるが、折り畳んでも情報量が変わらないので、ここでは折り畳まないものとしている。モバイル表示画面の横幅より文字列が長い場合は、ブラウザの機能により折り返して表示される。
図7のブロック292〜295については、全体としてモバイル表示画面サイズに収まるので、ブロック291の直下の位置に配置する。但し、ブロック292〜295を縦並びに配置替えしてもよい。
Blocks 251 to 256 in FIG. 7 are originally arranged vertically and all fit within the mobile display screen size, and therefore are arranged at a position 350 immediately below position 340 in FIG. 9.
The image block 257 in FIG. 7 is arranged at a position 355 immediately below the position 350 in FIG. 9 because the horizontal width fits in the mobile display screen size.
Similarly, the blocks 261 to 265 in FIG. 7 are arranged at a position 360 immediately below the position 355 in FIG. 9.
Similarly, the blocks 271 to 272 in FIG. 7 are arranged at positions (not shown) immediately below the position 360 in FIG. 9.
Since the horizontal width of the block 281 of the image in FIG. 7 fits in the mobile display screen size, it is arranged at a position immediately below the block 272 in FIG. The arrangement position of the image is determined by the coordinates of the parent block element. When the image is reduced or enlarged, the image size is referred to.
The block 291 in FIG. 7 is arranged at a position immediately below the block 281. Since the block 291 has a large aspect ratio, it can be “folded”, which will be described later. However, since the amount of information does not change even when folded, it is not folded here. If the character string is longer than the width of the mobile display screen, it will be displayed folded by the browser function.
Since blocks 292 to 295 in FIG. 7 fit within the mobile display screen size as a whole, they are arranged at positions immediately below block 291. However, the blocks 292 to 295 may be rearranged vertically.
複数のパーツをモバイル表示画面用に上から順に配置していく際に、PC用画面上でのパーツをどのような順でピックアップしていくかについては、予め定めた規則に従う。上述した例では、PC画面上の複数のパーツは、最上部の左から右に順次選択していき、右端に達したらその下に移動して、左から右に順次選択していく。 When a plurality of parts are sequentially arranged for the mobile display screen from the top, the order in which the parts are picked up on the PC screen is in accordance with a predetermined rule. In the above-described example, the plurality of parts on the PC screen are sequentially selected from the left to the right at the top, and when reaching the right end, the parts are moved to the bottom and sequentially selected from the left to the right.
ただし、複数の小パーツが、モバイル画面の横幅に収まる一つの大ブロックに含まれる場合にはそれらの小パーツを一体として扱う。(図7のブロック252〜256等) However, when a plurality of small parts are included in one large block that fits in the width of the mobile screen, these small parts are handled as a unit. (Blocks 252 to 256 in FIG. 7 etc.)
同じ横幅サイズで、縦並びに並んでいる複数のパーツはそれらの上から下まで選択したあと、右へ移動する。(ブロック251、(252〜256)、257等) A plurality of parts with the same width size and arranged vertically are selected from the top to the bottom, and then moved to the right. (Block 251, (252 to 256), 257 etc.)
なお、このような規則はあくまで例示であり、本発明はこれに限定されるものではない。 In addition, such a rule is an illustration to the last, and this invention is not limited to this.
ところで、PC用webページにおいていわゆるナビゲーションと呼ばれるような横長の記述部(図7のブロック231〜237)は図9から判るように、初期状態でモバイル画面で縦に並べるとモバイル画面の大半を占有して煩わしく感じられる場合がある。 By the way, as can be seen from FIG. 9, the horizontally long description portion (blocks 231 to 237 in FIG. 7) on the PC web page occupies most of the mobile screen when arranged vertically on the mobile screen. May be annoying.
そこで、図9の最上部に示すように、モバイル画面上に[Close this section]という指示部を設けて、そのマイナスマーク210aをモバイル端末のユーザが指示すると、縦並びになっている複数の要素の一群をまとめて1つの要素に代表させる仕組みを設ける。この仕組みを「折り畳み」と呼ぶ。一つの要素であっても、大サイズの場合により小さい要素で代替表示することも可能である。このような処理も折り畳みに含まれる。 Therefore, as shown in the uppermost part of FIG. 9, when an instruction unit “Close this section” is provided on the mobile screen and the user of the mobile terminal indicates the minus mark 210 a, a plurality of elements arranged vertically are displayed. A system is set up to represent a group as a single element. This mechanism is called “folding”. Even a single element can be replaced with a smaller element in the case of a large size. Such processing is also included in the folding.
図10は、複数の要素に対応するブロック211〜237を1つの要素であるブロック211に代表させて折り畳んだ状態を示している。この際、モバイル画面上でブロック211の傍にプラスマーク210bの指示部を設けて、モバイル端末のユーザがこれを指示すると、再度図9の表示状態に戻る(すなわち折り畳まれた複数の表示要素を縦並びの状態に復元)ようにする。 FIG. 10 shows a state in which the blocks 211 to 237 corresponding to a plurality of elements are folded as represented by the block 211 which is one element. At this time, an indication part of a plus mark 210b is provided beside the block 211 on the mobile screen, and when the user of the mobile terminal instructs this, the display state of FIG. To restore the vertical alignment).
マイナスマーク210aやプラスマーク210bの指示部の仕組みは通常のwebブラウザの機能でサポートされているものではないので、この機能は上述したCGIで実現することができる。 Since the mechanism of the instruction unit of the minus mark 210a and the plus mark 210b is not supported by the function of a normal web browser, this function can be realized by the above-described CGI.
図6に示した例では、HTML埋め込み型のサーバサイド・スクリプト言語であるPHPを用いてCGIを実現する例を示している。PHPスクリプトは、webサーバ上で動作し、webサーバ上の文書が要求されるたびに、この文書に記述されたPHPのプログラムを実行し、その結果をブラウザに対して送信する。 The example shown in FIG. 6 shows an example in which CGI is realized using PHP, which is an HTML-embedded server-side script language. The PHP script operates on the web server, and whenever a document on the web server is requested, the PHP program described in the document is executed and the result is transmitted to the browser.
折り畳みのための具体的なPHPスクリプトの具体的な記述例としては、特に具体的に示さないが、PHPスクリプトの実行する処理は、モバイル端末からの、折り畳み後の状態からのリクエストに対しては折り畳み前(非折り畳み)の状態に戻し、折り畳み前の状態からのリクエストに対しては折り畳み後の状態に戻す、という処理である。 Although a specific description example of a specific PHP script for folding is not specifically shown, the processing executed by the PHP script is not performed in response to a request from the mobile terminal from the state after folding. This is a process of returning to a state before folding (non-folding) and returning to a state after folding in response to a request from the state before folding.
なお、デフォルトとして図9が最初に表示されるものとして説明したが、図10の方が図9より先に表示される形態であってもよい。いずれをデフォルトとするかはモバイル端末からのリクエストにおいてURLのクエリで指定することができる。 Although FIG. 9 is displayed as a default display as a default, FIG. 10 may be displayed before FIG. 9. Which is the default can be specified by a URL query in a request from the mobile terminal.
図11は、変換サーバ150の処理手順を示したフローチャートである。 FIG. 11 is a flowchart showing the processing procedure of the conversion server 150.
まず、ユーザ端末からのwebページのリクエストを受領する(S11)。この際、リクエストに含まれるユーザエージェント情報に基づいて当該ユーザ端末の仕様を確認する(S12)。 First, a web page request from a user terminal is received (S11). At this time, the specification of the user terminal is confirmed based on the user agent information included in the request (S12).
ついで、変換サーバ150のブラウザエンジン20が変換対照のPC用ML文書を、指定されたwebサーバに要求して読み込む(S13)。そのPC用ML文書がキャッシュされている場合には、キャッシュ部から読み込みを行う。 Next, the browser engine 20 of the conversion server 150 requests and reads the conversion-target PC ML document from the designated web server (S13). If the PC ML document is cached, it is read from the cache unit.
そこで、PC用ML文書のレンダリングを行う(S14)。このレンダリングに際して、HTMLの解析のみならず、CSSの解析およびJavaScript等の実行も含む。その結果、描画ドキュメントツリーが確定される(S15)。すなわち、PC用表示画面上に表示されるべき各パーツの位置およびサイズが、各ブロックの対角座標によって定まる。 Therefore, the PC ML document is rendered (S14). This rendering includes not only the analysis of HTML but also the analysis of CSS and execution of JavaScript and the like. As a result, the drawing document tree is determined (S15). That is, the position and size of each part to be displayed on the PC display screen are determined by the diagonal coordinates of each block.
変換サーバ150の変換処理部161は、描画ドキュメントツリーの内容を読み込んで、上述したような予め定められた規則にしたがって各パーツの再配置を行う(S16)。この再配置の際には、パーツの移動、カット、折り畳み、追加等を含む。「追加」は任意の新たな要素を追加するものであり、例えば、広告の追加が考えられる。さらに必要に応じて、上述したようなイメージ(画像)を縮小する等の最適化を行う(S17)。さらに、当該端末に応じたページ分割を行う(S18)。S16〜S18の処理に際して変換処理部161は、ユーザ端末の仕様を参照し、その仕様を処理に反映させる。 The conversion processing unit 161 of the conversion server 150 reads the contents of the drawing document tree and rearranges each part according to the predetermined rule as described above (S16). This rearrangement includes part movement, cutting, folding, addition, and the like. “Add” is to add an arbitrary new element, and for example, an advertisement can be added. Furthermore, if necessary, optimization such as reduction of the above-described image (image) is performed (S17). Further, page division according to the terminal is performed (S18). In the processing of S16 to S18, the conversion processing unit 161 refers to the specifications of the user terminal and reflects the specifications in the processing.
このようにして、モバイル用ML文書を所定の記憶領域に書き出す(S19)。 In this way, the mobile ML document is written in a predetermined storage area (S19).
図12に、図11のステップS16内の「折り畳み」処理の処理例を示す。 FIG. 12 shows an example of the “folding” process in step S16 of FIG.
まず、複数のブロックのサイズおよび配置が所定の条件を満足するかどうかをチェックする(S21)。所定の条件とは、例えば高さが所定値以下のブロックが横方向に所定個以上並び、モバイル用に変換した場合に所定個以上の縦並びになるような場合である。あるいは、1個のブロックであっても、その面積が所定値以上となるような場合である。 First, it is checked whether the size and arrangement of a plurality of blocks satisfy a predetermined condition (S21). The predetermined condition is, for example, a case where a predetermined number or more of blocks whose height is equal to or less than a predetermined value are arranged in the horizontal direction and arranged in a vertical direction when converted to mobile. Or it is a case where even if it is one block, the area becomes more than predetermined value.
所定の条件が満足されなければ、図12の処理を終了する。所定の条件が満足されれば、それらの複数のブロックの先頭ブロックまたは新たに設けたブロック(新設ブロック)でそれらの全ブロックを代替し、ユーザの指示で全ブロックを表示するためのCGI用メタ情報を生成してモバイル用ML文書に追加する(S22)。この際、包含されたブロックの記述はモバイル用ML文書から削除する。また、対応するサーバ・サイドスクリプトを生成して、変換サーバ側に保持する。この処理は、閉じた状態をデフォルトとした場合を想定している。開いた状態をデフォルトとした場合には、所定のブロックをユーザの指示により閉じるためのCGI用メタ情報を生成してモバイル用ML文書に追加する。同時に対応するサーバ・サイドスクリプトを生成して、変換サーバ側に保持する。 If the predetermined condition is not satisfied, the process in FIG. 12 is terminated. If a predetermined condition is satisfied, a CGI meta for substituting all the blocks with the first block of those blocks or a newly provided block (new block) and displaying all the blocks according to a user instruction Information is generated and added to the mobile ML document (S22). At this time, the description of the included block is deleted from the mobile ML document. A corresponding server-side script is generated and stored on the conversion server side. This process assumes that the closed state is the default. When the open state is set as a default, CGI meta information for closing a predetermined block according to a user instruction is generated and added to the mobile ML document. At the same time, a corresponding server-side script is generated and stored on the conversion server side.
そのようなCGI用メタ情報はモバイル用ML文書内で、例えば次のような形式で記述される。
<!−−section=1,summary=”<img src=”...gif”>...”−−>
Such CGI meta-information is described in the following format in the mobile ML document.
<! --Section = 1, summary = ”<img src =”. . . gif ”>...”->
sectionは変換サーバに対する折り畳みの指示を表し、section=1は折り畳みの通し番号を示すセクション番号を表す。summary=の後にモバイル用ML文書の自動生成時にML文書に付加するデータが続く。 Section indicates a folding instruction to the conversion server, and section = 1 indicates a section number indicating a folding serial number. After summary =, data to be added to the ML document when the mobile ML document is automatically generated follows.
他方、このようなCGI用メタ情報に対応して、変換サーバ側に用意され、変換サーバで実行されるスクリプトは、例えば上述したようなPHPスクリプトである。PHPスクリプトは、開状態または閉状態に応じて、上述したマイナスマーク210aやプラスマーク210b(例えばイメージデータ)にリンクを設定したモバイル用ML文書を出力する。 On the other hand, the script prepared on the conversion server side and executed on the conversion server in correspondence with such CGI meta information is, for example, the PHP script as described above. The PHP script outputs a mobile ML document in which a link is set to the above-described minus mark 210a or plus mark 210b (for example, image data) according to an open state or a closed state.
以上、本発明の好適な実施の形態について説明したが、上記で言及した以外にも種々の変形、変更を行うことが可能である。 The preferred embodiments of the present invention have been described above, but various modifications and changes other than those mentioned above can be made.
例えば、変換サーバは1台としたが、複数台設けて、負荷を分散するようにしてもよい。 For example, although there is one conversion server, a plurality of conversion servers may be provided to distribute the load.
本発明のマークアップ言語文書変換装置は、通信ネットワーク上の変換サーバとして説明したが、通信ネットワークに接続されない単体の装置であってもよい。あるいは、ホームサーバ(ホームゲートウェイ)に搭載され、ホームネットワークでつながれた他の家電機器などに、本発明のマークアップ言語文書変換の機能を適用することも可能である。 Although the markup language document conversion device of the present invention has been described as a conversion server on a communication network, it may be a single device that is not connected to the communication network. Alternatively, the markup language document conversion function of the present invention can also be applied to other home appliances mounted on a home server (home gateway) and connected via a home network.
webブラウザ上で動作するスクリプトとしてJavaScriptのみに言及したが、ECMAScript等の他のスクリプトにも本発明は適用可能である。 Although only JavaScript has been mentioned as a script that runs on a web browser, the present invention can also be applied to other scripts such as ECMAScript.
10…文書、20…ブラウザ、21…パーサ、22…ドキュメントツリー、23…ページメーカ、24…レイアウトツリー、25…フォーマッタ、26…描画ドキュメントツリー、110…モバイル端末、120…webサーバ、130…PC用webサーバ、140…通信ネットワーク、150…変換サーバ、152…セッション管理部、156…変換結果キャッシュ管理部、157…コンテンツ取得情報内部キャッシュ管理部、158…コンテンツデータ内部キャッシュ管理部、160…トランスコーダエンジン、161…変換処理部、162…トランスコーダフロントエンド、210a…マイナスマーク、210b…プラスマーク、211…ブロック、241…画像 DESCRIPTION OF SYMBOLS 10 ... Document, 20 ... Browser, 21 ... Parser, 22 ... Document tree, 23 ... Page maker, 24 ... Layout tree, 25 ... Formatter, 26 ... Drawing document tree, 110 ... Mobile terminal, 120 ... Web server, 130 ... PC Web server, 140 ... communication network, 150 ... conversion server, 152 ... session management unit, 156 ... conversion result cache management unit, 157 ... content acquisition information internal cache management unit, 158 ... content data internal cache management unit, 160 ... trans Coder engine 161 ... Conversion processing unit 162 ... Transcoder front end 210a ... Minus mark 210b ... Plus mark 211 ... Block 241 ... Image
Claims (12)
取得された第1マークアップ言語文書と前記データおよびプログラムの少なくとも一方とをレンダリングし、規定のサイズの表示画面上で描画すべき各表示要素の配置座標を確認する手段と、
確認された各表示要素およびその配置座標に基づいて表示要素の配置替えを行った、第2のマークアップ言語で記述された第2マークアップ言語文書に変換する手段と、
変換された第2マークアップ言語文書を記憶する手段と
を備えたことを特徴とするマークアップ言語文書変換装置。 Means for obtaining a first markup language document described in a first markup language and at least one of data and a program associated therewith;
Means for rendering the acquired first markup language document and at least one of the data and the program, and confirming the arrangement coordinates of each display element to be drawn on a display screen of a prescribed size;
Means for converting into a second markup language document described in a second markup language, wherein the display elements are rearranged based on each confirmed display element and its arrangement coordinates;
A markup language document conversion apparatus comprising: means for storing the converted second markup language document.
リクエストされた第1のマークアップ言語で記述された第1マークアップ言語文書と、これに付随するデータおよびプログラムの少なくとも一方とを取得するステップと、
取得された第1マークアップ言語文書および前記データおよびプログラムの少なくとも一方をレンダリングするステップと、
規定のサイズの表示画面上で描画すべき各表示要素の配置座標を確認するステップと、
確認された各表示要素およびその配置座標に基づいて表示要素の配置替えを行った、第2のマークアップ言語で記述された第2マークアップ言語文書に変換するステップと
を備えたことを特徴とするマークアップ言語文書変換方法。 Receiving a request for a first markup language document written in a first markup language;
Obtaining a first markup language document described in the requested first markup language and at least one of data and a program associated therewith;
Rendering the acquired first markup language document and / or said data and program;
A step of confirming the arrangement coordinates of each display element to be drawn on a display screen of a prescribed size;
Converting the display element into a second markup language document described in the second markup language, wherein the display element is rearranged based on each confirmed display element and its arrangement coordinates, and To markup language document conversion method.
規定のサイズの表示画面上で描画すべき各表示要素の配置座標を確認するステップと、
確認された各表示要素およびその配置座標に基づいて表示要素の配置替えを行った、第2のマークアップ言語で記述された第2マークアップ言語文書に変換するステップと
をコンピュータに実行させることを特徴とするマークアップ言語文書変換プログラム。 Rendering a first markup language document written in a first markup language and at least one of data and programs associated therewith;
A step of confirming the arrangement coordinates of each display element to be drawn on a display screen of a prescribed size;
Causing the computer to execute a step of converting the display element into a second markup language document described in the second markup language, in which the display element is rearranged based on each confirmed display element and its arrangement coordinates. Feature markup language document conversion program.
端末は、
マークアップ言語文書変換装置に対して、第1のマークアップ言語で記述された第1マークアップ言語文書を指定して、その文書を自端末に対応した第2のマークアップ言語で記述された第2マークアップ言語文書へ変換して返送することを要求する手段と、
マークアップ言語文書変換装置から第2マークアップ言語文書を受信する手段と、
受信した第2マークアップ言語文書を表示する手段とを備え、
マークアップ言語文書変換装置は、
端末からの要求に応じて当該第1マークアップ言語文書と、これに付随するデータおよびプログラムの少なくとも一方とを取得する手段と、
取得された第1マークアップ言語文書と前記データおよびプログラムの少なくとも一方とをレンダリングし、規定のサイズの表示画面上で描画すべき各表示要素の配置座標を確認する手段と、
確認された各表示要素およびその配置座標に基づいて表示要素の配置替えを行った、第2のマークアップ言語で記述された第2マークアップ言語文書に変換する手段と、
変換された第2マークアップ言語文書を端末へ返送する手段とを備えた
ことを特徴とするマークアップ言語文書変換システム。 A markup language document conversion system including a terminal and a markup language document conversion device connected to each other via a communication network,
The terminal
The first markup language document described in the first markup language is designated to the markup language document conversion apparatus, and the document is described in the second markup language corresponding to the own terminal. Means for requesting conversion back to a two-markup language document;
Means for receiving a second markup language document from the markup language document conversion device;
Means for displaying the received second markup language document,
Markup language document converter
Means for acquiring the first markup language document and at least one of the data and program associated therewith in response to a request from the terminal;
Means for rendering the acquired first markup language document and at least one of the data and the program, and confirming the arrangement coordinates of each display element to be drawn on a display screen of a prescribed size;
Means for converting into a second markup language document described in a second markup language, wherein the display elements are rearranged based on each confirmed display element and its arrangement coordinates;
Means for returning the converted second markup language document to the terminal. A markup language document conversion system comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007339878A JP2009163326A (en) | 2007-12-28 | 2007-12-28 | Markup language document conversion device, method, program, and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007339878A JP2009163326A (en) | 2007-12-28 | 2007-12-28 | Markup language document conversion device, method, program, and system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009163326A true JP2009163326A (en) | 2009-07-23 |
Family
ID=40965910
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007339878A Pending JP2009163326A (en) | 2007-12-28 | 2007-12-28 | Markup language document conversion device, method, program, and system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009163326A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011093528A1 (en) * | 2010-01-28 | 2011-08-04 | Watanabe Sadao | Commercial product automatic input device using address input on internet |
JP2013152376A (en) * | 2012-01-25 | 2013-08-08 | Fujitsu Ltd | Display control program, display control method and computer |
JP5263851B1 (en) * | 2012-10-09 | 2013-08-14 | 株式会社エスキュービズム | Document conversion method and document conversion program |
WO2014196191A1 (en) * | 2013-06-04 | 2014-12-11 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | Information display method and program |
CN111143749A (en) * | 2019-12-31 | 2020-05-12 | 中国银行股份有限公司 | Webpage display method, device, equipment and storage medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000259486A (en) * | 1999-03-05 | 2000-09-22 | Jisedai Joho Hoso System Kenkyusho:Kk | Method and device for html/mheg transformation |
JP2006331342A (en) * | 2005-05-30 | 2006-12-07 | Nekusaburu:Kk | Content layout recognition program, recognition system, recognition method, content layout conversion program, conversion system, and conversion method |
WO2007038344A2 (en) * | 2005-09-23 | 2007-04-05 | Google Inc. | Displaying information on a mobile device |
-
2007
- 2007-12-28 JP JP2007339878A patent/JP2009163326A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000259486A (en) * | 1999-03-05 | 2000-09-22 | Jisedai Joho Hoso System Kenkyusho:Kk | Method and device for html/mheg transformation |
JP2006331342A (en) * | 2005-05-30 | 2006-12-07 | Nekusaburu:Kk | Content layout recognition program, recognition system, recognition method, content layout conversion program, conversion system, and conversion method |
WO2007038344A2 (en) * | 2005-09-23 | 2007-04-05 | Google Inc. | Displaying information on a mobile device |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011093528A1 (en) * | 2010-01-28 | 2011-08-04 | Watanabe Sadao | Commercial product automatic input device using address input on internet |
JP2013152376A (en) * | 2012-01-25 | 2013-08-08 | Fujitsu Ltd | Display control program, display control method and computer |
JP5263851B1 (en) * | 2012-10-09 | 2013-08-14 | 株式会社エスキュービズム | Document conversion method and document conversion program |
WO2014196191A1 (en) * | 2013-06-04 | 2014-12-11 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ | Information display method and program |
CN104584014A (en) * | 2013-06-04 | 2015-04-29 | 松下电器(美国)知识产权公司 | Information display method and program |
JPWO2014196191A1 (en) * | 2013-06-04 | 2017-02-23 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | Information display method and program |
CN104584014B (en) * | 2013-06-04 | 2018-11-20 | 松下电器(美国)知识产权公司 | Information display method and recording medium |
CN111143749A (en) * | 2019-12-31 | 2020-05-12 | 中国银行股份有限公司 | Webpage display method, device, equipment and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2009093643A1 (en) | Markup language document conversion system, device, method, and program | |
US8990289B2 (en) | Server based framework for improving Ajax performance | |
US20080077855A1 (en) | Generic website | |
RU2475832C1 (en) | Methods and systems for processing document object models (dom) to process video content | |
JP4398462B2 (en) | Method and system for improving the presentation of HTML pages on web devices | |
JP5551938B2 (en) | Method and apparatus for providing information content to be displayed on a client device | |
US5937417A (en) | Tooltips on webpages | |
EP2095605B1 (en) | Content adaptation | |
US20040049574A1 (en) | Web server | |
US6819336B1 (en) | Tooltips on webpages | |
US20090070413A1 (en) | Displaying Content on a Mobile Device | |
JP2001282674A (en) | Internet-based font server | |
US20130198613A1 (en) | Methods for tranforming requests for web content and devices thereof | |
CA2640025A1 (en) | Methods and devices for post processing rendered web pages and handling requests of post processed web pages | |
JP2000090001A (en) | Method and system for conversion of electronic data using conversion setting | |
US20110145299A1 (en) | Offline Gadgets IDE | |
CN103581232A (en) | Web page transmission method, web page displaying device and system including device | |
JP2009163326A (en) | Markup language document conversion device, method, program, and system | |
US6343328B1 (en) | Digital computer system using embedded comments to manipulate virtual controller functions | |
US7831732B1 (en) | Network connection utility | |
Artail et al. | Device-aware desktop web page transformation for rendering on handhelds | |
US8806326B1 (en) | User preference based content linking | |
JP2010250585A (en) | Markup language document conversion device, program and method | |
JP2011065385A (en) | Device, method and program for converting markup language document | |
JP2005327150A (en) | Information delivery system and information delivery method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101224 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20110707 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20110712 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120301 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120704 |