Facets and Pivoting for Flexible and
       Usable Linked Data Exploration
            Josep Maria Brunetti, Rosa Gil, Roberto García


                 In t e r a c t in g w it h L in k e d D a t a
                          W o r k s h o p , I L D ’ 12
                          Crete, Greece, May 28th 2012

Human-Computer Interaction
                                                   Universitat de Lleida
       and Data Integration
                                                   Spain
             Research Group
Starting Point
• Rhizomer
  Semantic Web Data publishing

             HTML+RDF             “semantic”
                a                  FORMS

   SPARQL or LinkedData    new       edit delete



                                      POST
                 GET




                                                DEL
                            PUT




                       RhizomerApp

                         Metadata            Jena, Virtuoso, OWLIM,…
                          Store
Interacting
• Useful for computers…
    but also for lay users?
• User tests:
  – Typical questions:
     • Where do I start?
     • Where do I go now?
     • What is this data about?
  – What do we offer?
     • Text search, type URI, SPARQL query,…
       …but they usually don’t answer lay users needs
Interacting
• Example: What to do with DBPedia?
  – 3.5 million things described
     • Ontology: 257 classes y 1276 properties
Proposal
    Ontologies and dataset structure

                                 Information
                                 Architecture
                                 Components
                                       [Morville]


Interaction  Overview        Menus, Sitemaps,…
Patterns for Zoom & Filter   Facets
Data Analysis
 [Shneiderman]
                 Details     Lists, Maps, Timelines…
IA Components. Menus
– Hierarchical structure for dataset ontologies
   • For each class
      – URI, label, # instances, subclasses
– Flatten to desired # entries and subentries
   • When there is room, divide class with most
     instances
   • When too many options, group classes with less
     instances
IA Components. Menus

7 menus with 10 submenus
         Automatic
         Generation
IA Components. Menus
Navigation bar provides overview for DBPedia…
…but what to do with 12.334 birds now?
IA Components. Facets
• Pre-computed list of facets/class
   – Ontologies + class instances
   – Facet metrics:
      frequency, #values, most common value
      cardinality…
• DBPedia Birds class:
  – 226 different properties
      •dbo:kingdom, 100%, 3 values,
      6846 (Animalia),…
Evaluation
• Evaluation with lay users as part of RITE1
  development process
  – Iteration test with 6 users
  – LinkedMDB dataset

                    User Task:
                    “Find three films where
                    Woody Allen is director and
                    also actor”.



   1
       Rapid Iterative Testing and Evaluation
Evaluation
• Seemed easy but…
  no user completed task without help
• Really, just 1 issue:
  – Users started from “Actor” instead than from
    “Film”, and got lost from there
• User interaction is too constrained by
  underlying “explicit” data structure
• Lack of context while browsing graph
Proposals
• Facet for all inverse properties
  (explicit or implicit)
  – Actor  actor – Film:
     • Actor has facet “is actor of Film”
• Breadcrumbs show “query” built so far
  – Click Film, then for facet “Actor”
    search “Woody Allen”:
     • Display:
        “Showing Film has actor where actor name is Woody Allen”
Proposals
• What about getting from Actors to Films to
  restrict by director?

• Add Actor facet “directed by”?
  – DANGER: facets explosion
     • Director facet “continents of countries where films
       directed”!
Proposals
• Pivoting: switch from faceted view to
  related faceted view (keeping filters)
  – E.g.: from Actors facets move to Films facets
    through “is Actor of Film” facet
• For each class facet also compute:
  – Most specific class for target instances
     • Actor “is Actor of” Film and TV Episode  Work
  – Pivot that facet to get:
     • Faceted view for target class
     • … + filters so far
Conclusions
• Menus
  – Dataset classes (topics) overview
• Facets
  – Per class properties and values, filter
• Pivoting
  – Switch faceted views, carry on filters
Conclusions
• Users build queries without SPARQL or
  dataset structure knowledge
• Example:
  – Who has directed more films in Oceania?
  – SELECT DISTINCT ?r1 WHERE {
    ?r1 a movie:Director .
    ?r2 movie:director ?r1 .
    ?r2 a movie:Film.
    ?r2 movie:country ?r3 .
    ?r3 movie:country_continent ?r3var0
    FILTER(str(?r3var0)="Oceania") }
Future Work
• User evaluation
  – Explore the best way to provide pivoting,
    and un-pivoting…
• Specialised facets:
  – Range dependent: histogram for numbers,
    calendar for dates,…
• Other IA components: sitemaps
• …
Thanks for your attention

                              Roberto García
                        http://rhizomik.net/~roberto/




