JPWO2012141183A1 - 多様な端末機器に対応するコンテンツ提供装置 - Google Patents

多様な端末機器に対応するコンテンツ提供装置 Download PDF

Info

Publication number
JPWO2012141183A1
JPWO2012141183A1 JP2013509932A JP2013509932A JPWO2012141183A1 JP WO2012141183 A1 JPWO2012141183 A1 JP WO2012141183A1 JP 2013509932 A JP2013509932 A JP 2013509932A JP 2013509932 A JP2013509932 A JP 2013509932A JP WO2012141183 A1 JPWO2012141183 A1 JP WO2012141183A1
Authority
JP
Japan
Prior art keywords
css
style sheet
file
content
differential
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
Application number
JP2013509932A
Other languages
English (en)
Inventor
和敏 坂田
和敏 坂田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SYMMETRIC CO Ltd
Original Assignee
SYMMETRIC CO Ltd
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 SYMMETRIC CO Ltd filed Critical SYMMETRIC CO Ltd
Publication of JPWO2012141183A1 publication Critical patent/JPWO2012141183A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • G06F40/154Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Digital Computer Display Output (AREA)

Abstract

【課題】マークアップ言語で記述されたコンテンツを多様な端末機器に表示する際に、各端末機器タイプに最適な画面構成による表示を行なう。【解決手段】スタイルシートの書き換えルールを記述した変換表に基づいて、既定スタイルシートと特定の端末機器向けに最適化したスタイルシートとの間の差分スタイルシートを動的に生成し、適用することで、表示対象の端末機器に適した形式による表示を行なうと共に複数のスタイルシートの管理に要する負荷を削減する。【選択図】図2

Description

