Towards a Generic XML Content Presentation Model Michael Pediaditakis (mp49@kent.ac.uk) David Shrimpton (dhs@kent.ac.uk) Computing Laboratory University of Kent, U.K.
Applications VS Documents � Our view � Web applications � A habit of the pre-XML era � Used for: � XML can represent any � Extended presentation and type of information interaction functionality. � Browsers already provide a � Precise presentation control wide range of functionality � Problems � We need a generic XML � Incompatible processing models content presentation model � Generally device specific � No common representation
Generic XML Presentation Browser Pre-Processor Document • Orchestration • Parsing Document Author • Presentation • Validation • Interaction • Transformation Language Language Predefined Open set of Language Language Author(s) Languages Languages Device � A proposal � All processing steps for: � Two processing steps � Compound XML documents � Browser � Variety of capabilities/preferences � Presentation of a fixed set of languages � Variety of independent languages � Pre-Processor � Rich functionality � Transformation of an open set of languages
Pre-Processing: XMLPipe � Transformation association � With the language not with the document � Variety of devices / preferences � Device profiles based on key-value pairs � Associations based on profile expressions � Integration model � Set of handled constructs for each language � Specifies the integration points � Syntax integration based on the handled constructs � Transformation association with handled constructs � Recursive document sub-tree transformations
XMLPipe Example (Source) <document xmlns= “…” xmlns:imp= “…” xmlns:alt= “…” xmlns:xl= “…” > <title>Example</title> <section> <title>The root type</title> <p>The root language allows <em>emphasized</em> text, images: <img href="xmlPipe.gif"/> and ...</p> </section> <section> <title>Mixed namespaces</title> <p>...capabilities sensitive content: <alt:alt> <alt:case test= “ http//.../XMLPipe/Terms#deviceType = mobile"> This is a mobile, </alt:case> <alt:case> This is not a mobile ,</alt:case> </alt:alt> <em xl:type="simple" xl:href="http://www.cs.kent.ac.uk">links</em> etc</p></section> </document>
XMLPipe Example (Desktop/FO)
XMLPipe Example (Mobile)
Browser architecture � Predefined set of languages � Feasible at an appropriate level of abstraction � Profile based integration � Multiple devices: modules, device specific implementation � Constraint based orchestration
… Summary � Inter-language event � Web apps VS documents propagation � They are the same � Well defined in terms of a � Web app functionality: profile definition � The basic presentation abstractions � Generic extension and an extension mechanism architecture � Declarative VS Imperative � Yes. � Declarative layers implemented � Otherwise specifications will imperatively have to be continuously � Profiles? updated. � Yes for the natively supported languages. � No for the open set of languages
Recommend
More recommend