Human-Computer Interaction
       and Data Integration                      Universitat de Lleida
             Research Group

Facets and Pivoting for Flexible and Usable Linked Data Exploration

  • 1.
    Facets and Pivotingfor Flexible and Usable Linked Data Exploration Josep Maria Brunetti, Rosa Gil, Roberto García In t e r a c t in g w it h L in k e d D a t a W o r k s h o p , I L D ’ 12 Crete, Greece, May 28th 2012 Human-Computer Interaction Universitat de Lleida and Data Integration Spain Research Group
  • 2.
    Starting Point • Rhizomer Semantic Web Data publishing HTML+RDF “semantic” a FORMS SPARQL or LinkedData new edit delete POST GET DEL PUT RhizomerApp Metadata Jena, Virtuoso, OWLIM,… Store
  • 3.
    Interacting • Useful forcomputers… but also for lay users? • User tests: – Typical questions: • Where do I start? • Where do I go now? • What is this data about? – What do we offer? • Text search, type URI, SPARQL query,… …but they usually don’t answer lay users needs
  • 4.
    Interacting • Example: Whatto do with DBPedia? – 3.5 million things described • Ontology: 257 classes y 1276 properties
  • 5.
    Proposal Ontologies and dataset structure Information Architecture Components [Morville] Interaction Overview Menus, Sitemaps,… Patterns for Zoom & Filter Facets Data Analysis [Shneiderman] Details Lists, Maps, Timelines…
  • 6.
    IA Components. Menus –Hierarchical structure for dataset ontologies • For each class – URI, label, # instances, subclasses – Flatten to desired # entries and subentries • When there is room, divide class with most instances • When too many options, group classes with less instances
  • 7.
    IA Components. Menus 7menus with 10 submenus Automatic Generation
  • 8.
    IA Components. Menus Navigationbar provides overview for DBPedia… …but what to do with 12.334 birds now?
  • 9.
    IA Components. Facets •Pre-computed list of facets/class – Ontologies + class instances – Facet metrics: frequency, #values, most common value cardinality… • DBPedia Birds class: – 226 different properties •dbo:kingdom, 100%, 3 values, 6846 (Animalia),…
  • 10.
    Evaluation • Evaluation withlay users as part of RITE1 development process – Iteration test with 6 users – LinkedMDB dataset User Task: “Find three films where Woody Allen is director and also actor”. 1 Rapid Iterative Testing and Evaluation
  • 12.
    Evaluation • Seemed easybut… no user completed task without help • Really, just 1 issue: – Users started from “Actor” instead than from “Film”, and got lost from there • User interaction is too constrained by underlying “explicit” data structure • Lack of context while browsing graph
  • 13.
    Proposals • Facet forall inverse properties (explicit or implicit) – Actor  actor – Film: • Actor has facet “is actor of Film” • Breadcrumbs show “query” built so far – Click Film, then for facet “Actor” search “Woody Allen”: • Display: “Showing Film has actor where actor name is Woody Allen”
  • 14.
    Proposals • What aboutgetting from Actors to Films to restrict by director? • Add Actor facet “directed by”? – DANGER: facets explosion • Director facet “continents of countries where films directed”!
  • 15.
    Proposals • Pivoting: switchfrom faceted view to related faceted view (keeping filters) – E.g.: from Actors facets move to Films facets through “is Actor of Film” facet • For each class facet also compute: – Most specific class for target instances • Actor “is Actor of” Film and TV Episode  Work – Pivot that facet to get: • Faceted view for target class • … + filters so far
  • 21.
    Conclusions • Menus – Dataset classes (topics) overview • Facets – Per class properties and values, filter • Pivoting – Switch faceted views, carry on filters
  • 22.
    Conclusions • Users buildqueries without SPARQL or dataset structure knowledge • Example: – Who has directed more films in Oceania? – SELECT DISTINCT ?r1 WHERE { ?r1 a movie:Director . ?r2 movie:director ?r1 . ?r2 a movie:Film. ?r2 movie:country ?r3 . ?r3 movie:country_continent ?r3var0 FILTER(str(?r3var0)="Oceania") }
  • 23.
    Future Work • Userevaluation – Explore the best way to provide pivoting, and un-pivoting… • Specialised facets: – Range dependent: histogram for numbers, calendar for dates,… • Other IA components: sitemaps • …
  • 24.
    Thanks for yourattention Roberto García http://rhizomik.net/~roberto/ Human-Computer Interaction and Data Integration Universitat de Lleida Research Group