本発明は、マークアップ言語で記述されたコンテンツを多様な端末機器に表示する際に、各端末機器タイプに適した画面表示を可能にするための装置、方法、およびコンピュータプログラムに関する。
今日のインターネットにおいてはHTMLやXHTMLなどのマークアップ言語で記述されたコンテンツをブラウザに表示することが頻繁に行なわれている。
過去においては、インターネットにおいてコンテンツが表示される対象機器はパーソナルコンピュータなどの比較的少数の機器タイプに限られてきた。しかし、今日においては、インターネットにおけるコンテンツの表示対象となる端末機器はきわめて多様化している。
特に、携帯電話機器の普及に伴う端末機器の多様化が顕著な動向となっている。さらに、携帯電話機器の領域においても、比較的小型の画面を有する従来型携帯電話機器だけではなく、より大型の画面を有する高機能のスマートフォンが普及し始めている。さらには、スマートフォンよりもさらに大型の画面を有するタブレット端末機器も急速に普及し始めている。これらの機器タイプ以外にも、たとえば、携帯ゲーム機器、カーナビゲーション機器、デジタルサイネージなど、インターネットを介してサーバに接続し、マークアップ言語で記述されたコンテンツを表示する対象となる端末機器の多様化が今後とも急速に進展することが予測される。
また、端末機器の画面サイズの多様化だけではなく入力方式の多様化も進んでいる。従来型パーソナルコンピュータにおけるマウスなどのポインティング機器とキーボードの組み合わせによる入力方式だけではなく、携帯電話の小型のボタンによる入力、スマートフォンやタブレット端末で典型的に見られる指先による画面へのタッチによる入力、などの入力方式が一般化している。
これらの端末機器は、そのタイプによってコンテンツ表示の要件が異なる。大型画面を有する端末機器では、情報の一覧性を高めるためにできるだけ多くの情報項目をひとつの画面に表示することが望ましいことが多い。一方、小型の画面を有する端末機器では、可読性を高めるために重要な情報だけを優先的に表示することが望ましいことが多い。また、マウスなどのポインティングデバイスを備えた端末機器ではユーザーが細かいメニュー操作を行なうことが可能であるのに対して、指先での画面へのタッチにより操作を行なう端末機器ではあまり細かい操作を行なうことができないため、メニュー項目を従来型パーソナルコンピュータの場合と比較して大きく表示することが望ましいことが多い。
言うまでもなく、これらの多様な機器タイプごとに、コンテンツ提供者が異なるコンテンツ・ファイルを作成し、用意することは非現実的である。このような課題に対応するために、文書の内容や構造に関する情報と表示形式(体裁、スタイル、デザイン、レイアウト)に関する情報を分離することを目的としたスタイルシートと呼ばれる技術が一般化している。スタイルシート・ファイルとは、コンテンツの表示における形式、たとえば、文字のサイズ、色、配置などの情報を、コンテンツの内容や構造と分離して保存するためのファイルである。必要に応じてスタイルシート・ファイルを切り替えて表示処理を行なうことで、コンテンツ提供者は、ひとつのコンテンツ・ファイルを使用して多様な端末タイプに対応することができるようになる。スタイルシートの技術的思想は、たとえば、特許文献1において開示されている。
今日のインターネットの世界ではCSS(カスケーディング・スタイル・シート)と呼ばれるスタイルシートの技術標準が一般化している。当該技術標準は、たとえば、非特許文献1に開示されている。ここで、カスケード(直列接続の意)とはコンテンツの構成要素の体裁を決定するためのルールの優先順位を指す。たとえば、CSS標準では、一般に後方にある指定の方が優先され、また、より細かい指定の方が優先される。このカスケードの仕組みを利用することで、あるCSSファイル内の特定要素の効果を別のCSSファイル上書きし、スタイルを強制的に変更することができる。たとえば、元々のCSSファイルの設定において色の違いによりコンテンツ内の構造(見出し、地の文、他のコンテンツへのリンクなど)を表現するようなデザインが行なわれていた場合、このままではモノクロ画面を有する機器に表示した場合にユーザービリティが大きく損なわれてしまうが、CSSのカスケードの仕組みを利用することで、コンテンツの構造を文字の大きさや字体(太字、斜体、下線)などで表現するよう指定した別のCSSファイルを用意して、元々のCSSファイルの指定の一部の効果を上書きし、モノクロ画面を有する機器への表示を最適化することができる。この場合に、コンテンツ・ファイル自体には変更を行なう必要がない。
以降の説明では、今日のインターネットの世界における技術標準となっているCSS、および、コンテンツ記述の標準フォーマットであるHTMLあるいはXHTMLに基づいた例を挙げて説明していくが、本願発明の技術的思想はカスケード処理の仕組みを有するスタイルシートに基づくあらゆるコンテンツ表示システムに適用可能である。なお、本明細書で単に「表示」と書いた場合には、画面への表示、紙面への印刷、音声による読み上げ等、コンテンツを人間にとって知覚可能にするあらゆる処理を表わすこととする。
CSSは、インターネットの世界における多様化するコンテンツ表示端末機器に対する柔軟な対応という課題解決に大きく貢献してきた。しかし、コンテンツ表示端末機器タイプ、および、表示対象となるコンテンツの増加ペースがますます加速する中で、CSS技術の標準的使用だけでは多様化する端末機器への表示最適化という要求に、コンテンツ提供者が十分に応えられなくなってきた。現在、一般的に行なわれている複数CSSファイルの管理方法とその課題を以下に示す。
(従来型技術の問題点)
第一の方法として、端末機器タイプごとにCSSファイルを用意してそれを切り替える手法がある。この方法では、コンテンツ提供者が、コンテンツを格納するXHTML(あるいはHTML)ファイルを作成する時にそれらのファイル内で複数のCSSファイルを明示的に参照(リンク)する指定を行なう必要がある。しかしながら、現在、日本国内において800機種以上の携帯端末機器が販売されていることを考えると、すべての端末機器タイプに対応するためには、仮にひとつのコンテンツ・ファイルあたり5個のCSSファイルが参照されているとすると800×5=4,000個のCSSファイルを用意して管理する必要が生じる。さらに、コンテンツ・ファイルのページごとに別のCSSファイルがリンクされていることもあるため、実際に管理対象となるCSSファイルの数はさらに多くなる。対応すべきコンテンツ表示機器タイプが日々増加し、Webページも日々更新されていく環境で、このような膨大な数のCSSファイルを管理していくことが困難になりつつある。
第二の方法として、対象端末機器タイプごとにCSSファイルを動的に生成する方法がある。この方式において、現在一般的に行なわれている方法のひとつにXSL標準を使用する方法がある。この方法では、コンテンツはXML言語で記述されることになるが、パーソナルコンピュータ以外の多くの端末機器はXMLを解釈する機能を有していないため、すべての機器がサポートできなくなるという現実的問題がある。また、端末機器タイプの増加に対応するために、複雑なXSL自体を動的に生成する仕組みを必要とし、画面形式の設計を簡単に変更できるというCSSの元来の特性を失ってしまう。さらに、一般に、CSSを動的に生成する方法では、コンテンツの構造の複雑な解析処理が必要となるため、元のコンテンツの構造が変わるたびに正確なスタイルを出力するための処理の負荷が大きくなってしまう。結果的に、日々増加し続けるデバイスと日々変更が発生するWebページに追随して、端末機器ごとに最適なCSSを提供することは困難である。一般論として、端末機器の多様化は市場原理に基づいて急速に進展していくため、XSLなどの固定的な標準規格だけで対応していくことには本質的な限界がある。
第三の方法として、CSSファイルを端末機器側のブラウザ内の(通常はJavaScript(登録商標)言語で記述された)スクリプトから操作する手法がある。この方式では、第二の方法と同様に、多種多様な端末機器の中にはJavaScript言語をサポートしていないものが多いこと、機器タイプ数×ページ数に相当する数のスクリプトを用意する必要があること、JavaScript言語によるCSSファイルの操作は複雑であり、機器タイプ毎にその動作をテストすることが困難であること、そして、JavaScript言語でHTMLを解析するような処理プログラムの作成が難しいことという現実的問題がある。
第四の方法として、ブラウザが提供するCSSファイルのユーザー指定機能を使用して適用するCSSファイルを端末機器のユーザー自身が切り替える方法がある。この方法でも、端末機器タイプ毎に最適なCSSファイルを作成する必要があり、膨大な数のCSSファイルの作成が必要となる点は第一の方法と同様であり、また、多くの端末機器ではCSSファイルのユーザー指定機能を実装していないという現実的問題がある。
米国特許第5860073号明細書
段階スタイルシート 水準2(CSS2) 標準情報(TR)
TR X 0032:2000(http://www.y-adagio.com/public/standards/tr_css2/toc.html)
CSSファイルの管理に係る従来の問題点を解決し、機器タイプ数とWebページ数の乗算値に比例して管理対象が増えないこと、コンテンツ(HTMLやXHTMLファイル)の複雑な解析が不要であること、機器側のブラウザの実装に依存しないことを特徴として、多種多様な機器におけるコンテンツの最適な表示を可能にするコンテンツ提供装置およびコンピュータプログラムを提供する。
本願発明は、差分生成プログラムと第一のスタイルシート保存手段と第二のスタイルシート保存手段とスタイルシート変換ルール保存手段から構成されるコンテンツ変換手段を備え、第一のスタイルシート、第二のスタイルシート、および、スタイルシート変換ルールはそれぞれキー項目と属性値から成るコンテンツ提供装置であって、該差分生成プログラムが、第一のスタイルシート保存手段内のスタイルシートを読み出し、変換ルール保存手段内の変換ルールを読み出し、第一のスタイルシートから変換ルール内のキー項目に合致するキー項目を有する複数項目を抽出し、抽出した該複数項目のそれぞれの属性値を変換ルール内の属性値で置き換えて、第二のスタイルシートを生成し、第二のスタイルシートを第二のスタイルシート保存手段に保存することを特徴とするコンテンツ提供装置を提供することで前記課題を解決する。
また、本願発明は、差分生成プログラムと第一のスタイルシート保存手段と第二のスタイルシート保存手段とスタイルシート変換ルール保存手段から構成されるコンテンツ変換手段を備え、第一のスタイルシート、第二のスタイルシート、および、スタイルシート変換ルールはそれぞれキー項目と属性値から成るコンテンツ表示提供装置における差分生成プログラムであって、第一のスタイルシート保存手段内のスタイルシートを読み出し、変換ルール保存手段内の変換ルールを読み出し、第一のスタイルシートから変換ルール内のキー項目に合致するキー項目を有する複数項目を抽出し、抽出した該複数項目のそれぞれの属性値を変換ルール内の属性値で置き換えて、第二のスタイルシートを生成し、第二のスタイルシートを第二のスタイルシート保存手段に保存することを特徴とする差分生成プログラムを提供することで前記課題を解決する。
本発明により、インターネットのコンテンツを多種多様な端末機器に対して表示する際に、各機器の画面サイズや入力方式などの特性に合致した表示を行なうことが可能になると同時に、コンテンツ管理者によるスタイルシート・ファイルの管理負荷を軽減し、サーバによるコンテンツ・ファイル解析のための処理負荷を最小化することができる。
本発明に係る情報システムの全体構成図である。 本発明の主要要素であるコンテンツ提供手段の内部構造である。 本発明で使用する機器グループ設定(図2の構成要素)の例である。 本発明で使用するCSS変換表(図2の構成要素)の例である。 本発明に係る差分CSS生成プログラム(図2の構成要素)の処理ステップの概要である。 図5に示した差分CSS生成プログラムの処理結果の具体例である。 本発明に係る差分CSS適用プログラム(図2の構成要素)の処理結果の例である。 本発明に係る差分CSS適用プログラムにおけるプロパティの変更・消去の指定方法の例である。
以下、本発明に係る情報システム、情報表示方法、および、この方法を実行するコンピュータプログラムの例について詳細に説明する。
図1は、本発明に係る情報システムが稼働する環境の全体図である。コンテンツ提供手段(101)は、HTMLやXHTMLで作成されたコンテンツをひとつ以上のコンテンツ表示端末機器に対して配信し、閲覧できるようにするための手段であり、典型的にはサーバ・ハードウェアおよびその上で稼働するプログラム群から構成されるが、これに限定されない。コンテンツ提供手段の内部構造については以降で説明する。
コンテンツ表示端末機器(102)は、コンテンツの表示手段(典型的にはWebブラウザ)を備えたハードウェア機器であり、具体的にはパーソナルコンピュータ、携帯電話、スマートフォン、タブレット端末、ゲーム機器、カーナビゲーション機器、デジタルサイネージ等であるが、これらに限定されない。
ネットワークはコンテンツ提供手段(101)とコンテンツ表示端末機器(102)を相互接続する手段であり、典型的にはインターネットであるが、これに限定されない。
図1におけるコンテンツ提供手段(101)以外の要素は、今日のインターネットで使用されている一般的技術であるため、これ以上の説明は特に行なわない。以降では、コンテンツ提供手段(101)の内部構造と処理手順に絞って説明を行なう。
図2に、コンテンツ提供手段(101)の内部構造を示す。コンテンツ提供手段は、大きくWebサーバ・プログラム(201)、差分CSS生成プログラム(202)、および、差分CSS適用プログラム(203)の三つの機能モジュールから構成される。
ここで、Webサーバ・プログラム(201)は、HTTP、HTML、XHTML、CSSなどの一般的なインターネット標準にしたがって、コンテンツ表示端末機器(102)に対してコンテンツを配信する機能を有するプログラムである。Webサーバ・プログラム(201)は今日のインターネットにおける技術常識であるため、その内部的機能と動作についてはこれ以上特に説明しない。
差分CSS生成プログラム(202)は、システム管理者が作成した既定CSSファイルを読み取り、コンテンツ製作者あるいはコンテンツ管理者が機器グループ構成保存手段(206)とCSS変換表(207)とに設定した情報にしたがって、差分CSSファイルを生成するプログラムである。差分CSS生成プログラム(202)の詳細な動作については後述する。
差分CSS適用プログラム(203)は、差分CSS生成プログラム(202)が生成した差分CSSファイルによって既定CSSファイルのスタイル指定の効果の一部をオーバーライド(上書き)し、Webサーバ・プログラム(201)が各端末機器タイプにとって最適なスタイルのコンテンツ配信を行なえるようにするためのプログラムである。差分CSS適用プログラム(203)の詳細な動作については後述する。
コンテンツ保存手段(204)は、Webサーバ・プログラム(201)がコンテンツ表示端末機器(102)に送信する対象となるコンテンツ(典型的にはHTMLまたはXHTMLで記述されたWebページ)を保管するファイル、あるいは、データベースなどである。コンテンツ保存手段(204)は今日のインターネットにおける技術常識であるため、これ以上は特に説明しない。
既定CSSファイル保存手段(205)は、コンテンツ製作者あるいはコンテンツ管理者が作成した汎用的なCSSファイルを保管するためのファイル、あるいは、データベースなどである。このCSSファイルは、広く普及した技術標準であるCSSの形式で記述することが望ましい。既定CSSファイル保存手段(205)は一般的なWebサーバ・システムにおいても必須の構成要素であり今日の技術常識となっているため、これ以上の説明は行なわない。
機器グループ設定保存手段(206)は、コンテンツ作成者またはコンテンツ管理者が作成するデータベースあるいはファイルなどのデータ保存手段であり、共通の特性を有する複数の端末機器タイプをグループ化して管理する機能を提供する。機器グループ設定保存手段(206)に保存される機器グループ設定の例を図3に示す。端末IDとは端末識別子と同義であり、端末機器に固有のタイプ(典型的にはモデル名)を表わす。端末変換テーブル(図3−a)が、特定の端末機器を一つ以上の端末グループに対応付ける。端末変換グループテーブル(図3−b)が、端末グループを一つのデバイスグループに対応づける。デバイスグループは共通の特性を持つ端末機器のグループである。CSSプロパティグループとは、デバイスグループのカテゴリーを表わす属性である。たとえば、同じ画面サイズを有する複数の端末機器タイプは、スクリーンサイズのCSSプロパティグループにおいて同じデバイスグループに属するような設定をコンテンツ管理者が行なうことが通常である。また、一つの端末機器が複数のデバイスグループに属していてもよい。図3の例では、たとえば、T1の識別子を有する端末機器は、vgaという(スクリーンサイズに関する)デバイスグループと「モリサワ」という(フォントに関する)デバイスグループに属することになる。デバイスグループは、差分CSS生成プログラム(202)がCSSファイルの属性値を置き換える際に従うルールを構成する。
CSS変換表(207)は、コンテンツ作成者またはコンテンツ管理者が作成する表であり、差分CSS生成プログラム(202)が既定CSSファイルに対する差分CSSファイルの抽出と変換を行なう際のルールを記述するために使用する。典型的には、CSS変換表(207)は、サーバ・ハードウェア上のファイル、あるいは、データベースなどにより実現される。CSS変換表(207)の例を図4に示す。ここで、セレクタとは形式(スタイル)を適用する対象範囲を選択する指定であり、たとえば、ヘッダー、通常段落などの指定がある。プロパティとは形式(スタイル)の特定の属性であり、プロパティ値は属性の具体的値である。セレクタとプロパティはCSS標準で定められた用語であり、本発明の実施においてもCSS標準に合致した指定を行なうことが望ましい。セレクタ、プロパティ名、および、プロパティ値はCSS変換表(207)のキー項目を構成する。CSS変換表(207)におけるキー項目以外の列は属性値であり、差分CSS生成プログラム(202)がその処理において適用する変換後の属性値を、デバイスグループごとに示している。たとえば、図4のCSS変換表(207)の1行目の設定について言えば、デバイスグループA−2に属する端末機器に対して、キー項目がマッチする既定CSSファイルの項目の属性値を8pxという属性値で置き換えることを示す。
なお、機器グループ設定保存手段(206)とCSS変換表(207)は、物理的に異なるファイルあるいは異なるデータベースとして実装する必要はない。本明細書で開示する論理的機能、すなわち、端末IDをキーとして、CSSファイル内において置き換えるべき項目と置き換え後の属性値を特定できるデータベースとしての機能を提供できる論理的構造であれば、両者を物理的にひとつのファイルあるいはデータベースとして実装してもよいし、任意の物理的実装を採用してよい。
以下では、本発明の技術的特徴のひとつである差分CSS生成プログラム(203)の動作について詳細に説明する。
図5に、差分CSS生成プログラム(203)が実行する処理の各ステップ、および、各ステップにおける入力ファイルと出力ファイルの概略について示す。なお、差分CSS生成プログラム(203)が各処理ステップにおいて使用するファイルのうちの一時ファイル、すなわち、処理の実行中のみに存在し、処理終了後にシステムあるいは差分CSS生成プログラム(203)自身が削除するファイルは図2には示していない。
(図5−aの説明)コンテンツ表示端末機器(102)が特定コンテンツのリクエスト(通常は、HTTPのGETリクエストまたはPOSTリクエストによる)をコンテンツ提供手段(101)内のWebサーバ・プログラム(201)に送信すると、Webサーバ・プログラム(201)はその情報を差分CSS生成プログラム(203)に渡す。差分CSS生成プログラム(203)は、コンテンツ表示端末機器(102)が要求するコンテンツ・ファイルが使用している既定CSSファイルを識別する(図3−a)。一般的なケースでは、差分CSS生成プログラム(203)は、インターネットの標準にしたがいHTMLで記述されたコンテンツ・ファイル内のlinkタグを参照することで既定CSSファイルを識別できる。
(図5−bの説明)次に、差分CSS生成プログラム(203)は、CSS変換表(207)を参照して、図3−aの処理で識別した既定CSSファイル内の各項目を順次チェックし、CSS変換表(207)のキー項目と内容がマッチするものがないかを識別する。ここで、比較の対象となるキー項目は1)セレクタ、プロパティ名、プロパティ値の組み合わせ、2)プロパティ名、プロパティ値の組み合わせ、3)セレクタ、プロパティ名の組み合わせ、4)プロパティ名、の四つのパターンのうちのいずれかひとつである。マッチングの順番は、上記のパターンの列挙において前にあるものの方が優先するようにしてよい。すなわち、たとえば、セレクタ、プロパティ名、プロパティ値の組み合わせがマッチする項目があれば、セレクタ、プロパティ名の組み合わせだけがマッチする項目よりも優先的に適用されるようにしてよい。差分CSS生成プログラム(203)は、既定CSSファイルの項目の中で、CSS変換表(207)のキー項目とマッチした項目だけを抽出し、変換対象CSS項目ファイル(一時ファイル)を生成する。
(図5−cの説明)コンテンツ表示端末機器(102)がWebサーバ・プログラム(201)に送る要求は、インターネットの標準にしたがい、端末タイプの識別子(ブラウザ名や携帯電話のモデル番号など)を含む。差分CSS生成プログラム(203)は、Webサーバ・プログラム(201)より当該端末タイプの識別子を受け取り、それをキーとして機器グループ保存手段(206)から、当該端末タイプに対応する一つ以上の端末グループID、各端末グループIDに対応するデバイスグループ名、および、CSSプロパティグループIDを読み出し、機器グループ設定(一時ファイル)として書き出す。
(図5−dの説明)差分CSS生成プログラム(203)は、図5−cのステップで読み出した機器グループ設定(一時ファイル)とCSS変換表(207)の内容を併合し、CSS変換表サブセット(一時ファイル)を生成する。当該ファイルは、CSS変換表(207)の中で、当該端末タイプに関連するルールだけを抽出したファイルに相当する。
(図5−eの説明)差分CSS生成プログラム(203)は、図5−bのステップで生成した変換対象CSS項目中の各項目に対してCSS変換表サブセット(一時ファイル)中の変換処理を適用する。具体的には、変換対象CSS項目(一時ファイル)のキー項目とCSS変換表サブセットのキー項目がマッチする場合に、変換対象CSS項目のプロパティ値をCSS変換表サブセット内の対応する属性値で置き換える。対応する属性値とは、端末機器が属する端末グループに相当するCSSプロパティグループとデバイスグループの組み合わせに相当するCSS変換表の列に保管された属性値のことである(ある端末機器がどの端末グループに属するか、および、どの端末グループがどのCSSプロパティグループにおいてどのデバイスグループに属するかは、機器グループ設定(図3)を参照することで知ることができる)。差分CSS生成プログラム(203)は、変換対象CSS項目のすべての項目の変換処理を完了した後に、結果として得られた差分CSSファイルを差分CSS保存手段(208)に保存する。差分CSS生成プログラム(203)が保存した差分CSSファイルは、差分CSS適用プログラム(204)が読み取り、以降の処理を行なう(当該処理については後述する)。
以下に、具体的データを使用して差分CSS生成プログラム(203)の処理を再度説明する。本説明は、W3CのCSS標準に基づいたものであるが、本発明の思想は、CSS類似のスタイルシートを使用したコンテンツ提供システム全般に適用可能である。
この例では、図3に挙げた機器グループ設定、および、図4に挙げたCSS変換表を使用するものとする。図6−aに本説明で使用する既定CSSファイルを示す。
(図5−aおよび図5−bに相当する処理ステップの結果の例の説明)
差分CSS生成プログラム(203)は、既定CSSファイル(図6−a)を先頭から読み、図4に示したCSS変換表のキー項目とマッチする項目をサーチする。図4のCSS変換表において、最初の行はセレクタ(p.article)であって、プロパティ(margin)がプロパティ値(10px)の項目にマッチする(その項目が変換対象となる)ことを示している。この場合、既定CSSファイル内でのサーチ処理は単純にセレクタを文字列比較し、マッチすればさらにプロパティ値の文字列比較をすればよい。図4のCSS変換表の2行目では、セレクタの指定がないため、セレクタは無視して、プロパティ(font-size)かつプロパティ値(MS明朝)がマッチする行を既定CSSファイルで探索する。図4のCSS変換表の3行目もセレクタがないので、セレクタの指定は無視してプロパティ(font-size)をマッチする行を既定CSSファイルで探索する(この場合は、プロパティ値の指定がないので、プロパティがfont-sizeである既定CSSファイル内のすべての行がマッチする)。図4のCSS変換表の4行目では、セレクタ(p.article)の中でプロパティがline-heightである行をサーチする(プロパティ値の指定がないためプロパティがline-heightであればマッチする。)これらのマッチング処理の結果を図6−bに示す。差分CSS生成プログラム(203)は、マッチしたすべての項目を変換対象CSS項目(一時ファイル)として出力する。この例における当該一時ファイルの内容を図6−cに示す。
(図5−c、図5−d、および、図5−eに相当する処理ステップの結果の例)
差分CSS生成プログラム(203)は、コンテンツ要求を行なった端末のタイプに応じて、CSS変換表(図4)の指定にしたがって、変換対象CSS項目ファイルにおけるプロパティ値の書き換えを行なう。この例では、T1、T2、T3という三種類の機器タイプに対する処理例を示す。この例では、機器グループ設定(図3)に示すように、スクリーンサイズのグループ(CSSプロパティグループIDがA)において、T1とT2はデバイスグループ2に属し、T3はデバイスグループ3に属し、さらに、フォントのグループ(CSSプロパティグループIDがB)においてT1はデバイスグループ3に、T2はデバイスグループ2に属している(T3はフォントのCSSプロパティグループではどのデバイスグループにも属さない、すなわち、T3に属する端末機器に対しては差分CSS生成プログラム(203)はフォントに関する書き換え処理を行なわない)。ここで、CSSプロパティグループIDがAであるプロパティグループにおいて、デバイスグループ1に属している端末機器タイプに対しては、CSS変換表(図4)のA−1の列に保管された属性値によって置き換え処理を行なう。その他のCSSプロパティグループIDとデバイスグループにおいても同様に処理する。この例において、差分CSS生成プログラム(203)が生成する差分CSSファイルを図6−dに示す。
なお、上記の各処理はすべて単純な文字列マッチ処理であり、複雑な構文解析を必要としないため、ハードウェアの処理負荷が小さく、本発明に係る装置やプログラムの開発者にとっての開発負担が小さい。
次に、差分CSS適用プログラム(204)の処理内容について説明する。差分CSS適用プログラム(204)が、差分CSS生成プログラム(203)が生成した差分CSSファイルを適用し、端末機器における実際の表示に反映させる方法は大きく三種類に分けられる。以下に各方法について説明する。ここで、既定CSSファイルのヘッダー部分には、図7−aのような指定が行なわれているとする(これは、特に変換処理を行なわない状態では図6−aの既定CSSファイルのスタイル指定に基づいたコンテンツ表示が行なわれることを意味する)。
第一の方法は、HTMLファイルに対して差分CSSファイルへの参照(リンク)を追記する方法である。たとえば、差分CSS生成プログラム(203)が端末タイプT1に相当する差分CSSファイルの名称をT1.cssとして書き出した場合には、差分CSS適用プログラム(204)がコンテンツ・ファイルを変換し、図7−b−1のような指定を行なうようにする。差分CSSファイルにどのようなファイル名を付けるかは設計上の選択肢として開発者が決定する事項である(たとえば、ファイル名にURL名やファイル作成時のタイムスタンプを付け、たとえば www.foobar.jp.20110412134567.T1.css
というようなユニークなファイル名を生成するようにしてもよい)。CSS標準では、後方に指定されたCSSファイルのスタイル設定が前方で指定されたCSSファイルのスタイル設定よりも優先して適用されるため、本発明の目的である端末タイプに応じた表示形式の実現が可能になる。なお、スタイルのすべての変更部分が差分CSSファイルに集約されているため、多段階のカスケード処理によって端末機器側の処理負担が増すことはない。
第一の方法のバリエーションとして、差分CSS適用プログラム(204)が、既定CSSファイルと差分CSSファイルをマージ(併合)し、新たなCSSファイルを作成し、その作成されたCSSファイルをヘッダー部分で指定するようにコンテンツ・ファイルを書き換えてもよい。この方式により、差分CSS適用プログラム(204)が書き換えたコンテンツ・ファイルのヘッダー部分の例を図7−b−2に示す。上記の併合処理は単純であり、CSSファイルを最初から動的に生成する従来方法と比較して、実現が容易であり、サーバ・ハードウェアの処理負荷も小さいという利点がある。
第二の方法は、差分CSS適用プログラム(204)がCSS標準のstyle要素をHTMLファイルのヘッダー部分に挿入する方法である。この方式を用いて差分CSS適用プログラム(204)が書き換えたHTMLファイルのヘッダー部分の例を図7−cに示す。CSS標準では、style要素によるスタイル指定はリンクした外部ファイルによるスタイル指定よりも優先的に適用されるため、本発明の目的である端末タイプに適したスタイルのコンテンツ表示の実現が可能になる。
この第二の方法を用いる場合には、差分CSS適用プログラム(204)において、プロパティ自体を変更したり、プロパティ自体を削除する設計とすることも可能である。図8に、このような処理を行なわせるための指定方法の例を示した。801はプロパティと値の両方を指定することで、プロパティ自体を変更するよう指示する記載の例である。802は、予約語であるDELETEを記載することでプロパティ自体を削除するよう指示する記載の例である。この以外にも設計上の選択として他の予約語を使用することもできる。このような設計とすることで、CSSにおけるカスケードの上書き効果だけでは実現できない、表示形式の変更にも対応可能である。
第三の方法は、差分CSS適用プログラム(204)がHTMLファイルの中から差分CSSファイル中のセレクタに相当する部分を探索し、それぞれのタグにstyle属性を指定する方法である。
上記三方法のいずれを用いても、差分CSSファイルのスタイル設定効果が既定CSSファイルの効果を上書きする形で適用され、本発明の目的である端末機器タイプの特性に応じたコンテンツの表示を標準的なWebサーバ・プログラム(201)が行なうことが可能になる。ここで、Webサーバ・プログラム(201)が実行するCSSファイルの解釈処理については、今日において一般的なあらゆるWebサーバ・プログラムが提供している公知技術であるため、特に説明はしない。
(用語の定義)
以下に、本明細書に特有の用語の定義を再度まとめる。
「既定CSSファイル」とは、コンテンツ製作者が作成する最も汎用的なCSS形式のファイルである。「差分CSSファイル」とは、コンテンツ表示対象となる端末機器タイプにおける表示に適したCSSファイルと既定CSSファイルとの差分(相違点)に相当するCSSファイルである。「差分CSS生成プログラム」(あるいは「差分生成プログラム」)とは、コンテンツ製作者がCSS変換表と変換データベースに登録した情報にしたがって、既定CSSファイルから差分CSSファイルを生成するプログラムである。「差分CSS適用プログラム」とは、差分CSS生成プログラムが生成した差分CSSファイルを既定CSSファイルに併合するなどの方法により、差分CSSファイルのスタイル設定効果をコンテンツ表示に反映し、本発明の目的である各端末機器タイプに適したコンテンツの提供をWebサーバ・プログラムが行なえるようにするためのプログラムである。「機器グループ設定保存手段」とは、共通の特性を有する複数の端末機器タイプをグループ化して管理する機能を提供するデータベースあるいはファイルなどのデータ保存手段であり、コンテンツ制作者またはコンテンツ管理者が作成する。「CSS変換表」とは、コンテンツ作成者またはコンテンツ管理者が作成する表であり、データベースあるいはファイルとして保存する。既定CSSファイルに対する差分CSSファイルの抽出と変換ルール(キー項目とそれに対応する端末グループごとの置き換えプロパティ値)を記述するために使用する。
なお、機器グループ設定保存手段とCSS変換表は物理的にはひとつのファイルあるいはデータベースであってよい。特許請求の範囲においては、CSS変換表と変換データベースを併せてスタイルシート変換ルールと呼んでいる。ここで、キー項目とは、上記説明におけるセレクタ、プロパティ、プロパティ値のいずれか、または、それの組み合わせであり、属性値はプロパティ値と同義である。
(本発明の技術的に顕著な効果)
本発明の、従来の技術と比較した優位性を以下にまとめる。第一に、変換処理がサーバ・ハードウェア上のプログラムで行なわれるため、端末側での処理に依存することがなく、すべての端末タイプに対して適用できる(端末では最小限のブラウザ機能だけが提供されていればよい)。第二に、変換に必要な記述だけをCSS変換表に記述すればよいため、管理者の管理負荷が小さい(多数のCSSファイルを管理する負担がない)。第三に、端末側では、CSSによる多段階のカスケード処理を行なう必要がなく、最高でもひとつの差分CSSファイルだけのレンダリング(描画処理)を行なえばよいため、表示パフォーマンスの劣化が小さい(携帯型端末機器には十分な処理能力を備えておらず多段階のカスケード処理が負担になる物も存在するが、本発明によればこの点は問題とならない)。第四に、コンテンツ・ファイル(HTMLやXHTMLで記述されたファイル)の複雑な解析処理が必要ないので、サーバにおけるスタイルシート変換の性能が高く、コンテンツ・ファイルの変更時におけるシステム処理負荷および管理負荷を最小化できる。第五に、既定CSSファイルとCSS変換表を1セットとして管理可能であり、XHTMLとXSLの組み合わせで使用する場合とは異なり、記述されたコンテンツの増加・変更に比例して管理対象が急増することがない。第六に、対象端末機器が増加した場合も、当該端末機器の項目を機器設定データベースに登録するだけ対応可能であり、管理対象が増加せず、コンテンツの変更が必要ない。第七に、本発明に係るシステムが存在しない環境(たとえば、インターネットに接続されていないパーソナルコンピュータで開発作業を行なっている場合など)でも既定CSSに基づいた表示が可能であるためコンテンツ・ファイルの作成が容易である。最後の優位点として、管理者が記述する変換表がCSS標準の文法に沿っているため、管理者にとって理解が容易であり、開発者にとって本発明に係る変換プログラムの開発が容易である点が挙げられる。

