An adaptive web page layout structure for small devices - Springer Link

2 downloads 648 Views 2MB Size Report
Oct 14, 2005 - Keywords Web browsing · Adaptive content delivery ·. Slicing tree · Mobile device · Layout optimization. This work was performed when the ...
Multimedia Systems (2005) 11(1): 34–44 DOI 10.1007/s00530-005-0188-1

R E G U L A R PA P E R

Xing Xie · Chong Wang · Li-Qun Chen · Wei-Ying Ma

An adaptive web page layout structure for small devices

Published online: 14 October 2005 c Springer-Verlag 2005 

Abstract The limited display size of current small Internet devices is becoming a serious obstacle to information access. In this paper, we introduce a Document REpresentation for Scalable Structures (DRESS) to help information providers make composite documents, typically web pages, scalable in both logic and layout structure to support effective information acquisition in heterogeneous environments. Through this novel document representation structure based on binary slicing trees, the document can dynamically adapt its presentation according to display sizes by maximizing the information throughput to users. We discuss the details of this structure with its key attributes. An automatic approach for generating this structure for existing web pages is also presented. A branch-and-bound algorithm and a capacity ratio-based slicing method are proposed to select proper content representation and aesthetic document layouts respectively. A set of user study experiments have been carried out and the results show that compared with the thumbnail-based approach, the DRESS-based interface can reduce browsing time by 23.5%. Keywords Web browsing · Adaptive content delivery · Slicing tree · Mobile device · Layout optimization

This work was performed when the second and the third authors were visiting students at Microsoft Research Asia. X. Xie (B) · W.-Y. Ma Microsoft Research Asia, 5F, Sigma Center, No. 49, Zhichun Road, Beijing 100080, P.R. China E-mail: {xingx, wyma}@microsoft.com C. Wang Department of Automation, Tsinghua University, Beijing 100084, P.R. China E-mail: [email protected] L.-Q. Chen Department of Automation, University of Science and Technology of China, Hefei 230027, P.R. China E-mail: [email protected]

1 Introduction Recently, we have seen an explosive growth of small Internet devices such as handheld computers, PocketPCs and SmartPhones that are used to leverage the capabilities of the web and provide users with more ubiquitous access to information than ever before. Since most of the information on the Internet today is presented in web documents, there has been an imperative need for efficient access to these web resources on these diverse-form-factor devices. Nevertheless, low bandwidth connections and small displays, the two serious obstacles to information access, have prevented those devices from becoming more helpful to people’s everyday lives. With the successful development of scalable video coding, progressive image coding as well as 2.5 G and 3 G wireless networks, the bandwidth condition is expected to be greatly improved in the near future. At the same time, however, the limitation on display size is more likely to remain unchanged for a certain period of time due to the mobility requirement of these devices and the slow progress of foldable display technology. Aiming at solving this problem, we introduce a Document REpresentation for Scalable Structures (DRESS) based on techniques rooted in computer aided design. When the display area shrinks, some parts of the web pages will be summarized and then presented, together with other unsummarized parts, adaptively to end users with aesthetic layouts. Our approach is compatible with current web document formats; therefore, it can be incrementally deployed on the Internet. The rest of this paper is organized as follows: In Sect. 2, we discuss the state of art. Section 3 presents the definition of the DRESS representation and its main attributes. An automatic approach for generating the DRESS representation for existing web pages is proposed in Sect. 4. This is followed by Sect. 5 which introduces the web page rendering algorithm. Then, in Sect. 6, we describe in detail the implementation of a DRESS-based web browser and present experimental results as well. Finally, Sect. 7 gives our conclusions.

An adaptive web page layout structure for small devices

2 Related work Many efforts have already addressed the problem of web browsing on small terminals and various solutions have been proposed including some commercial products. Current approaches can be divided into two directions: the first one is to transform existing web pages [2, 3, 5, 6, 8, 13, 16, 17, 21, 23], while the other attempts to introduce new formats and mechanisms [1, 4, 14, 15] that make web pages themselves adaptive to different display sizes. Along the first direction, there are also two different approaches for transforming web pages. The first one, which originated from the user interface community, only changes the presentation of page contents without any structural modification. For example, the most straightforward approach is eliminating the annoying horizontal scrolling requirement, i.e. present all the contents in a single narrow column, such as in [17]. Although fast and simple in its implementation, this method greatly increases the page height and forces the user to scroll up and down excessively. Other UI-based approaches try to use thumbnails or keywords as well as zooming techniques to aid browsing, such as in [3, 21]. However, this kind of aid tends to work only on the pages that the user is very familiar with, because thumbnails are often scaled down too much to give much information besides a rough overview. The other way to do web page transformation is to retrieve the semantic structure from the original contents and rewrite the page according to the user’s context. The basic idea is to partition the web page into a set of sub-pages and generate a table-of-contents with/without a hierarchy as the index page, such as in [2, 5]. Our previous work [6, 13, 23] belongs to this category. A promising direction is to combine these two techniques together to provide a better user experience; for example [8, 16], uses full-page thumbnails as the table-of-contents. Although many efforts have focused on automatic extraction of document architectures, it is still hard for computers to fully understand the semantic structure of web pages. Moreover, most of them do not address the layout problem, which is essential because the representation of contents directly affects the user’s perception. Therefore, instead of transforming existing web pages, researchers began to consider leveraging extra hints from the author’s direct help in the design phrase or from some external annotations from third parties. A straightforward approach is using XML and XSLT, which allows the semantic structure to be separated with presentations, such as in [14]. However, writing a separate style sheet for each type of device could be very labor intensive partly due to the great variability of some application parameters like window sizes. A more scalable approach for defining web presentations should be developed. In [15], instead of using multiple presentations, content adaptation is performed based on annotations of adaptation hints, but the layout problem of adapted results has not been addressed either. [1, 4] proposed a cascading style sheets (CSS) compatible mechanism which allowed web page designers or editors to designate layout

