Developer Home Contents Search Feedback Support Intel(r)

Application Note

Digital Content Channels

Previous Section | Next Section
Table of Contents

Appendix C - Client User Interfaces and Internet Browsers

Client-Side User Interface

A client is the requesting program or the user in a client/server relationship. For example, the user of a Web browser is effectively making client requests for pages from Web servers. Client user interfaces (CUIs) are extremely important, because they provide the point at which the user accesses data and interacts within the application. In the world of channel architecture, a few characteristics define a CUI:

· Full screen

· User customizable and manageable

· Seamless integration of push technologies and data delivery notification mechanisms

A full-screen UI allows the user to view active channel content from the selected channel. This provides a richer user experience, in that the delivered content does not compete with other content available on the PC. A full-screen UI also allows you to remove other brand names from the experience. In the past, when users accessed the Web, they probably used an off-the-shelf Web browser. This browser would typically be branded with the commercial software provider’s name and brand, which may detract from the value of the channel.

User customization and manageability go beyond the client interface. The user should be allowed to dictate the manner in which data is delivered and stored on the client PC. The CUI should provide an appropriate way to perform this function.

As new channel content is delivered to the client PC, the user needs to be notified of its arrival, especially if it is time sensitive. For example, if your channel has an e-commerce feature and you push notification of an item going on sale for only 12 hours, you want to get the user’s attention as soon as possible. Several issues need to be addressed in this case. First, you don’t know what the user will be doing when the update is received. Therefore, your notification mechanism must be passive so that it doesn’t interrupt the user’s current activity. Two examples of some unobtrusive notification mechanisms are a scrolling marquee text field across the top or bottom of the screen, or flashing icons in the System Tray of the Windows 95 Taskbar.

Several commercial products and technologies offer CUIs that adhere to the channel architecture. Microsoft’s Internet Explorer* and Netscape Communicator* 4.0 are the two major browsers that provide a user interface for the development of Internet applications. A wide variety of tools, plug-ins and controls can be used to create compelling channel applications based around the two browser solutions. In addition, Macromedia Director provides a tool for creating channels.

Macromedia Director*

Macromedia’s Director* is an authoring tool for multimedia projects. Director provides the experienced user the ability to integrate several media assets into a common user interface. The end result with your project is an interactive movie that is played back on the PC.

Cast Members and Sprites

Director refers to the elements of your project as Cast Members – everything you see or hear is considered a cast member. This includes all text, bitmaps, sounds, buttons, digital videos, etc.

Sprites are objects that represent how cast members appear in your script. Your Director project essentially defines the appearance and characteristics of sprites.

Director Xtras*

Xtras are software components that extend the functionality of Director. As your movie needs to access Internet or play rich media assets that are not natively supported by Director you can use an Xtra that has been developed to facilitate that function. Third-party developers who want to exploit special features and options typically supply Xtras.

Shockwave*

Macromedia has developed several media players that work in conjunction with their different development environments. These players are referred to as Shockwave players. These players must be installed on the client to enable the features within the content.

Netscape Communicator 4.0*

Netscape Communicator 4.0* is one of the most popular browsers on the Internet. The release of 4.0 has incorporated dynamic HTML as well as Netscape’s Netcaster for delivering channels to the desktop. Dynamic HTML in Netscape contains style sheets for formatting Web pages, downloadable fonts and HTML object positioning. With scripting, the Web developer has more control over the presentation of Web pages, including adding special effects and animation. Channels are implemented using Netcaster, which uses Marimba’s Castanet to deliver Web pages and application updates to the user.

Netcaster

Netscape Netcaster* is a component of Netscape Communicator* 4.0 that fits into the channel architecture. Netcaster provides the ability to define channels that include features such as scheduling updates, locally cached content and personalized content. "Netcasting" is the process of pushing channel content onto your PC—making it available for the CUI. Netcaster works with standard Web servers to deliver the push content to the CUI. Extended support has been implemented to integrate the Marimba Castanet Tuner* to provide a dedicated push server.

Webtops

