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

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

Info

Publication number
WO2012141183A1
WO2012141183A1 PCT/JP2012/059821 JP2012059821W WO2012141183A1 WO 2012141183 A1 WO2012141183 A1 WO 2012141183A1 JP 2012059821 W JP2012059821 W JP 2012059821W WO 2012141183 A1 WO2012141183 A1 WO 2012141183A1
Authority
WO
WIPO (PCT)
Prior art keywords
css
style sheet
content
file
style
Prior art date
Application number
PCT/JP2012/059821
Other languages
English (en)
French (fr)
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 JP2013509932A priority Critical patent/JPWO2012141183A1/ja
Priority to US13/979,758 priority patent/US20140013211A1/en
Publication of WO2012141183A1 publication Critical patent/WO2012141183A1/ja

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

Definitions

  • the present invention relates to an apparatus, a method, and a computer program for enabling screen display suitable for each terminal device type when displaying content described in a markup language on various terminal devices.
  • target devices on which content is displayed on the Internet have been limited to a relatively small number of device types such as personal computers.
  • terminal devices that are targets of content display on the Internet are extremely diversified.
  • terminal devices have different content display requirements depending on their types.
  • a terminal device having a large screen it is often desirable to display as many information items as possible on one screen in order to improve the listability of information.
  • a terminal device having a small screen it is often desirable to preferentially display only important information in order to improve readability.
  • a terminal device equipped with a pointing device such as a mouse allows a user to perform fine menu operations, whereas a terminal device that performs operations by touching the screen with a fingertip performs very fine operations. Therefore, it is often desirable to display menu items larger than in the case of a conventional personal computer.
  • a style sheet file is a file for storing information such as the display format of content, such as character size, color, and arrangement, separately from the content and structure of the content.
  • CSS CSS style sheets
  • cascade meaning serial connection
  • the specification at the back is generally given priority
  • the specification that is finer is given priority.
  • CSS will be the technical standard in today's Internet world, and examples based on HTML or XHTML, which is the standard format for content description, will be described. Is applicable to any content display system based on a style sheet having a cascade processing mechanism. Note that when simply “display” is written in the present specification, it means all processes that make the content perceivable by humans, such as display on a screen, printing on a paper surface, and reading out by voice.
  • CSS has greatly contributed to solving the problem of flexible response to diversified content display terminal devices in the Internet world.
  • content display terminal device types and the content to be displayed are increasing at an ever-increasing pace, content is provided to meet the demand for display optimization on terminal devices that are diversified only by the standard use of CSS technology. Have become unable to fully respond.
  • the following is a list of common CSS file management methods and issues.
  • the first method is to prepare a CSS file for each terminal device type and switch between them.
  • a content provider creates an XHTML (or HTML) file for storing content
  • different CSS files may be linked for each page of the content file, the number of CSS files that are actually managed is further increased. It is becoming difficult to manage such a large number of CSS files in an environment where the number of content display device types to be supported is increasing day by day and the Web page is updated daily.
  • the method of dynamically generating CSS requires complicated analysis processing of the content structure, which increases the processing load for outputting an accurate style each time the original content structure changes. turn into.
  • the diversification of terminal devices is rapidly progressing based on market principles, so there is an essential limit to responding only with fixed standards such as XSL.
  • a third method there is a method of operating a CSS file from a script (usually written in JavaScript (registered trademark) language) in a browser on the terminal device side.
  • a script usually written in JavaScript (registered trademark) language
  • this method there are many types of terminal devices that do not support the JavaScript language, and it is necessary to prepare a number of scripts equivalent to the number of device types x the number of pages.
  • the operation of CSS files in JavaScript language is complicated, it is difficult to test the operation of each device type, and it is difficult to create a processing program that analyzes HTML in JavaScript language There is a real problem.
  • a fourth method there is a method in which the user of the terminal device switches the CSS file to be applied using the CSS file user designation function provided by the browser. Even with this method, it is necessary to create an optimal CSS file for each terminal device type, and it is the same as the first method that a large number of CSS files must be created. There is a real problem that the user specification function of CSS file is not implemented.
  • Solves the conventional problems related to CSS file management, does not increase the number of managed items in proportion to the product value multiplied by the number of web pages, and does not require complex analysis of content (HTML and XHTML files)
  • the present invention provides a content providing apparatus and a computer program that enable optimal display of content on a wide variety of devices.
  • the present invention comprises a content conversion unit comprising a difference generation program, a first style sheet storage unit, a second style sheet storage unit, and a style sheet conversion rule storage unit, the first style sheet, the second style
  • Each of the sheet and the style sheet conversion rule is a content providing device including a key item and an attribute value
  • the difference generation program reads the style sheet in the first style sheet storage unit, Read the conversion rule, extract multiple items with key items that match the key items in the conversion rule from the first style sheet, and replace each attribute value of the extracted multiple items with the attribute value in the conversion rule Generate second style sheet, save second style sheet second style sheet
  • the present invention also includes a content conversion unit comprising a difference generation program, a first style sheet storage unit, a second style sheet storage unit, and a style sheet conversion rule storage unit.
  • the style sheet and the style sheet conversion rule are difference generation programs in the content display providing apparatus each consisting of a key item and an attribute value, and read out the style sheet in the first style sheet storage means, and in the conversion rule storage means
  • the conversion rule is read, multiple items having key items that match the key items in the conversion rule are extracted from the first style sheet, and the attribute values of the extracted multiple items are replaced with the attribute values in the conversion rule To generate a second style sheet and a second style sheet
  • a differential generation program characterized by storing the sheet storage unit.
  • the present invention when Internet content is displayed on a wide variety of terminal devices, it is possible to perform display that matches the characteristics of the screen size and input method of each device, and at the same time, the style by the content manager
  • the management load of the sheet file can be reduced, and the processing load for content file analysis by the server can be minimized.
  • 1 is an overall configuration diagram of an information system according to the present invention. It is an internal structure of the content provision means which is the main element of this invention. It is an example of the equipment group setting (component of FIG. 2) used by this invention. 3 is an example of a CSS conversion table (components in FIG. 2) used in the present invention. 3 is an outline of processing steps of a differential CSS generation program (component of FIG. 2) according to the present invention. It is a specific example of the processing result of the difference CSS generation program shown in FIG. It is an example of the processing result of the difference CSS application program (component of FIG. 2) which concerns on this invention. It is an example of the designation
  • FIG. 1 is an overall view of an environment in which an information system according to the present invention operates.
  • the content providing means (101) is means for distributing and browsing content created in HTML or XHTML to one or more content display terminal devices, and typically includes server hardware and Although it is composed of a group of programs that run on it, it is not limited to this. The internal structure of the content providing means will be described later.
  • the content display terminal device (102) is a hardware device provided with a content display means (typically a web browser), specifically a personal computer, a mobile phone, a smartphone, a tablet terminal, a game device, a car navigation system. Although it is an apparatus, digital signage, etc., it is not limited to these.
  • the network is a means for interconnecting the content providing means (101) and the content display terminal device (102), and is typically the Internet, but is not limited thereto.
  • FIG. 2 shows the internal structure of the content providing means (101).
  • the content providing means is mainly composed of three functional modules: a Web server program (201), a differential CSS generation program (202), and a differential CSS application program (203).
  • the Web server program (201) is a program having a function of distributing content to the content display terminal device (102) in accordance with general Internet standards such as HTTP, HTML, XHTML, and CSS. Since the Web server program (201) is common technical knowledge in today's Internet, its internal functions and operations will not be described in particular.
  • the differential CSS generation program (202) reads the default CSS file created by the system administrator, and uses the information set in the device group configuration storage means (206) and the CSS conversion table (207) by the content producer or content administrator. Therefore, it is a program that generates a differential CSS file. Detailed operation of the differential CSS generation program (202) will be described later.
  • the difference CSS application program (203) overrides (overwrites) part of the effect of style specification of the default CSS file by the difference CSS file generated by the difference CSS generation program (202), and the Web server program (201) This is a program for enabling content distribution in a style optimal for the terminal device type. Detailed operation of the differential CSS application program (203) will be described later.
  • a content storage unit (204) stores a content (typically a Web page described in HTML or XHTML) to be transmitted by the Web server program (201) to the content display terminal device (102), Or a database. Since the content storage means (204) is the common general technical knowledge in the Internet today, no further explanation will be given.
  • a content typically a Web page described in HTML or XHTML
  • the default CSS file storage means (205) is a file for storing a general-purpose CSS file created by the content creator or content manager, or a database. This CSS file should be described in CSS format, which is a widely used technical standard.
  • the default CSS file storage means (205) is an indispensable component even in a general Web server system and is a common technical knowledge of today, and will not be described further.
  • the device group setting storage means (206) is a data storage means such as a database or a file created by a content creator or content manager, and provides a function of grouping and managing a plurality of terminal device types having common characteristics. To do.
  • An example of the device group setting stored in the device group setting storage means (206) is shown in FIG.
  • the terminal ID is synonymous with a terminal identifier and represents a type (typically model name) unique to the terminal device.
  • the terminal conversion table (FIG. 3-a) associates a specific terminal device with one or more terminal groups.
  • the terminal conversion group table (FIG. 3-b) associates a terminal group with one device group.
  • a device group is a group of terminal devices having common characteristics.
  • a CSS property group is an attribute that represents a category of a device group.
  • the content manager normally performs settings so that they belong to the same device group in the CSS property group of the screen size.
  • One terminal device may belong to a plurality of device groups.
  • a terminal device having an identifier of T1 belongs to a device group called vga (related to the screen size) and a device group called “Morisawa” (related to the font).
  • the device group constitutes a rule to be followed when the differential CSS generation program (202) replaces the attribute value of the CSS file.
  • the CSS conversion table (207) is a table created by the content creator or content manager, and describes a rule when the differential CSS generation program (202) extracts and converts the differential CSS file from the default CSS file. Used for.
  • the CSS conversion table (207) is realized by a file on a server hardware, a database, or the like.
  • An example of the CSS conversion table (207) is shown in FIG.
  • the selector is a specification for selecting a target range to which a format (style) is applied, and includes, for example, a header and a normal paragraph.
  • a property is a specific attribute of a form (style), and a property value is a specific value of the attribute.
  • Selector and property are terms defined by the CSS standard, and it is desirable to specify in conformity with the CSS standard in the practice of the present invention.
  • the selector, property name, and property value constitute key items of the CSS conversion table (207).
  • Columns other than the key items in the CSS conversion table (207) are attribute values, and the attribute values after conversion applied in the processing by the differential CSS generation program (202) are shown for each device group. For example, regarding the setting in the first row of the CSS conversion table (207) in FIG. 4, the attribute value of the item of the default CSS file whose key item matches for the terminal device belonging to the device group A-2 is 8px. Indicates replacement with an attribute value.
  • the device group setting storage means (206) and the CSS conversion table (207) need not be implemented as physically different files or different databases.
  • the logical function disclosed in this specification that is, a logical structure that can provide a function as a database that can specify the item to be replaced and the attribute value after replacement in the CSS file using the terminal ID as a key, is It may be physically implemented as a single file or database, or any physical implementation may be employed.
  • FIG. 5 shows the steps of the process executed by the differential CSS generation program (203) and the outline of the input file and output file at each step. Note that the differential CSS generation program (203) exists only during the execution of the process among the files used in each processing step, that is, the system or the differential CSS generation program (203) itself deletes it after the process ends. The file is not shown in FIG.
  • the content display terminal device (102) sends a request for specific content (usually by an HTTP GET request or POST request) to the Web server program (201) in the content providing means (101).
  • the Web server program (201) passes the information to the differential CSS generation program (203).
  • the differential CSS generation program (203) identifies the default CSS file used by the content file requested by the content display terminal device (102) (FIG. 3-a).
  • the differential CSS generation program (203) can identify the default CSS file by referring to the link tag in the content file described in HTML according to the Internet standard.
  • the differential CSS generation program (203) refers to the CSS conversion table (207) and sequentially checks each item in the default CSS file identified in the processing of Fig. 3-a. Then, it is identified whether there is any item whose contents match the key item of the CSS conversion table (207).
  • One of the patterns. The order of matching may be such that the preceding one in the enumeration of the patterns has priority.
  • the differential CSS generation program (203) extracts only items that match the key items of the CSS conversion table (207) from the items of the default CSS file, and generates a conversion target CSS item file (temporary file).
  • the request sent from the content display terminal device (102) to the Web server program (201) is based on the Internet standard and the terminal type identifier (browser name, mobile phone model number, etc.). Including.
  • the differential CSS generation program (203) receives the identifier of the terminal type from the Web server program (201), and uses it as a key from the device group storage means (206) to one or more terminal groups corresponding to the terminal type
  • the ID, the device group name corresponding to each terminal group ID, and the CSS property group ID are read and written out as a device group setting (temporary file).
  • the difference CSS generation program (203) merges the device group setting (temporary file) read in the step of FIG. 5-c and the contents of the CSS conversion table (207) to create a CSS conversion table subset. (Temporary file) is generated.
  • the file corresponds to a file in which only rules related to the terminal type are extracted from the CSS conversion table (207).
  • the difference CSS generation program (203) performs conversion processing in the CSS conversion table subset (temporary file) for each item in the conversion target CSS item generated in the step of FIG. 5-b. Apply. Specifically, when the key item of the conversion target CSS item (temporary file) matches the key item of the CSS conversion table subset, the property value of the conversion target CSS item is replaced with the corresponding attribute value in the CSS conversion table subset. .
  • the corresponding attribute value is the attribute value stored in the CSS conversion table column corresponding to the combination of the CSS property group corresponding to the terminal group to which the terminal device belongs and the device group (which terminal group is a certain terminal device).
  • the differential CSS generation program (203) stores the differential CSS file obtained as a result in the differential CSS storage means (208) after completing the conversion processing of all the conversion target CSS items.
  • the differential CSS file stored by the differential CSS generation program (203) is read by the differential CSS application program (204) and the subsequent processing is performed (the processing will be described later).
  • FIG. 6A shows a default CSS file used in this description.
  • the differential CSS generation program (203) reads the default CSS file (FIG. 6A) from the top and searches for an item that matches the key item of the CSS conversion table shown in FIG.
  • the first line is the selector (p.article), indicating that the property (margin) matches the item with the property value (10px) (the item is to be converted) Yes.
  • the search process in the default CSS file simply compares the selectors with character strings, and if they match, further compares the property values with character strings.
  • the third row of the CSS conversion table in Fig. 4 also has no selector, so ignore the specification of the selector and search the default CSS file for a line that matches the property (font-size). (In this case, the property value is specified. So all lines in the default CSS file whose property is font-size will match).
  • search for the line with the property line-height in the selector (p.article) match if the property is line-height because there is no property value specified
  • the difference CSS generation program (203) rewrites the property value in the conversion target CSS item file according to the designation of the CSS conversion table (FIG. 4) according to the type of the terminal that has requested the content.
  • processing examples for three types of devices T1, T2, and T3 are shown.
  • the device group setting FIG.
  • the differential CSS generation program (203) does not perform rewriting processing on the font).
  • the property group whose CSS property group ID is A for the terminal device type belonging to device group 1, the attribute value stored in the column A-1 in the CSS conversion table (FIG. 4) is used. Perform replacement processing. The same processing is performed for other CSS property group IDs and device groups.
  • the differential CSS file generated by the differential CSS generation program (203) is shown in FIG.
  • Each of the above processes is a simple character string matching process and does not require complicated syntax analysis. Therefore, the processing load on the hardware is small, and the development burden on the device or program developer according to the present invention is small. small.
  • the difference CSS application program (204) applies the difference CSS file generated by the difference CSS generation program (203) and reflects it in the actual display on the terminal device.
  • the difference CSS application program (204) applies the difference CSS file generated by the difference CSS generation program (203) and reflects it in the actual display on the terminal device.
  • Each method will be described below.
  • the header portion of the default CSS file is designated as shown in FIG. 7A (this is the style designation of the default CSS file in FIG. 6A in the state where conversion processing is not performed).
  • the content is displayed based on the
  • the first method is a method of adding a reference (link) to the differential CSS file to the HTML file.
  • the differential CSS generation program (203) writes the name of the differential CSS file corresponding to the terminal type T1 as T1.css
  • the differential CSS application program (204) converts the content file, and FIG. The designation like b-1 is performed.
  • the file name to be assigned to the differential CSS file is a matter that the developer decides as a design choice (for example, the URL name and the time stamp at the time of file creation are added to the file name, eg www.foobar.jp .20110412134567.T1.css Or a unique file name like this).
  • the style setting of the CSS file specified at the back is applied in preference to the style setting of the CSS file specified at the front, so the display format corresponding to the terminal type that is the object of the present invention is realized. Is possible. Since all the changed parts of the style are collected in the differential CSS file, the processing load on the terminal device side is not increased by the multi-stage cascade processing.
  • the difference CSS application program (204) merges the default CSS file and the difference CSS file, creates a new CSS file, and specifies the created CSS file in the header part.
  • the content file may be rewritten as described above.
  • An example of the header portion of the content file rewritten by the differential CSS application program (204) by this method is shown in FIG.
  • the above merging process is simple and has advantages that it is easy to implement and the processing load on the server hardware is small compared to the conventional method of dynamically generating a CSS file from the beginning.
  • the second method is a method in which the differential CSS application program (204) inserts a CSS standard style element into the header portion of the HTML file.
  • a CSS standard style element is shown in FIG.
  • FIG. 1 An example of the header portion of the HTML file rewritten by the differential CSS application program (204) using this method is shown in FIG.
  • the style specification by the style element is applied with priority over the style specification by the linked external file, so that it is possible to realize the content display of the style suitable for the terminal type which is the object of the present invention.
  • FIG. 8 shows an example of a designation method for performing such processing.
  • Reference numeral 801 is an example of description instructing to change the property itself by specifying both the property and the value.
  • Reference numeral 802 is an example of description instructing to delete the property itself by describing DELETE, which is a reserved word. Other reserved words can be used as a design choice.
  • the third method is a method in which the differential CSS application program (204) searches a portion corresponding to the selector in the differential CSS file from the HTML file and designates a style attribute for each tag.
  • the style setting effect of the differential CSS file is applied in a way that overwrites the effect of the default CSS file, and the display of content according to the characteristics of the terminal device type that is the object of the present invention is standard.
  • Web server program (201) can be performed.
  • the interpretation process of the CSS file executed by the Web server program (201) is a well-known technique provided by any general Web server program today, and thus will not be described in particular.
  • the “default CSS file” is the most general-purpose CSS file created by the content creator.
  • the “difference CSS file” is a CSS file corresponding to a difference (difference) between a CSS file suitable for display in a terminal device type as a content display target and a default CSS file.
  • the “difference CSS generation program” (or “difference generation program”) is a program that generates a difference CSS file from a default CSS file according to information registered in a CSS conversion table and a conversion database by a content producer.
  • “Difference CSS application program” means that the style setting effect of the difference CSS file is reflected in the content display by merging the difference CSS file generated by the difference CSS generation program with the default CSS file.
  • Equipment group setting storage means is a data storage means such as a database or file that provides a function for grouping and managing a plurality of terminal device types having common characteristics. Created by a content creator or content manager To do.
  • the “CSS conversion table” is a table created by the content creator or content manager, and is stored as a database or a file. Used to describe extraction and conversion rules (key items and corresponding replacement property values for each terminal group) of the difference CSS file from the default CSS file.
  • the device group setting storage means and the CSS conversion table may be physically one file or database.
  • the CSS conversion table and the conversion database are collectively referred to as a style sheet conversion rule.
  • the key item is any of the selector, property, and property value in the above description, or a combination thereof, and the attribute value is synonymous with the property value.

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

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

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

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013509932A JPWO2012141183A1 (ja) 2011-04-15 2012-04-11 多様な端末機器に対応するコンテンツ提供装置
US13/979,758 US20140013211A1 (en) 2011-04-15 2012-04-11 Content providing apparatus compatible with various terminal devices

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011091593 2011-04-15
JP2011-091593 2011-04-15

