using interface encapsulation to listen to linked data predicates

21
@semanticfire

Upload: bart-van-leeuwen

Post on 28-Nov-2014

488 views

Category:

Software


0 download

DESCRIPTION

Using interface encapsulation to listen to linked data predicates Presentation given at ISWC 2014, about the use of EnyoJS for linkeddata user interfaces

TRANSCRIPT

Page 1: Using interface encapsulation to listen to linked data predicates

@semanticfire

Page 2: Using interface encapsulation to listen to linked data predicates

2

Page 3: Using interface encapsulation to listen to linked data predicates
Page 4: Using interface encapsulation to listen to linked data predicates
Page 5: Using interface encapsulation to listen to linked data predicates
Page 6: Using interface encapsulation to listen to linked data predicates

The Problem

6

Page 7: Using interface encapsulation to listen to linked data predicates

Problem identification

7

Tree Based UI Graph Data

Page 8: Using interface encapsulation to listen to linked data predicates

Loss of Semantics

Select ?a ?b ?c where { ….

<Value of ?a>

Application

Page 9: Using interface encapsulation to listen to linked data predicates

Possible

Solution

9

Page 10: Using interface encapsulation to listen to linked data predicates

10

http://enyojs.com

Page 11: Using interface encapsulation to listen to linked data predicates

EnyoJS Encapsulation

11

Application

Entry Field

Tekst Box

Push MeCalls

Events

Page 12: Using interface encapsulation to listen to linked data predicates

EnyoJS Encapsulation

12

Application

Entry Field

Tekst Box

Push Me

Linked DataProperty

Page 13: Using interface encapsulation to listen to linked data predicates

In Code (1)

enyo.kind({name : "C1",kind : "FittableRows",components : [ {

name : "T",kind : "input"

} ],

13

Page 14: Using interface encapsulation to listen to linked data predicates

In Code (2)

enyo.kind({name : "C2",kind : "FittableRows",components : [ {

name : "P",kind : "netage.ldproperty",property : "http://xmlns.com/foaf/0.1/name",components : [ {

name : "T",kind : "input"} ]

} ],

14

Page 15: Using interface encapsulation to listen to linked data predicates

In Code (3)

enyo.kind({name : "C3",kind : "FittableRows",components : [ {

name : "P_1",kind : "netage.ldproperty",property : "http://xmlns.com/foaf/0.1/knows",components : [ {

name : "P_2",kind : "netage.ldproperty",property : "http://xmlns.com/foaf/0.1/name",components : [ {

name : "T",kind : "input"

} ]} ]

15

Page 16: Using interface encapsulation to listen to linked data predicates

Other features

• Filters

– Value

– Language

• Cardinality

– Auto creation of components

• Future work

– Bindings for write support

– JSON-LD syntax

– Shape Expression integration

16

Page 17: Using interface encapsulation to listen to linked data predicates

Does it Work?

17

Page 18: Using interface encapsulation to listen to linked data predicates

18

Page 19: Using interface encapsulation to listen to linked data predicates

In Use

19

70FIRESTATIONS

90MONITORS

4COUNTRIES

±120.000INCIDENTS PER YEAR

Page 20: Using interface encapsulation to listen to linked data predicates

Summary

• Advantages Encapsulation

– Keeps semantics and UI close

– Easy Prototyping and Development

• Uses:

– EnyoJS

– RDFLIB.JS

• Open Source ?

– YES Soon !

20

Page 21: Using interface encapsulation to listen to linked data predicates

@semanticfire