200 likes | 266 Views
RDF/XML-based Generation of Adaptable Hypermedia Presentations. Flavius Frasincar flaviusf@win.tue.nl http://wwwis.win.tue.nl/~hera. Contents. Problem Hera Presentation Methodology Data Modeling: Conceptual Model Application Model Adaptation Model Data Transformations
E N D
RDF/XML-based Generation of Adaptable Hypermedia Presentations Flavius Frasincar flaviusf@win.tue.nl http://wwwis.win.tue.nl/~hera ITCC-Track on Modern Web and Hypermedia Systems
Contents • Problem • Hera Presentation Methodology • Data Modeling: • Conceptual Model • Application Model • Adaptation Model • Data Transformations • Data Presentation in Different Browsers • Conclusions ITCC-Track on Modern Web and Hypermedia Systems
Problem • Present the data (possibly coming from different sources) on different platforms for different users in an automatic way ITCC-Track on Modern Web and Hypermedia Systems
Solution: Hera • Hera is a model-driven methodology for hypermedia presentation design (part of Web Information System design) • Hera differentiates from other existing model-driven methodologies by: • The high degree of automationof the designed system • The use of Semantic Web technologies (RDF, RDFS, RDF/XML) in system specification • The support offered for specifying adaptation aspects early in the design process ITCC-Track on Modern Web and Hypermedia Systems
Language/Tool Support • Models are represented in RDF and they are serialized in RDF/XML • User Agent Profile (UAProf): a Composite Capability/Preference Profiles (CC/PP) vocabulary to model device capabilities and user preferences • XSLT processor for transforming between different model instances (stylesheet-based transformation): • Xalan (XSLT 1.0) • Saxon (XSLT 2.0): multiple output files support ITCC-Track on Modern Web and Hypermedia Systems
Data Modeling ITCC-Track on Modern Web and Hypermedia Systems
Conceptual Model (CM) • Provides a uniform semantic view over different data sources that are integrated within a given Web application • Consists of hierarchies of concepts relevant within the given domain • Conceptproperties are: • Attributes: refer to literal values that characterize a concept • Relationships: refer to other concepts ITCC-Track on Modern Web and Hypermedia Systems
Example: CM ITCC-Track on Modern Web and Hypermedia Systems
Example: CM in RDF/XML <rdfs:Class rdf:ID="Creator"/> <rdfs:Class rdf:ID="Painter"> <rdfs:subClassOf rdf:resource="#Creator"/> </rdfs:Class> <rdf:Property rdf:ID="creates" sys:cardinality="multiple" sys:inverse="created_by"> <rdfs:domain rdf:resource="#Creator"/> <rdfs:range rdf:resource="#Artifact"/> </rdf:Property> <rdfs:Class rdf:ID="Artifact"/> <rdfs:Class rdf:ID="Painting"> <rdfs:subClassOf rdf:resource="#Artifact"/> </rdfs:Class> <rdf:Property rdf:ID="year"> <rdfs:domain rdf:resource="#Artifact"/> <rdfs:range rdf:resource=“#Integer"/> </rdf:Property> <rdf:Property rdf:ID="picture"> <rdfs:domain rdf:resource="#Painting"/> <rdfs:range rdf:resource=“#Image"/> </rdf:Property> ITCC-Track on Modern Web and Hypermedia Systems
Application Model (AM) • Captures the logical (navigational) aspects of the presentation • Based on the concept of slice, a meaningful presentation unit which contains attributes and possibly other slices: • A slice is associated to a concept from CM • Slice properties are: • Aggregationproperties: embed a set of slices (abstraction for index, tour, indexed guided tour etc). • Referenceproperties: link abstraction ITCC-Track on Modern Web and Hypermedia Systems
Example: AM ITCC-Track on Modern Web and Hypermedia Systems
Example: AM in RDF/XML <rdfs:Class rdf:ID="Slice.painting.main" slice:owner="CM #Painting"> <rdfs:subClassOf rdf:resource="#Slice"/> </rdfs:Class> <rdf:Property rdf:ID="slice-ref"> <slice:prop-ref rdf:resource="CM #ex_by"/> <rdfs:domain rdf:resource="#S.t.main"/> <rdfs:range rdf:resource="#S.p.picture"/> </rdf:Property> <rdf:Property rdf:ID=“link_1"> <rdfs:subPropertyOf rdf:resource =“#link”> <rdfs:domain rdf:resource="# S.p.picture"/> <rdfs:range rdf:resource="#S.p.main"/> </rdf:Property> <rdfs:Class rdf:ID="Slice.technique.main" slice:owner=“CM#Technique" slice:main="Yes"> <rdfs:subClassOf rdf:resource=“#Slice"/> </rdfs:Class> <rdfs:Class rdf:ID="S.painting.picture" slice:owner=“CM#Painting" slice:attr-ref=“CM#picture"> <rdfs:subClassOf rdf:resource="#Slice"/> </rdfs:Class> <rdf:Property rdf:ID="media"> <rdfs:domain rdf:resource="#S.p.picture"/> <rdfs:range rdf:resource=“#Image"/> </rdf:Property> ITCC-Track on Modern Web and Hypermedia Systems
Adaptation Model • Based on conditioning the appearance of slices • A link referencing a slice that has the condition not valid is hidden • Takes into account the device capabilities and user preferences based on two CC/PP vocabularies: • UAProf (User Agent Profile): device capabilities • UserProfile: user preferences • The user/platform profile instantiates these two vocabularies for the specific platform and user of the system ITCC-Track on Modern Web and Hypermedia Systems
Adapted Application Model ITCC-Track on Modern Web and Hypermedia Systems
Example: AM in RDF/XML <rdfs:Class rdf:ID="Slice.painting.picture" slice:owner=“CM#Painting" slice:attr-ref=“CM#picture" slice:conditionSlice="prf:ImageCapable=Yes"> <rdfs:subClassOf rdf:resource=“AM#Slice"/> </rdfs:Class> <rdf:Property rdf:ID="slice-ref"> <rdfs:domain rdf:resource="#Slice.painting.main"/> <rdfs:range rdf:resource="#Slice.painter.name"/> <slice:prop-ref rdf:resource=“CM#painted_by"/> <slice:conditionRef="prf:ExpertiseLevel=Medium”/> </rdf:Property> ITCC-Track on Modern Web and Hypermedia Systems
Data Transformations • Step 0: Preparation • Substep 0.1: Application Model Unfolding creates the skeleton of an AM instance • Substep 0.2: Application Model Adaptation adds slice visibility conditions to the previous skeleton • Substep 0.3: Main Transformation SpecificationGeneration builds the specification for the next step • Step 1: Main Transformation populates the AM with the input CM instance • Step 2: PresentationGeneration produces code for different browsers (HTML, WML, SMIL) ITCC-Track on Modern Web and Hypermedia Systems
Main Transformation • Project all slices on the retrieved instances that correspond to the slice owner concept: • Each time a slice reference is encountered refer to its identifier (possibly traversing some instances based on concept relationship(s) from CM)* • Each time a media reference is encountered copy the media (given by a certain attribute from CM) • *Name convention: • Slice full name: ‘Slice’+’.’+concept+ ’.’+ slice short name • Slice instance full name: Slice full name+ ’_’+ identifier of the instance projected upon ITCC-Track on Modern Web and Hypermedia Systems
Data Transformations ITCC-Track on Modern Web and Hypermedia Systems
Presentation in Browsers WML SMIL HTML Wireless Markup Language Synchronized Multimedia Integration Language HyperText Markup Language ITCC-Track on Modern Web and Hypermedia Systems
Conclusions • Hera: • Is a model-based methodology that distinguishes two design tasks: the CM design and the AM design • It offers a high degree of system automation by specifying transformation stylesheets between different models • Ituses standard technology: RDF, RDF/XML, XSLT • As future work: • Support user interaction • Experiment with high level Semantic Web languages like the Web Ontology Language (OWL) ITCC-Track on Modern Web and Hypermedia Systems