Publications (1)

Publication Number Publication Date
WO2012141183A1 true WO2012141183A1 (ja) 2012-10-18

Family

ID=47009356

Family Applications (1)

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

Country Status (3)

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

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014191756A (ja) * 2013-03-28 2014-10-06 Fujitsu Ltd 表示変更プログラム、表示変更方法及び表示変更装置
JP2015088182A (ja) * 2014-09-17 2015-05-07 株式会社じぶん銀行 マルチデバイスに対応したシステムにおいて用いられる装置、その装置において実行される方法およびプログラム
JP2015146186A (ja) * 2015-02-13 2015-08-13 株式会社じぶん銀行 マルチデバイスに対応したシステムにおいて用いられる装置、その装置において実行される方法およびプログラム

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130305144A1 (en) * 2012-05-09 2013-11-14 Ni Group Limited Method of Publishing Digital Content
US20130305145A1 (en) * 2012-05-09 2013-11-14 Ni Group Limited A Method of Publishing Digital Content
US20140035945A1 (en) * 2012-08-03 2014-02-06 Todd Anglin Computing device applications with an automatically adapting user interface
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 에스케이플래닛 주식회사 광고 표시 시스템 및 그 방법, 그리고 이에 적용되는 장치
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 (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004151853A (ja) * 2002-10-29 2004-05-27 Keiichi Hayashida サーバ、プログラム、記録媒体
JP2004288096A (ja) * 2003-03-25 2004-10-14 Tokyo Bunkyudo:Kk 印刷システム
JP2005530241A (ja) * 2002-06-12 2005-10-06 オラクル・インターナショナル・コーポレイション 電子文書のスタイルを管理するための方法およびシステム

Family Cites Families (5)

* 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
EP1346294A2 (en) * 2000-12-18 2003-09-24 Kargo, Inc. A system and method for delivering content to mobile devices
US20020165881A1 (en) * 2001-03-15 2002-11-07 Imation Corp. Web page color accuracy using color-customized style sheets
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 (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005530241A (ja) * 2002-06-12 2005-10-06 オラクル・インターナショナル・コーポレイション 電子文書のスタイルを管理するための方法およびシステム
JP2004151853A (ja) * 2002-10-29 2004-05-27 Keiichi Hayashida サーバ、プログラム、記録媒体
JP2004288096A (ja) * 2003-03-25 2004-10-14 Tokyo Bunkyudo:Kk 印刷システム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014191756A (ja) * 2013-03-28 2014-10-06 Fujitsu Ltd 表示変更プログラム、表示変更方法及び表示変更装置
JP2015088182A (ja) * 2014-09-17 2015-05-07 株式会社じぶん銀行 マルチデバイスに対応したシステムにおいて用いられる装置、その装置において実行される方法およびプログラム
JP2015146186A (ja) * 2015-02-13 2015-08-13 株式会社じぶん銀行 マルチデバイスに対応したシステムにおいて用いられる装置、その装置において実行される方法およびプログラム

Also Published As

Publication number Publication date
JPWO2012141183A1 (ja) 2014-07-28
US20140013211A1 (en) 2014-01-09

Similar Documents

Publication Publication Date Title
WO2012141183A1 (ja) 多様な端末機器に対応するコンテンツ提供装置
US8667405B2 (en) Browser-based development tools and methods for developing the same
CN114035773B (zh) 一种基于配置的低代码开发表单方法、系统及装置
US9817811B2 (en) Web server system, dictionary system, dictionary call method, screen control display method, and demonstration application generation method
US20080028302A1 (en) Method and apparatus for incrementally updating a web page
JP2004005568A (ja) レガシー・アプリケーションの高速gui体裁更新
US20100299589A1 (en) Keyword display method and keyword display system
KR101569984B1 (ko) 웹 스크래핑 추출 데이터 설정 방법
WO2020215692A1 (zh) 页面生成方法、装置、终端及存储介质
US20090006471A1 (en) Exposing Specific Metadata in Digital Images
US10922059B2 (en) Integrating application features into a platform interface based on application metadata
JPWO2006051964A1 (ja) データ処理システム、データ処理方法、及び管理サーバ
JPWO2006051958A1 (ja) 情報配信システム
US20090083300A1 (en) Document processing device and document processing method
CN113268227A (zh) 一种零代码可视化的软件开发平台及开发方法
JP5136087B2 (ja) クライアント装置およびクライアント制御プログラム
US10242139B2 (en) Scheme and design markup language for interoperability of electronic design application tool and browser
CN111782213A (zh) 基于dom的动态控制页面生成系统
JP4723511B2 (ja) 文書処理装置及び文書処理方法
JPWO2006051966A1 (ja) 文書管理装置及び文書管理方法
JPWO2007105364A1 (ja) 文書処理装置及び文書処理方法
JP5858479B2 (ja) 端末装置及びプログラム
WO2010087071A1 (ja) ウェブサーバシステム及びプログラム
CN102193907A (zh) 一种基于b/s结构的文稿对比方法及系统
JP3843810B2 (ja) マルチテンプレート管理システムおよびマルチテンプレート管理プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12771589

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 13979758

Country of ref document: US

ENP Entry into the national phase

Ref document number: 2013509932

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12771589

Country of ref document: EP

Kind code of ref document: A1