Towards generic layouts for multi-channel publishing: "XF-extensibleformatting"
XML (Extensible Markup Language) has become the lingua franca for information integration, e-Business and metadata. It is also invading to office documents and hence becoming the format for organizational and end-user documents. XML documents themselves do not contain information about styling, i.e., how they should be rendered for print, screen, or other channels of publication. One document type may need numerous styling definitions as CSS (Cascading Style Sheets) or XSL (Extensible Stylesheet Language) stylesheets for differing multi-channel publishing purposes. Producing style definitions with differing styling languages may be quite tricky for end-users. The management of a myriad of formatting definitions may pose challenges for organizations as well. Tools for defining CSS style definitions are available but the support for differing versions of CSS on different end-user devices may be varying. Use of XSL requires programming skills or applications providing graphical user interfaces for XSL. Although there are a few commercial products available for producing XSL from easy-to-use graphical interface, there is a need for tools allowing generic styling for XML documents to be defined. The generic styling may support multiple differing formatting outputs. This paper presents a possible solution for XML document formatting. XF (Extensible Formatting language) is a generic high-level formatting language serving as a mediator for contemporary, powerful formatting languages such as CSS and XSL. A prototype implementation of XF with an easyto-use visual interface is also described. XF is based on XML and bridges the gap between end-users and existing powerful formatting languages. 165 XML [Br04] has become widely used for data processing and exchange, especially on the Web. One of the premises of XML technologies is universal interoperability and independency from operating systems and software-producers' proprietary formats such as versions of Microsoft Word. Each XML document may be formatted for the purpose of specific user device such as a PDA, a web browser, or a printer. The styling properties may be attached to the document at the advent of âpublicationâ, for example, when a user opens a document on her or his web browser or by formatting groups of documents for static delivery as a part of publication process. Separation of content and styling is a relief for document maintenance; it relieves the publishers from the pain of manipulating the documents with embedded styling features one by one. Yet defining styling instructions for XML documents may become a stumbling block for organizations and end-users. Formatting languages or applications are either difficult to use or do not really support the production of multiple style formats, or both. In the worst case distributing data in multiple formats means defining, or even programming, multiple style sheets separately for each of the organization's document types. As time goes by the management of differing versions of style sheets may become an issue to be dealt with, too. The most popular contemporary formatting languages are CSS [Cascading Style Sheets; Bo98] for HTML and XML documents and XSL [Extensible Stylesheet Language; Ad01] for XML documents, both by the World Wide Web Consortium (W3C) [Wo06]. In CSS and XSL the formatting properties are based on the form of the result. CSS is designed for Web display while XSL has a strong support for printed pages. XSL is much more powerful and complex language than CSS, demanding programming skills, hence making it difficult to adopt and use without specific software tools. XSL has the potential to become the standard style language for XML documents, yet the support for XSL in browsers is still rare. It is also too difficult for an ordinary user to write XSL scripts manually. CSS has its own syntax consisting of selectors and style properties while XSL style sheet is an XML document itself and adopts a specific vocabulary for defining page-oriented as well as other formatting properties. Research on style languages and style systems for structured documents such as XML has so far focused on multimedia documents [BR02, Vi01, KST04, QV04, Si04, Bu05]. Also solutions for more flexible Web displays [KL01, AMP04] and multiple layouts for one document have been studied. XML editors [PVQ01, Ya04, Va05, GNB03] or form editing tools [HV04] have not been able to tackle with the problems related to styling in multi-channel publishing. Main stream of XML research has focused on transformations or utilization of XML on a large scale while the research focused solely on the styling of XML documents has been quite scarce. Proposed solutions for multi-channel publication and styling have hence remained modest by their number. Munson [Mu95, MM98] has developed a style language called PSL, and Richy [Ri98] has considered generic style sheets. Yet there is a need for a lightweight front-end language that supports truly multiple outputs and provides an easy-to-use graphical user interface (GUI) for endusers. Some efficient commercial applications realize, at least partly, the problem of 166 multi-channel publishing [Al05, Re06, An06, St06, Ar06] but being complete publishing solutions they are extensive and suffer from quite complicated UIs. Defining the formatting for a class of XML documents for some specific target formats is possible with several languages and applications. However, the number of style definitions and their versions to be managed may become high by time. There is a need for an easy-to-use generic formatting language defining a generic layout for a class of XML documents independently from the resulting style specification syntax and version. Such a language would act as a mediator between the user interface and the specific style definitions created in the formatting task. The generic formatting language and an application for using it may therefore allow a sort of plug-in approach for generating a number of result formats from the easy-to-use interface. The XSL language is a powerful styling language and there is no reason to try to override it or other practical styling languages. Yet an easy-to-use interface for XSL and other style definitions would be convenient for end-users. A generic styling along with user-friendly interface may also save time spent on the style definition tasks. We can imagine this kind of need with an organization that wants to have a generic layout in all documents that are produced; documents on intranet and Internet, paper printout documents, letters, et cetera. In this situation, the XML data has to be formatted with several style sheets, depending on the form of result. It would be advantageous if the generic layout could be defined with a single style sheet. This paper contributes by describing the features and the syntax of an XML-based generic formatting language called XF-Extensible Formatting. A prototype application developed for utilizing XF via graphical user interface for generic formatting is also described. XF utilizes XML as its syntax hence making use of XML technology and contemporary formatting solutions rather than ignoring them. The rest of the paper is organized as follows. Section 2 outlines the requirements and properties for a generic formatting language and introduces the Extensible Formatting language XF. Section 3 describes the phases of the styling process and the XF prototype architecture. Section 4 illustrates the prototype interface for XF and provides an example of XF use-case. Section 5 concludes the paper. 2 XF-Extensible Formatting Language The XF language was developed by using an explorative prototyping approach. After the requirements for a generic formatting language were defined, the schema for XF styling was developed. The XF prototype was developed side by side with gradual experiments on the XF language. This section outlines the requirements for generic styling language and describes the properties of XF language. 167 A generic description language for formatting data to multiple result formats has to have formatting objects suitable for every result form, independently of the nature of the resulting output style definition format. The requirements for multi-channel publication are varying: one should take page properties into account for paper print, it is commonly known that font face for Web text needs to be different from that for print, and that differing output devices such as PDAs and computer screens vary a lot on their capabilities on rendering and positioning textual and multimedia objects. Regardless of diverse requirements a number of generic styling features that are common to most forms of styling output results may be identified. The common formatting features for XF were extracted from the most commonly used style definition formats CSS and XSL. The layout features and properties were also studied by inspecting the layout of paper prints and Web screens. The common formatting features identified as required formatting properties were: classification, position, alignment, table, background, border, font, and page.
Full Text: PDF