280 likes | 450 Views
A Specification Language and System for the Three-Dimensional Visualisation of Knowledge Bases. El Mustapha EL ATIFI and Gilles FALQUET. Information System Interfaces Department of Information Systems University of Geneva. Context. Study the 3D visualisation of knowledge bases
E N D
A Specification Language and System for the Three-Dimensional Visualisation of Knowledge Bases El Mustapha EL ATIFI and Gilles FALQUET Information System Interfaces Department of Information Systems University of Geneva
Context • Study the 3D visualisation of knowledge bases • – Design – Metaphors – Effectiveness 3D scene knowledge base
Outline • Introduction • Knowledge and Interface Models • Abstract Interface Specification • Concrete Interface Specification • Conclusion and perspectives.
Visualisation of Knowledge Bases in 3D Difficulties • Represent abstract concepts, facts, rules • Represent formalized and non-formalized knowledge • Hard to program 3D interfaces => few prototyping and usability testing Simplify 3D interface generation
Approach • Declarative specification • Specify the interface structure • Specify mappings KB entities interface objects • Two Levels (reduce the semantic gap) • Abstract interface • Concrete interface
Specifications Generator Generator Translator Interfaces Principles Abstract Specification Concrete Specification Open GL Knowledge Base Java 3D Abstract Interface Concrete Interface X3D
Knowledge Base Model • Formalized knowledge • Classes, semantic relations, objects • Expressed in RDF/RDFS • Non Formalized knowledge • Documents • Connected to the formal description
RDF Formalism Language Knowledge base = set of triples (subjectpredicateobject) subClassOf subClassOf Programming Language Markup Language type definition HTML a.b.c/prog description example html.html a.html
Selection in a RDF/S KB • SPARQL: W3C recommandation • Based on triple patterns ?x auteur éditeur H. Bersini ?e
Abstract interface model Abstract spatial hypertext Nodes • subnodes Links • hypertext navigation • inclusion (node to subnode) • semantic links
Example Inclusion Sémantique Navigation loc=left loc=front attribut attribut attribut
Abstract specification • Set of node schemas • Node schema Selection from the KB (SPARQL expression) Content specification • Hierarchy of XML elements • Values from the KB Link specifications
An Abstract Node Specification abstract-node: ConceptPresentation [c] selection: (c rdf:type rdfs:Class)(c term ?t) content: <label> t </label> inclusion link: to: ExamplesOf[c] attributes: (position: "left") inclusion link: to: DescriptionsOf[c] attributes: (position: "right")
Generated abstract interface Instances of node schemas ConceptPresentation [19584] <label>Markup language</label> ConceptPresentation [123] <label>Language</label> ExamplesOf[123] <..> ... </...> ConceptPresentation [56] <label>Programming language</label> DescriptionsOf[123] <..> ... </...> Panel[1] <..> ... </...> Panel[6] <..> ... </...>
Concrete interface • Spatial Hypertext Nodes • shape • layout manager Links • inclusion • navigation • semantic ==> layout constraints
Layout Mgr 1 attributes attributes Layout Mgr 2 Layout Mgr 3 attributes attributes attributes Layout Mgr 4 Concrete interface model
Concrete specification • Associate a concrete node to each abstract node concrete-node: ExamplesOf [c] shape: Wall layout-manager: Sequence
Example Knowledge base : course on information technologies • Concepts and semantic relationships • Documents • Illustrations, examples, descriptions Visualisation • Exhibition metaphor • Concept ==> Stand • Documents ==> posters on the walls • Navigation links to other concepts
Example: Knowledge Base N-644 XHTML Markup language def. term term C-158 C-162 XML language reference CSS sheet term C-160 tile N-682 ref example N-622 title title N-623 Utilisation d’XML Analyse d’XML
Exhibition ConceptPresentation[c] DescriptionsOf[c] LabelAndSupCof[c] ExamplesOf[c] TextPanel[?d’] TextPanel[?d] Example: abstract node * * *
Exhibition ConceptPresentation[c] } { DescriptionsOf[c] LabelAndSupCof[c] ExamplesOf[c] TextPanel[?d’] } { TextPanel[?d] } { abstract-node: LabelAndSupCsof parameters: c selection: (c rdfs:label ?l).(c rdfs:supClasseOf ?c2).(c lzy:definition ?d) content: // label + a subsumption link to every related concept l attributes: (position: "center"; type:"text"), d attributes: (position: "right"; type:"ext-link"; object:"Def") { navigation link: to: ConceptPresentation[c2] type: "subsumption " } attributes: (position: "top") Example
Exhibition ConceptPresentation[c] } { DescriptionsOf[c] LabelAndSupCof[c] ExamplesOf[c] TextPanel[?d’] } { TextPanel[?d] } { Example concrete-node: LabelAndSupCsof parameters: c shape: panel layout-manager: layout-clrtb layout-clrtb panel
Exhibition ConceptPresentation[c] } { DescriptionsOf[c] LabelAndSupCof[c] ExamplesOf[c] TextPanel[?d’] } { TextPanel[?d] } { VRML Interface
Conclusion • Spécifications déclaratives • Deux niveaux de spécification • Une spécification abstraite peut servir pour plusieurs BC • À partir d’une spécification abstraite possibilité de générer plusieurs interfaces concrètes
Perspectives • Étudier les positionneurs • Étudier l’interaction • Méthodologie de conception
Thanks Questions ? ? ? El Mustapha EL ATIFI & Gilles FALQUET { Elmustapha.Elatifi; Gilles.Falquet }@cui.unige.ch