Netcasting is combined with another technology called Webtops. Webtops are intended to be cross-platform and run on a variety of operating systems. Webtops are HTML-based interfaces that can be anchored to your desktop and allow content to be displayed based on the user’s preferences. Webtops can be displayed full screen and provide branded CUIs. They can provide smaller, windowed interfaces on the desktop for providing real-time information or announcements. Webtops allow the developer to create a customized user interface for displaying content on the Internet.

Channel Finder

The Netscape Channel Finder is the remote control that allows channels to be added, removed and configured. Netscape provides a central location for subscribing to channels online.

Marimba Castanet

Marimba Castanet* provides the push solution for Netscape’s Netcaster. Castanet is able to deliver Web pages or applications over the Internet and keep them updated on the user’s machine. Castanet can deliver updates efficiently, since only incremental changes are sent when updating an application. Castanet can deliver customizable content based on user feedback or preferences.

Microsoft Internet Explorer

Microsoft Internet Explorer* provides several new features that are useful for developing channels. They include dynamic HTML, active channels and the Channel Definition Format (CDF). Internet Explorer was used to help develop the theater application as an example of using these features in the simple development of a channel.

Active Channels

Active channels provide the ability to subscribe to a number of channels written for Internet Explorer. Users can set their preferences based on what channels they want to subscribe to, the time for downloading and the priority of the channel. Active channels manage favorite sites and channel subscriptions using smart pull.

Web Casting

Web casting in Internet Explorer allows users to subscribe to channels and automatically download Web pages. Downloads can be scheduled periodically at off hours. Content delivered from these sites can be customized using CDF files. These downloaded Web sites can be browsed off-line

CDF provides the framework for describing Web content to be delivered to the desktop. The CDF file defines the content to be delivered to the end user, how often it is updated and when the content is outdated. Several tools, including Microsoft FrontPage97*, are available to help define and manage the creation of channels.

XML – Extensible markup language

Our mention of CDF warrants a discussion about XML (Extensible Markup Language). CDF is a markup language derived from XML.

XML is designed to develop and extend new markup in a standard way. XML is designed to specify precise rules for how XML markup is formed so development tools and browsers will already know how to parse it. HTML is all about what content looks like, and XML is about describing the content so it can be manipulated online.

A typical XML document will consist of a prolog and content marked up with user defined tags (formed using XML rules). The prolog specifies the vocabulary (valid tags) and the grammar (hierarchical structure) of the XML tags in the document. The content is then marked up with the tags as you would do with HTML tags.

An XML parser could then use the tag specification and rules in the prolog to extract content from the document and do with it what it wishes.

CDF is a new XML vocabulary which Internet Explorer knows how to parse. IE takes the information in a CDF document and creates a client side channel.

Dynamic Hypertext Markup Language (DHTML)

Dynamic HTML is a newcomer to the channel architecture arena. A standard is currently being developed by the World Wide Web Consortium (W3C), and it is hoped that HTML 4.0 will contain formal specifications for this language.

The features that constitute dynamic HTML are included in Netscape Communicator* 4.0 and by Microsoft’s browser, Internet Explorer*. However, each company has included a different implementation of dynamic HTML—the two browsers do not support a common feature set. Content developers will have to write different Web pages to support the lack of industry standards. Both Netscape and Microsoft have submitted their versions as proposals to W3C.

DHTML Concepts and Features

DHTML is a version of HTML that allows a Web page to change itself in place without a round-trip request to a Web server. This technology significantly decreases the time users have to wait for Web pages to be requested from the server and loaded on the client. Static HTML requires a server request to scroll through a list of items, but DHTML can control the entire process from the client machine.

DHTML provides an object-oriented view of a Web page and its elements, such as cascading style sheets and the layering of content, scripting or programming that can address all or most page elements and dynamic fonts.

Different Companies…Different Implementations

Microsoft and Netscape have chosen different implementations of Dynamic HTML. This has caused some confusion within the industry as the implementations have both commonalties and differences.

The features of DHTML that are supported by both Microsoft and Netscape include Object-Oriented Modeling, Cascading Style Sheets, Scripting Languages and Event Models.