Claims (2)

  1. 差分生成プログラムと第一のスタイルシート保存手段と第二のスタイルシート保存手段とスタイルシート変換ルール保存手段から構成されるコンテンツ変換手段を備え、第一のスタイルシート、第二のスタイルシート、および、スタイルシート変換ルールはそれぞれキー項目と属性値から成るコンテンツ提供装置であって、
    該差分生成プログラムが、第一のスタイルシート保存手段内のスタイルシートを読み出し、変換ルール保存手段内の変換ルールを読み出し、第一のスタイルシートから変換ルール内のキー項目に合致するキー項目を有する複数項目を抽出し、抽出した該複数項目のそれぞれの属性値を変換ルール内の属性値で置き換えて、第二のスタイルシートを生成し、第二のスタイルシートを第二のスタイルシート保存手段に保存することを特徴とするコンテンツ提供装置
  2. 差分生成プログラムと第一のスタイルシート保存手段と第二のスタイルシート保存手段とスタイルシート変換ルール保存手段から構成されるコンテンツ変換手段を備え、第一のスタイルシート、第二のスタイルシート、および、スタイルシート変換ルールはそれぞれキー項目と属性値から成るコンテンツ提供装置において、
    第一のスタイルシート保存手段内のスタイルシートを読み出し、変換ルール保存手段内の変換ルールを読み出し、第一のスタイルシートから変換ルール内のキー項目に合致するキー項目を有する複数項目を抽出し、抽出した該複数項目のそれぞれの属性値を変換ルール内の属性値で置き換えて、第二のスタイルシートを生成し、第二のスタイルシートを第二のスタイルシート保存手段に保存することを特徴とする差分生成プログラム
