Upload
julius-seporaitis
View
1.991
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Linked Enterprise Data Patterns Workshop 2011 presentation
Citation preview
GraphityGeneric Linked Data platform
Do more with less!
Wulffmorgenthaler
Danish comic strip since 2001
HeltNormalt
Rebranding in 2011
Old codebase
ZendFramework
ModelPHP
templatesMySQLPropelORM
Controller
View
SQL arrays
Request Response
Objects
Model-View-Controller
Webframework
Model TemplatesRDBMSORM/DAO
Controller
View
SQL
Request Response
Objects
Leaky abstractions
Incompatible APIs
DataConversions(N) ≥ 2 × (N − 1)Number of data (model) conversions between source datastore and target datastore
Custom codeBugs
Model mismatch
DataConversions(N) = 2 × (N − 1)
RDF
XML
JSON
Relationalmodel
Custom codeBugs
ObjectModel
Linked Data(sources)
DataConversions(N) = 0
REST+RDF
JAX-RS Jena
ResourcegetURI()
Request/Response Model
@Path Property
UriBuilder Literal
RDFResource
getURI()
getModel()
exists()
describe()
authenticate()
authorize()
Linked Systems
PlatformGraphity
ModelRDF store
ControllerResources
ViewXSLT
RDF/POST
DOMSPARQLUpdate
Request Response
RDF
Unified model
DataConversions(N) = 2
RDF
XMLRDF/XML
JSONJSON-LD
Relationalmodel
DOM D2RQ
Objectmodel
RDF API
Generic design
Reuse reuse reuse!
APIs: JAX-RS, Jena, XSLT
Ontologies: ACL, DC, SIOC, FOAF, Zodiac, LD API
Push abstractions & logic to RDF
Generalize cases
Refactor to minimize
Inversion of control
Overload default behaviour
Codebase comparison
Component Language # of files
# of lines Language # of files # of lines
HeltNormalt Old codebase
Model SPARQL 89 5590 PHP 93 19325
Model (strips) 7 588
View XSLT 60 9293 PHP 67 2528
View (strips) 5 784
Controller PHP 65 4155 PHP 51 7625
Controller (strips) 1 32
Graphity Zend Framework
Platform PHP 88 6043 PHP 284 50755
Server load
Potential RDF sources
HTTP traffic
Filesystems
Program code
repositories
source
Generic Linked Data tools & UI
Browser/editor
Analytics
Maps
Timelines/calendars
Real-time streams
Social widgets
W3C involvment
Best practices
Standard RDF/JSON syntax
Standard RDFizer interface
GRDDL stylesheet repository
Community involvment
w3c.github.com
Get in touch!
Contribute
graphity.org
github.com/Graphity - open-source!
Contact us
@pumba_lt
@seporaitis