35

constraints explicitly in mathematical equalities or inequalities, and then converted the display problem into constraint solving. Although constraints for interactive graphical applications have been researched since the early 1980s, there are still a number of unsolved problems with constraint-based layout. For instance, it is difficult to specify proper mathematical formulas for different layouts. In addition, the constraint solving procedure is computationally expensive for client browsers. There are also some interesting solutions for specific problems such as [11, 12] for web newspaper layout and [10] for optimizing picture placement in a web page. We focus on the problem of defining a scalable and efficient web document representation structure that is adaptive to various display sizes. Here the display size does not need to be as same as the screen size. Actually, in practice each user can designate a preferred target display size different from the screen size. For instance, a Pocket PC user may specify the limitation of his/her display to a size of two screens with vertical scrolling only. He/she can even use a rotated display which may fit current web pages better. As we have noticed, few current approaches to web layout adaptation consider the priorities of different content blocks in a page. Moreover, none of them let the author control the final page layout conveniently. That is to say, the final presentation is usually unpredictable during the design phase. In this paper, we propose to leverage binary slicing trees, a data structure widely used in the computer aided design community [9] to represent a page template that can be controlled by the author. Based on this representation, we formulate the web layout problem as a variance of the 0–1 knapsack problem, which can be efficiently solved by a branch-and-bound algorithm or a greedy algorithm when the number of content blocks is large. A capacity ratio-based slicing method is then applied to select an aesthetic layout. Though we are mainly trying to define the scalable representation as authoring hints for web page adaptation, an automatic generation approach is also presented in this paper to deal with existing web pages.

3 Document representation for scalable structures In this section, we first give a formal definition of the DRESS, the basis of our web layout adaptation algorithm, and then describe this structure in detail. Definition 1 The DRESS for a web page is a binary slicing tree with N leaf nodes. Each inner node is labeled with either v or h denoting vertical or horizontal split, and each leaf node is an information block defined as follows: Bi = (IMPi , MPSi , MPH i , MPW i , ADJ i , ALT i )

(1)

where i = 1, 2, . . . , N , Bi , the ith information block in the web page; IMPi , importance value of Bi ; MPSi , minimal perceptible size of Bi ; MPHi , minimal perceptible height of Bi ; MPWi , minimal perceptible width of Bi ; ADJi , whether the aspect ratio of Bi is adjustable; ALTi , alternative of Bi .

36

X. Xie et al.

ceptible height (MPH), minimal perceptible width (MPW), adjustability (ADJ), and alternative (ALT). The following subsections introduce each of these attributes in detail.

h

A h

D B

F

3.2 Importance value

v

A

C B

v

E h

C

F (a)

D

E

(b)

Fig. 1 a An example of web page. b The corresponding slicing tree