JP2013509932A 2011-04-15 2012-04-11 多様な端末機器に対応するコンテンツ提供装置 Pending JPWO2012141183A1 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2011091593 2011-04-15
JP2011091593 2011-04-15
PCT/JP2012/059821 WO2012141183A1 (ja) 2011-04-15 2012-04-11 多様な端末機器に対応するコンテンツ提供装置

Publications (1)

Publication Number Publication Date
JPWO2012141183A1 true JPWO2012141183A1 (ja) 2014-07-28

Family

ID=47009356

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013509932A Pending JPWO2012141183A1 (ja) 2011-04-15 2012-04-11 多様な端末機器に対応するコンテンツ提供装置

Country Status (3)

Country Link
US (1) US20140013211A1 (ja)
JP (1) JPWO2012141183A1 (ja)
WO (1) WO2012141183A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130305145A1 (en) * 2012-05-09 2013-11-14 Ni Group Limited A Method of Publishing Digital Content
US20130305144A1 (en) * 2012-05-09 2013-11-14 Ni Group Limited Method of Publishing Digital Content
US20140035945A1 (en) * 2012-08-03 2014-02-06 Todd Anglin Computing device applications with an automatically adapting user interface
JP6142620B2 (ja) * 2013-03-28 2017-06-07 富士通株式会社 表示変更プログラム、表示変更方法及び表示変更装置
US20140331124A1 (en) * 2013-05-02 2014-11-06 Locu, Inc. Method for maintaining common data across multiple platforms
KR102178820B1 (ko) * 2014-02-24 2020-11-13 에스케이플래닛 주식회사 광고 표시 시스템 및 그 방법, 그리고 이에 적용되는 장치
JP5717263B2 (ja) * 2014-09-17 2015-05-13 株式会社じぶん銀行 マルチデバイスに対応したシステムにおいて用いられる装置、その装置において実行される方法およびプログラム
JP5788116B2 (ja) * 2015-02-13 2015-09-30 株式会社じぶん銀行 マルチデバイスに対応したシステムにおいて用いられる装置、その装置において実行される方法およびプログラム
US10423711B2 (en) 2015-10-23 2019-09-24 Oracle International Corporation Generating style sheets during runtime
US11314907B2 (en) * 2016-08-26 2022-04-26 Hitachi, Ltd. Simulation including multiple simulators
US20230306956A1 (en) * 2022-03-28 2023-09-28 Capital One Services, Llc Flexible text-to-speech for screen readers

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030233620A1 (en) * 2002-06-12 2003-12-18 Oracle International Corporation Methods and systems for managing styles electronic documents

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6023714A (en) * 1997-04-24 2000-02-08 Microsoft Corporation Method and system for dynamically adapting the layout of a document to an output device
JP2004530959A (ja) * 2000-12-18 2004-10-07 カルゴ、インコーポレイテッド コンテンツのモバイル装置への配信システム及び配信方法
US20020165881A1 (en) * 2001-03-15 2002-11-07 Imation Corp. Web page color accuracy using color-customized style sheets
JP2004151853A (ja) * 2002-10-29 2004-05-27 Keiichi Hayashida サーバ、プログラム、記録媒体
JP2004288096A (ja) * 2003-03-25 2004-10-14 Tokyo Bunkyudo:Kk 印刷システム
US7076500B2 (en) * 2003-06-30 2006-07-11 David Gallant Selective file caching method
US20110252039A1 (en) * 2009-10-14 2011-10-13 Research In Motion Limited System, apparatus and method for processing content on a computing device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030233620A1 (en) * 2002-06-12 2003-12-18 Oracle International Corporation Methods and systems for managing styles electronic documents
WO2003107216A2 (en) * 2002-06-12 2003-12-24 Oracle International Corporation Methods and systems for managing styles in electronic documents
CN1656476A (zh) * 2002-06-12 2005-08-17 甲骨文国际公司 管理电子文档样式的方法和系统
JP2005530241A (ja) * 2002-06-12 2005-10-06 オラクル・インターナショナル・コーポレイション 電子文書のスタイルを管理するための方法およびシステム