An Object-Oriented View of Page Elements

Each page element (division or section, heading, paragraph, image, list and so forth) is viewed as a hierarchy of objects/elements. For example, each heading on a page can be named, given attributes of text style and color, and addressed by name in a small program or "script" included on the page. This heading or any other element on the page can be changed as the result of a specified event: a mouse passing over or being clicked, time elapsing, or "dragging and dropping" the image object with the mouse. (These event possibilities can be viewed as the reaction capabilities of the element or object.) Any change takes place immediately since all variations of all elements or objects have been sent as part of the same page from the Web server that sent the page. Thus, variations can be thought of as different properties of the object.

Not only can element variations change text wording or color, but also everything contained within a heading object can be replaced with new content that includes different or additional HTML as well as different text. Microsoft calls this "Text Range technology."

Style Sheets and Layering

A style sheet describes the default style characteristics (including the page layout and font type style and size for text elements such as headings and body text) of a document or portion of a document. For Web pages, a style sheet also describes the default background color or image, hypertext link colors and possibly the content of the page. Style sheets help ensure consistency across all or a group of pages in a document or a Web site.

Dynamic HTML includes the capability to specify style sheets in a "cascading" fashion (that is, linking to or specifying different style sheets or style statements with predefined levels of precedence within the same or a set of related pages). As the result of user interaction, a new style sheet can be made applicable and result in a change of appearance of the Web page. You may have multiple layers of style sheets within a page, a style sheet within a style sheet within a style sheet, etc. A new style sheet may only vary one element from the style sheet above it.

Layering is the use of alternate style sheets or other approaches to vary the content of a page by providing content layers that can overlay (and replace or superimpose on) existing content sections. Layers can be programmed to appear as part of a timed presentation or as the result of user interaction. In Internet Explorer* 4.0, Microsoft implements layers through style sheets. Netscape supports the style sheet approach but also offers a new HTML <LAYER>...</LAYER> tag set (Microsoft does not support this tag set). The W3C Working Committee is considering both approaches, and both companies will reportedly support what W3C determines is the recommended approach.

Scripting or Programming

Although JavaScript*, Java* applets, and ActiveX* controls were present in previous levels of Web pages, dynamic HTML implies an increased amount of programming in Web pages, since more elements of a page can be addressed by a script or a program.

Microsoft’s DHTML Subset

Microsoft has added a few features to its implementation of DHTML. These include several multimedia effects (Full-Screen Mode, Active Desktop and Dynamic Postitioning), Data Binding and Scriplets.

Full-Screen Mode

The Web browser can be viewed in full-screen mode. Branding can be applied to the Web page to provide a custom look and feel, including navigation buttons. Channels can be created that eliminate the browser interface and can prevent the user from easily exiting the channel. Links and the interface can be controlled to keep the user restricted to navigating within the application.

Active Desktop

Custom interfaces can be designed as well as active desktop components that can be used to broadcast announcements, live concert information, advertising specials or news items. These components could consist of Web pages or Java applets that provide a desktop notification mechanism for announcing new channel content or live events.

Dynamic Positioning

Objects such as graphics and text can be positioned anywhere on a Web page using absolute or relative positioning. Z ordering allows for objects to be overlaid so they can be layered within a Web page. Objects can also be moved to create animations within a Web page, with text and graphics flying all over the page.

Data Binding – Can be used at run time to create simple client-side databases of information that can be retrieved locally from the client instead of the server.

Dynamic Content – Content can be dynamically changed on the fly. Objects can be made invisible, or text and graphics can be changed based on client-side scripts.

Dynamic Fonts

Netscape includes dynamic fonts as part of dynamic HTML. This feature of Netscape’s Navigator* browser in its Communicator* suite lets Web page designers include font files containing specific font styles, sizes, and colors as part of a Web page and to have the fonts downloaded with the page. The font choice is no longer dependent on what the browser provides.

 

 

*Other brands and names are the property of their respective owners.

© 1997 Intel Corporation. All rights reserved.


* Legal Information © 1998 Intel Corporation