3.1 Slicing tree structure As shown in Definition 1, DRESS is a slicing tree with each leaf node as an information block in the web page. The label on each inner node determines how the display area is recursively subdivided into sub-rectangles by slicing vertically (v) or horizontally (h). An information block will be placed in the sub-rectangle held by the leaf node. An example web page and its corresponding slicing tree are shown in Fig. 1a and b respectively. It comes from Google News (http://news.google.com/) and will also be used in the experiment section. Our definition of the slicing tree template does not address where to split, i.e., the ratio of each split, which is often referred to as the slicing number. In our approach, all the slicing numbers will be adjusted adaptively to the display size. Different from traditional CAD approaches, we assume this slicing tree structure remains constant during the whole adaptation process. This is reasonable since web authors usually do not want their contents to be randomly shuffled after adaptation. Therefore, only the slicing numbers need to be decided during page adaptation. Based on this assumption, we design an efficient top – down layout algorithm which will be discussed in Sect. 5.3.2. Another benefit of using slicing trees is that it usually reflects both the intended logical structure and layout structure of the author. Considering the process of designing a web page, especially a large one, the author usually follows a top – down approach. First, he/she divides the whole page into several large blocks that are logically independent, such as the header, footer, main topics in the body, and side bars. And then, the author fills each block with the desired contents as well as some decorations or separators to further divide the block into sub-blocks. Therefore, each block becomes a basic unit to deliver information and attract user attention, which we refer to as an information block (Bi ). We assign six attributes to each information block: importance value (IMP), minimal perceptible size (MPS), minimal per-

Since different blocks carry different amounts of information and have different functions, they are of different importance. Thus, we introduce importance value (IMP), a quantified value of author’s subjective evaluation on an information block as an indicator of the weight of each block in contribution to the whole page information. This value is used when choosing the less important blocks for summarization under small displays. For instance, we can set the footer block to be less important in a news web page. We normalize all the weights of information blocks in a single page so that their sum is 1. Although this value is primarily introduced for the page author to discriminate different contents, user preference may also make its contribution to the importance value when considering personalization [22]. For example, we may adjust the importance value to the user’s current focus like the mouse position. 3.3 Minimal perceptible size/height/width These attributes are mainly used in layout optimization. As for document rendering, we can apply many techniques to accommodate diverse target area sizes, such as zooming and scaling, wrapping, font size reduction, or margin cropping. Obviously, the information delivery of a block relies significantly on its area of presentation. If an information block is scaled down too much, it may not be perceptible enough to let users catch the information that authors intend to deliver. Therefore, we introduce minimal perceptible size (MPS), minimal perceptible height (MPH), and minimal perceptible width (MPW), to denote the minimal allowable spatial area, height, and width of an information block, respectively. They are used as thresholds to determine whether an information block should be shrunk or summarized when rendering the adapted view. For instance, consider an information block of a short news story whose original region size is 30,000 pixels. The author or publisher may define its MPS to be an area halfscaled, i.e., 7500 pixels, which is assumed to be the smallest resolution that maintains text readability. He/she can also set the MPH to the height of a 9-point character so that the text can be displayed correctly. Strictly speaking, MPS, MPH and MPW are dependent on the usage context, such as the user’s eyesight and his distance from the screen. For example, if a web page is shown on a TV set with set-top box installed, it should be tuned to be larger, since users usually operate it via a remote control. MPS also brings us an implication on how much content is in an information block. This has proved to be very useful in our layout algorithm.

An adaptive web page layout structure for small devices

37

3.4 Adjustability Adjustability (ADJ) denotes whether the aspect ratio of an information block is adjustable. For example, if the content block is a pure text block or a mixture of images and text, e.g., a news paragraph, it can be wrapped and adapted to fit into the aspect ratio of final display region. However, when the information block is a table-like navigation bar, or a large image, the aspect ratio is usually fixed. In this case, the value of ADJ should be set to false and we fix its aspect ratio to MPW/MPH. This attribute is used in the content accommodation step described in Sect. 5.3.3.

3.5 Alternative In regards to those information blocks of less importance such as decorations or advertisements, it is desirable to summarize them in order to save display space for more important blocks. Also when dealing with a block of large MPS which cannot be displayed without excessive shrinking due to the limited display size, a summary with a link to the original contents is preferable. Instead of deleting contents or showing an imperceptible adapted version, this alternative allows users to see the whole in parts and gives a much better solution to preserve contents, save display space, and aid user navigation as well. An alternative is usually a short text string that briefly describes the original content block. Its function is similar to the ALT attribute of the IMG tag in HTML. It should not be too large due to its function requirements.

4 Automatic generation of the DRESS representation Though here the slice tree template and other attributes are supposed to be written by the author in advance, they can be obtained automatically by certain web page analysis approaches. In this section, a set of algorithms will be introduced for creating the DRESS representation automatically. We do not expect the automatic generation results to be as precise as those authored ones, but at least they will provide a good starting point for the authors and it is a more convenient way to transform existing web pages. The basis of all these algorithms is the detection of information blocks within a web page. In our previous work [8], a page adaptation technique has been proposed to analyze the structure of a web page and split it into small and logically related units that fit into the screen of a mobile device. The page analysis algorithm consists of three steps. First, the HTML DOM tree is analyzed and the highlevel content blocks (e.g., header, footer, side bar and body) are detected. Then the content inside each high-level content block is analyzed to identify explicit separators to split the content blocks. Lastly, implicit separators are detected based on a projection algorithm and used to split the con-

Fig. 2 a The separator-searching algorithm. b Final slicing tree

tent blocks further. In this paper, we will leverage this algorithm to generate the information blocks. Afterwards, the slicing tree which organizes these information blocks and corresponding attributes will be calculated. 4.1 Slicing tree generation After performing the page splitting algorithm introduced in [8] to a web page, a set of information blocks will be extracted. They are handled as leaf nodes in the slicing tree structure. Based on the position of each information block, we use a separator-searching algorithm to build the other parts of the slicing tree. We use an example to illustrate this algorithm. Supposing a web page is split into four information blocks labeled 1, 2, 3 and 4, respectively. The positions of these blocks are shown in Fig. 2a. At first, a horizontal separator is found which divides the original page into two with block 1 on the top and the other blocks on the bottom. We generate an inner node in the slicing tree for this separator and it is labeled as h since it is a horizontal separator. The left child of this node will be block 1 and the right child of this node will be another inner node which stands for blocks 2, 3 and 4. The search process is recursively performed until all information blocks have been attached to the tree. As for the example in Fig. 2a, a vertical separator and another horizontal separator will be detected afterwards. The final slicing tree is shown in Fig. 2b. If the information blocks in a web page are overlapped with one another, such as popup images and menus, the separator-searching algorithm will not work properly. Therefore, we will pre-process the web page in order to remove all the overlapping blocks. Sometimes there will be more than one possible separator at a time. In this case, we will choose the one which is the nearest to the top left of the web page. Though this algorithm is recursive, its complexity is only linear with the number of information blocks. Supposing the

38

X. Xie et al.

total number of blocks is N, then the size of the binary slicing tree will be 2N − 1. In each step of the separator-searching algorithm, we will generate a new inner node in the tree. Therefore, the computational complexity will be only N −1, which is the number of inner nodes.

4.2 Importance value The importance of an information block in a web page may be decided by many factors, such as its content, its size or its position. For example, the location of an information block can indicate its importance value in most cases. This is because web authors usually want to place important blocks in a location that grabs more attention. Therefore, they will be placed in the most salient location, like the center of the first screen. In this paper, we leverage the block importance model presented in [19] to assign importance values to different blocks. The block importance model is defined as a function to map features to the importance of a page block, and is formalized as: block features → block importance

a text paragraph, respectively. Adjustability (ADJ) is decided by whether the information block contains any special HTML tags like , , or
. If these tags exist, the aspect ratio of this block is assumed to be not adjustable. Finally, we need to specify the alternative (ALT) for each information block. It can be obtained by computational information extraction or manual input from the author. In this paper, we will not go into the detail of text summarization algorithms. In our current implementation, if there are any header tags like

or

in the block, we will use the content in these tags as its ALT. Otherwise, we will use the beginning of the inner text to specify ALT.

5 DRESS-based document layout adaptation Based on the previously described DRESS, either defined by the author or automatically generated, the problem of web document layout adaptation can be better handled. In the following, we will discuss the concept of information fidelity and an algorithm to find the optimal web document layout under various constraints on display size.

(2)

As shown in Table 1, the importance is divided into three levels. For each block, the feature vector contains 10 spatial features and 9 content features, such as the position and size of blocks, length of text, number of hyperlinks, etc. Based on these features, learning algorithms have been used to train a model to assign importance values. Experimental results show that a Support Vector Machine (SVM) with a radial basis function (RBF) kernel can achieve the best performance with Micro-F1 79% and Micro-Accuracy 85.9%, which is quite close to that of a person. Detailed performance results can be found in [19]. After obtaining the importance values, we will normalize them so that their sum in a web page becomes 1.

4.3 Other attributes According to the definitions in Sect. 3, MPS, MPH and MPW will be calculated according to the total number of characters, height of one character, and the longest word within

5.1 Information fidelity Information fidelity introduced here is the perceptual ‘look and feel’ of a modified version of content object, a subjective comparison with the original version. The value of information fidelity ranges between 0 (lowest, all information lost) and 1 (highest, all information kept just as original). Information fidelity gives a quantitative evaluation of content representation. Hence, the optimal solution is to maximize the information fidelity which is delivered to the end user via an adapted representation. The information fidelity of an individual adapted block is decided by various parameters such as spatial region of display, content reduction of text, color depth or compression ratio of image. For a web page P consisting of several blocks, the resulting information fidelity is defined as a weighted sum of the information fidelity of all blocks in P. Straightforwardly, we can use the importance values from DRESS as the weights of contributions to the perceptual quality of the whole page. Thus, the information fidelity of an adapted result is described as

Table 1 Block importance levels

IF (P) = Level Description 3 2

1

The most prominent part of a page, such as headlines, main content, etc. Useful information, but not very relevant to the topic of a page, such as navigation, directory, etc.; or relevant information to the theme of a page, but not with prominent importance, such as related topics, topic index, etc. Noisy information such as ads, copyright, decoration, etc.



IMPi · IF Bi

(3)

Bi ∈P

This is used as the object function of our adaptation algorithm. In this paper, we assume that the IF value only depends on the version of content block, i.e., whether it is summarized or not. If a content block is replaced by its alternative, the IF value of this block is defined to be 0; otherwise it is 1.

An adaptive web page layout structure for small devices

39

5.2 Problem definition

Level 0

We introduce P as the set of unsummarized information blocks in a web page P, P  ⊂ P = {B1 , B2 , . . . , B N }. Thus, our mission is to find the block set P’ that carries the largest information fidelity while meeting the display constraints. In order to ensure that all the content blocks are possible to include in the final presentation, the following constraint should be satisfied.   size (ALT i ) + MPSi ≤ Area (4) Bi ∈P / 

where Area is the size of the target area and size (x) is a function which returns the size of display area needed by ALTi . If the constraint (4) is transformed to   size (ALT i ) (5) (MPSi − size (ALT i )) ≤ Area − Bi ∈P 

Bi ∈P

then the web layout optimization problem becomes: max 









IMPi · IF Bi  = max 

Bi ∈P

P

 Bi

(MPSi − size (ALT i )) ≤ Area −

Bi ∈P 

{B1}

Level 1

Level 2

{B1, B2}

{}

{B1}

{B2}

{}

Fig. 3 The binary tree used for selecting optimal block sets

Bi ∈P 



{}

 IMPi subject to

∈P 



(6) size (ALT i )

Bi ∈P

We can see that Eq. (6) is equivalent to the traditional NPcomplete 0-1 knapsack problem. Equation (5) also implies that the display size should not be too small; otherwise, we will not be able to find a valid layout even when all the blocks have been summarized. In this rare case, sub-tree summarization will become necessary. Since Eq. (4) does not ensure that the MPH or MPW will be satisfied, we solve the problem by a two-level approach. First we use a branch and bound algorithm to enumerate all possible block sets P , then for each block set, we use a capacity ratio-based slicing algorithm to test whether a valid layout can be found. By this process, we search among all possible block sets P to select the optimal one, i.e., the scheme that achieves the largest IF value while presenting an aesthetic view. 5.3 Page rendering algorithm Since problem (6) is NP-complete, it is very time-consuming to simply try possible solutions one by one. We design a branch-and-bound algorithm to select the block sets efficiently. 5.3.1 Block set selection As shown in Fig. 3, we build a binary tree for block set selection in which the root node is a null set  that implies all

the blocks are summarized and • Each node denotes a set of unsummarized blocks; • Each level presents the inclusion of an information block; • Each bifurcation means the choice of keeping the original contents or making summary of the block in the next level. Thus, the height of this tree is N, the total number of blocks inside the web page, and each leaf node in this tree corresponds a different possible block set P . For each node in the binary block tree, there is a limit on the IF value it can achieve among all of its sub-trees. Obviously, the lower limit is just the IF value currently achieved when none of the unchecked blocks can be added, that is, the sum of IF values of blocks included in the current configuration. And the upper limit is the addition of all IF values of those unchecked blocks after the current level, in other words, the sum of IF values of all blocks in the web page except those summarized before the current level. We perform a depth-first traversal on this tree according to following constraints: • Whenever the upper bound of a node is smaller than the best IF value currently achieved, the whole sub-tree of that node including itself will be truncated. • At the same time, for each node we check the area size constraint in Eq. (4) to verify its validity. If the constraint is broken, the node and its whole sub-tree will be truncated, because including a new block will increase the sum of MPS values. • If we arrive at a block set with an IF value larger than the current best IF value, we will check the feasibility of this solution by running the layout algorithm in Sect. 5.3.2. If this solution is feasible, we will replace the current best IF value by this one. By checking both the bound on possible IF value and the layout validity of each block set, the computation cost is greatly reduced. We also use some other techniques to reduce the time of traversal such as arranging all the blocks in decreasing order of their importance values at the beginning of the search, since in many cases only a few blocks contribute to the majority of the IF value.

40

X. Xie et al.

Some web pages contain a large number of information blocks, so even the branch and bound algorithm will be slow. In this case, we will use a greedy algorithm to generate a sub-optimal result instead of trying to get the optimal solution. The greedy algorithm simply tries to add the information blocks to the block set one by one in decreasing order of their importance. If one block cannot be added to the set, it will not be considered in the future. This approach has proven to be efficient in traditional knapsack problems. In our implementation, when the number of blocks is larger than 15, the greedy algorithm will be used to speed up the computation. 5.3.2 Capacity ratio-based slicing When checking the feasibility of a block set P , we try to find an aesthetic layout to put all content blocks and summarizations in the target area. The general problem of web layout optimization is similar to floor planning in VLSI design, which is known as a NP-hard problem. However, as mentioned before, because the slicing tree structure remains constant during our adaptation process, only the slicing numbers need to be decided. We use a capacity ratio-based slicing method to deal with this problem in two steps as shown in Fig. 4. First, we go through the slicing tree in a bottom-up manner to calculate the capacity, height and width constraints for each node. Then, the slicing numbers are computed top – down. The detailed procedure of the first step is shown in Fig. 5, where the capacity, minimal height and minimal width of each node stands for its display constraints. For a summarized block, it corresponds to the values of its alternative which can be calculated automatically from the summary text. The second step compares the capacities of two sub-trees of each inner node and lets the slicing number of that node be proportional to them. This leads to the name of our algorithm, capacity ratio-based slicing. We also perform some adjustments on the slicing numbers to meet the display constraints. Figure 6 presents the algorithm details. The complexity of this layout algorithm is O(N), since both steps can be performed in O(N) time. Therefore, our capacity ratio-based slicing algorithm is fast enough to check the layout feasibility of each possible block selection. An ex-

Fig. 4 Capacity ratio-based slicing algorithm

Fig. 5 The algorithm for calculating the capacity, height and width constraints of each node

ample is shown in Fig. 7. The MPS of the four content blocks in the page are 1000, 1000, 2500 and 2500, respectively. Suppose all of them are not summarized in the adaptation, the slicing number of the root will be: 1000/(1000 + 1000+

Fig. 6 The algorithm for assigning the final display rectangle to each node

An adaptive web page layout structure for small devices

41

Fig. 7 a An example web layout with MPS labeled. b The corresponding slicing tree with slicing number labeled

2500 + 2500) = 0.14. That is to say, if the screen is 600 in height, we should split the region horizontally at the height of 600 × 0.14 = 84. This procedure is executed recursively until all the slicing numbers are decided. However, if block 1 has set its MPH to 100, then we will split the display at the height of 100 instead in order to meet this requirement. 5.3.3 Content accommodation After layout optimization, each block, whether summarized or not, has been assigned a rectangle region for display. According to the slicing algorithm, the area size of the assigned region for each node will be larger than its MPS value. The height and width of the display region will also meet the requirements of each block. We use the ADJ attribute of each information block to aid the content accommodation process. If a block is indicated to be adjustable, we will fit it into the target rectangle by zooming and wrapping. Otherwise, we will only zoom the block while maintaining its aspect ratio. Other content adaptation techniques like attention model based image adaptation [7] can also be integrated into this step. When a user follows the link of an alternative, a technique similar to the fisheye view [18] is adopted to highlight the corresponding block. We redo the adaptation process with a new constraint that this block should not be summarized. However, if no such solution is found, the user will be navigated to a new page of the original contents which is displayed using the whole target area. Note if the block is oversized, scrolling is inevitable. Therefore, we suggest huge blocks be avoided in the web design.

6 DRESS-based web browsing on small terminals In order to study the performance of our approach, two user study experiments have been carried out. Experimental results are presented and discussed in this section. 6.1 Implementation of a DRESS browser We have implemented a prototype of DRESS-based web browser With DRESS and the page rendering algorithms,

Fig. 8 An example DRESS representation

the browser can dynamically select and summarize proper parts of web pages, then optimize the layout of the target area. We do not try to propose new web page formats since currently HTML has already been widely used on the Internet. In our prototype, the DRESS structure is stored as comments within the HTML files or style sheets. For example, the slicing tree structure of the web page in Fig. 1 is saved as a Polish expression “((A − (B|(C|(D − E)))) − F)” where “−” and “|” denote horizontal and vertical slicing, respectively. Other attributes of the DRESS are described in the same way as shown in Fig. 8. We allow users to designate the desired target display size in the prototype. When browsing a web page, our prototype first parses the DRESS information inside, and then generates a main result HTML file that exactly fits the target display. At the same time, those summarized block contents are saved in temporary HTML files which are accessible by following the links of alternatives. These intermediary data can be saved in memory instead of files if the adaptation is performed at client side. If there is no DRESS information found in the web page, the algorithm described in Sect. 4 will be applied to generate the DRESS representation. It is worth noticing that DRESS does not require additional modification on client devices. The transformation can be done at either the content server or intermediary proxies. For example, a DRESS-enabled proxy can detect whether a web page is in DRESS format and then transform it to non-DRESS pages according to the display size of client device. To illustrate our scheme, we use the same example page in Fig. 1 whose DRESS is manually defined as in Fig. 8. Figure 9 shows the comparison results on three typical screen sizes without scrolling. As shown in Fig. 9a, c and e, when using web thumbnails on Handheld PC (640 × 240), SmartPhone (128×160), and Pocket PC (240×320), almost all the contents are hardly recognizable because of excessive down-sampling. In contrast, our solutions in Fig. 9b, d and f provide a much better experience in both content reading

42

Fig. 9 The results of DRESS-based layout adaptation compared with thumbnail views

X. Xie et al.

and link navigation. For instance, in Fig. 9b and f, parts of the unimportant or oversized page contents are summarized while the remaining parts are still kept readable in the original version to deliver maximum information fidelity. If a user clicks the link on the left sidebar in Fig. 9f, a new layout is generated with the sidebar expanded as shown in Fig. 9g. In Fig. 9d, the target area is too small to accommodate any unsummarized information blocks, thus all blocks are presented in summaries as a table-of-contents while the original content will be displayed to the user after the links are clicked. Note in Fig. 9h the rotation factor, which is common among mobile devices, is taken into consideration and a better result is presented accordingly with the left navigation sidebar added. 6.2 Browsing performance We carried out a user study experiment to compare the DRESS-based approach with the widely studied thumbnail method. The thumbnail method is implemented based on the work in [8]. There were six participants. They were recruited from nearby universities and all of them were familiar with web browsing and mobile devices. Each user was asked to complete sixty web browsing tasks in the same order. All the tasks were based on some pre-selected web pages and one question was given for each task. For each question, the subject tried to find the answer as quickly as possible. The web pages were selected in order to include a variety of page layouts. The users were evenly divided into two groups. One group used the DRESS-based interface first and then the thumbnail-based interface. The other group used the thumbnail-based interface first and then the DRESS-based interface. For each interface, they browsed half of the web pages. The display size was set to 240 × 320. In order to reduce any performance influence due to familiarity and experience, the subjects were first asked to try both interfaces using two sample tasks for a sufficient amount of time. All the page navigations and corresponding timestamps were recorded for later analysis. The average browsing times for each subject are shown in Fig. 10. As we expected, the DRESS-based interface was better than the thumbnail-based interface, though different people tended to devote different amounts of efforts in finishing the tasks. On average, the DRESS-based interface can reduce browsing time by 23.5%. We hope that the performance can be further improved if the DRESS structures were manually edited. The subjects said that by using DRESS, they could still read something without losing context information on small devices, while the thumbnail-based interface transformed the whole page into a small image. It is also reported that the automatically generated summaries in DRESS is not very satisfactory, so we plan to improve it in the future. An experiment was also conducted to test the efficiency of our algorithm by logging the computational time costs

43

Average browsing time(second)

An adaptive web page layout structure for small devices

70

DRESS

60

Thumbnail

50 40 30 20 10 0 1

2

3

4

5

6

Subjects

Fig. 10 The average browsing time for the two interfaces

while making 10 layout adaptations for each web page. Our test bed was a Dell Optiplex GX 270 using a 2.8 GHz Pentium 4 processor, 512 MB of RAM, and Windows XP Professional system. In the test, we got an average DRESS generation cost of 27.5 milliseconds and an average DRESS rendering cost of 35.2 µs. The result shows that without code optimization our algorithm is already fast enough to be used in real-time web browsing systems on either web servers or proxy servers, or even on client devices.

6.3 Authoring performance Though the DRESS representation can be automatically generated, it is difficult to achieve satisfactory results due to the complexity of web pages. As shown in Fig. 11, we provide an authoring tool in the DRESS browser to let users edit the automatic results. There are two modes in the DRESS browser, one is the browsing mode and the other is the authoring mode. In the authoring mode, the user can click on any block and a dialogue will popup for editing the properties of that block. Another user study was carried out to test the authoring performance. Similar to the previous experiment, forty web pages were selected as the test data. Three subjects took part in this study. First, the web pages were transformed to the DRESS format using our automatic generation algorithm and then the subjects were asked whether they were satisfied with the

Fig. 11 The authoring interface for DRESS

44

X. Xie et al.

Table 2 The performance for editing DRESS representations Average time for adjusting structure (s)

Satisfied with summary (%)

Average time for adjusting summary (s)

Subjects

Satisfied with structure (%)

1 2 3

80.0 87.5 85

116.0 150.6 125.3

37.5 47.5 30.0

226.3 238.8 189.6

generated structures and summaries. If they were not satisfied with either structure or summary, they could use the authoring tool to revise the DRESS representation. All the subjects were taught to use the authoring tool for a sufficient amount of time before the experiment. The experimental results are shown in Table 2. We can see that users were more satisfied with the generated structures than the summaries. For those unsatisfactory structures, the subjects spent less than three minutes on adjusting the parameters. One of the subjects suggested that the editing procedure could be more convenient if the parameters could be edited using some visual tools. For summaries, only 38.3% of the results were satisfactory. It also cost a bit more time to revise the summary texts. In our future work, we will consider using more advanced text summarization techniques to improve the performance of the summary generation module. In general, the subjects thought that it was quite easy to understand the usage of the authoring interface. Typically, it took a few minutes to refine the DRESS representations when they are not satisfactory. 7 Conclusions In this paper, we proposed a Document REpresentation for Scalable Structures (DRESS) to help information providers make composite documents, typically web pages, scalable to display size in both logic and layout structure. By integrating techniques from computer aided design, DRESS allows easy negotiation between author and viewer, hides layout manipulation from the author but still keeps the result structure predictable, and represents contents in dynamic layouts to fit various user preferred display sizes. An automatic method for creating DRESS representations has also been discussed in the paper. Experimental results show that the DRESSbased interface is better than the thumbnail-based interface and the DRESS representation can be easily authored. Acknowledgements We would like to express our special appreciation to Xin Fan, Xiaodong Gu, Yu Chen, and Steve Lin for their insightful suggestions.

References 1. Badros, G., Borning, A., Marriott, K., Stuckey, P.: Constraint cascading style sheets for the web. In: Proceedings of UIST’99, pp. 73–82. Asheville, USA (1999)

2. BickMore, T.W., Schilit, B.N.: Digestor: device-independent access to the world wide web. In: Proceedings of WWW’97, pp. 655–663. Santa Clara, USA (1997) 3. Björk, S., Holmquist, L.E., Redström, J., Bretan, I., Danielsson, R., Karlgren, J., Franzén, K.: WEST: A Web Browser for Small Terminals. In: Proceedings of UIST’99, pp. 187–196. Asheville, USA (1999) 4. Borning, A., Lin, R.K., Marriott, K.: Constraint-based document layout for the web. ACM Multimedia Syst. J. 8(3), 177–189 (2000) 5. Buyukkokten, O., Garcia-Molina, H., Paepcke, A., Winograd, T.: Power browser: efficient web browsing for PDAs. In: Proceedings of CHI’00, pp. 430–437. Hague, Netherlands (2000) 6. Chen, J.L., Zhou, B.Y., Shi, J., Zhang, H.J., Wu, Q.F.: Functionbased Object Model towards Website Adaptation. In: Proceedings of WWW’01, pp. 587–596. Hong Kong, China (2001) 7. Chen, L.Q., Xie, X., Fan, X., Ma. W.Y., Zhang, H.J., Zhou, H.Q.: A visual attention model for adapting images on small displays. ACM Multimedia Syst. J. 9(4), 353–364 (2003) 8. Chen, Y., Ma, W.Y., Zhang, H.J.: Detecting web page structure for adaptive viewing on small form factor devices. In: Proceedings of WWW’03. Budapest, Hungary (2003) 9. Cohoon, J.P., Paris, W.D.: Genetic placement. IEEE Trans. Comput. Aided Design (6), 956–964 (1987) 10. Fuchs, M.: An evolutionary approach to support web page design. In: Proceedings of 2000 Congress on Evolutionary Computation, pp. 1312–1319. Piscataway, USA (2000) 11. González, J., Rojas, I., Pomares, H., Salmerón, M., Prieto, A., Merelo, J.J.: Optimization of web newspaper layout in real time. Comput. Netw. 36(2–3), 311–321 (2001) 12. González, J., Rojas, I., Pomares, H., Salmerón, M., Merelo, J.J.: Web newspaper layout optimization using simulated annealing. IEEE Trans. Syst., Man, Cybernet. – Part B: Cybernet. 32(5), 686– 691 (2002) 13. Gu, X.D., Chen, J.L., Ma, W.Y., Chen, G.L.: Visual based content understanding towards web adaptation. In: Proceedings of 2nd International Conference on Adaptive Hypermedia and Adaptive Web Based Systems, pp. 164–173. Malaga, Spain (2002) 14. Han, R., Perret, V., Naghshineh, M.: WebSplitter: A unified XML framework for multi-device collaborative web browsing. In: Proceedings of CSCW’00, pp. 221–230. Philadelphia, USA (2000) 15. Hori, M., Kondoh, G., Ono, K., Hirose, S., Singhal, S.: Annotation-based web content transcoding. Comput. Netw. 33(1–6), 197–211 (2000) 16. Milic-Frayling, N., Sommerer, R.: SmartView: flexible viewing of web page contents. In: Proceedings of WWW’02. Honolulu, USA (2002) 17. Opera Small Screen Rendering. http://www.opera.com/products/ smartphone/smallscreen/ 18. Sarkar, M., Brown, M.H.: Graphical Fisheye views. Commun. ACM 37(12), 73–84 (1994) 19. Song, R., Liu, H., Wen, J.R., Ma, W.Y.: Learning block importance models for web pages. In: Proceedings of WWW’04. New York, USA (2004) 20. Suhit, G., Gail, K., David, N., Peter, G.: DOM-based content extraction of HTML documents. In: Proceedings of WWW’03. Budapest, Hungary (2003) 21. Wobbrock, J.O., Forlizzi, J., Hudson, S.E., Myers, B.A.: WebThumb: interaction techniques for small-screen browsers. In: Proceedings of UIST’02, pp. 205–208. Paris, France (2002) 22. Xie, X., Zeng, H.J., Ma, W.Y.: Enabling personalization services on the edge. In: Proceedings of ACM Multimedia 2002. Juan-lespins, France (2002) 23. Yang, Y.D., Zhang, H.J.: HTML page analysis based on visual cues. In: Proceedings of ICDAR’01. Seattle, USA (2001)

Suggest Documents