Also Published As

Publication number Publication date
WO2012141183A1 (ja) 2012-10-18
US20140013211A1 (en) 2014-01-09

Similar Documents

Publication Publication Date Title
WO2012141183A1 (ja) 多様な端末機器に対応するコンテンツ提供装置
CN114035773B (zh) 一种基于配置的低代码开发表单方法、系统及装置
US8667405B2 (en) Browser-based development tools and methods for developing the same
US9135341B2 (en) Method and arrangement for paginating and previewing XHTML/HTML formatted information content
US8271512B2 (en) Presenting digitized content on a network using a cross-linked layer of electronic documents derived from a relational database
US20080028302A1 (en) Method and apparatus for incrementally updating a web page
US9817811B2 (en) Web server system, dictionary system, dictionary call method, screen control display method, and demonstration application generation method
JP2004005568A (ja) レガシー・アプリケーションの高速gui体裁更新
US20100299589A1 (en) Keyword display method and keyword display system
KR101569984B1 (ko) 웹 스크래핑 추출 데이터 설정 방법
WO2020215692A1 (zh) 页面生成方法、装置、终端及存储介质
US10614156B1 (en) System and method for using a dynamic webpage editor
US10922059B2 (en) Integrating application features into a platform interface based on application metadata
JPWO2006051964A1 (ja) データ処理システム、データ処理方法、及び管理サーバ
JPWO2006051958A1 (ja) 情報配信システム
JP2018501551A (ja) 数式処理方法、装置、デバイス及びプログラム
US20090083300A1 (en) Document processing device and document processing method
CN113268227A (zh) 一种零代码可视化的软件开发平台及开发方法
JP5136087B2 (ja) クライアント装置およびクライアント制御プログラム
JP4723511B2 (ja) 文書処理装置及び文書処理方法
JPWO2006051966A1 (ja) 文書管理装置及び文書管理方法
JPWO2006051955A1 (ja) サーバ装置及び名前空間発行方法
JP5858479B2 (ja) 端末装置及びプログラム
JPWO2007105364A1 (ja) 文書処理装置及び文書処理方法
CN102193907A (zh) 一种基于b/s结构的文稿对比方法及系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150327

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160513

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20161104