Four Design Patterns - or How I learned to stop worrying and love the semantic web
TPR / 11:45 am / Monday
Brian Panulla @bpanulla
Why new web?
The SW is INFRASTRUCTURE.
- a parallel information architecture for smarter apps
- web content, pages and sites DO NOT need to change to be made ready for the 3.0 Webs
Three things the semantic web is NOT (kinda)
-
it is NOT semantic HTML (thats a collision of terminology … this is a different semantic)
- Zeldman says WRITE semantic HTML (use lists, use container p, use headers properly, don’t use presentational markup, don’t use br for padding and no tables for non-tabular data)
- it’s NOT Warmed-over Artificial Intelligence
- it’s NOT magic
Who cares?
(showing XKCD comic #773 about things on the front page of university websites — vs thins people go to the site looking for). Everything on the right is semantic stuff!
Semantics
-
explicit meaning of symbols
- words - usage, connotation
- images - symbolism
- become really useful when shared
-
semantics differs from SYNTAX
-
rules of how symbols (words, letters, pictures) can be arranged.
- I love Sushi.
- I (heart symbol) sushi.
- I love Sushi, but not in that way.
- And who or what is “Sushi”?
-
rules of how symbols (words, letters, pictures) can be arranged.
Technology Primer
-
RDF: Resource Description Framework
-
RDF is fundamental knowledge representation
- declares resources
- specifies properties of resources
-
What is a resource?
- EVERYTHING is a resource… even properties.
-
URIs
-
resources are identified by a Uniform Resource Identifier (URI)
- https://www.psu.edu/owl/list.owl#CollegeOfIST
- https://2010.highedweb.org/sessions.rdf#TPR9
- can also be round in your XHTML DTD and html tag’s xmlns attribute
-
resources are identified by a Uniform Resource Identifier (URI)
-
Triples
-
RDF is expressed as triples:
-
Example 1
- subject (“Penn State”)
- predicate (“is a”)
- object (“University”)
-
Example 2
- subject (“Brian Panulla”)
- predicate (“presented at”)
- object (“High Ed Web Conference”)
-
Example 1
-
Triples to Graphs
- see how data is related
-
RDF is expressed as triples:
-
RDF is fundamental knowledge representation
-
Web Ontologies
- where schemas describe structure, ontologies describe meaning or intended use
- OWL adds more expressiveness and many aspects of formal logic to RDF
-
On Design Patterns
- Inspired by book Design Patterns: Elements of Reusable Object-Oriented Software
- Architectural patterns like MVC
LINKED DATA
-
Linked Data: Use Cases
- Publish/Syndicate complete information sets
- Embedded explicit semantics, unique identifiers
- have minimal impact to other Web information publishing
- may be static or dynamically generated
-
EXAMPLES
- GeoNames (geonames.org)
- DBPedia (dbpedia.org)
- Open Rubrics
-
The Linked Data Cloud
- https://richard.evganiak.de/2007_10_lod (not sure on this URL …. )
-
Weaknesses
- access control can be difficult for sensitive or confidential
- damaging to proprietary intellectual property
-
Alternatives
- serialized data: XML, JSON, CSV (common, structural not semantic)
- microdata
MICRODATA
- Best Buy and Overstock have started tagging their products in RDFa
-
Weaknesses
-
XHTML required for RDFa validation
- new DOCTYPE
- XML MIME type
-
XHTML required for RDFa validation
-
Alternatives
- microformats (not discoverable)
- HTML5 Data attributes - application-level semantics only
- HTML5 Microdata - easier to read, more verbose elements
CONSUMER
- Manipulate linked data in a rich client
- generate multiple presentational forms
- i.e. Open Rubric Builder
-
Weaknesses
- processing/bandwidth resources constrained
- client libraries still maturing
- constraints of accessibility requirements
-
Alternatives
- AJAX, AHAH, JSON
SEMANTIC WEB APPLICATIONS
- Domains where schemas/models change rapidly or data is sparse
- Semantics of relational model inadequates (e.g. inferencing, inheritance)
-
Domains emphasizing relationships
- social networks
- taxonomies
-
Triple Stores
- database tuned for graphs of RDF statements
- sometimes a Quad Store (provenance)
- Popular - Jena, AllegroGraph, Virtuoso
-
Weaknesses
- bad for opaque objects with few relationships
- large sets of homogenous objects
-
Alternatives
- RDBMS
- NoSQL (document dbs, key/value stores, graph databases)
SPARQL
- query language for RDF docs
- grabs all subjects, predicates and objects from RDF document
- queries are similar to mysql
Higher Education Use Cases
- Degree Requirements based on class listings
- Talk to Brian about other use cases … we ran out of time!!
By Lacy Tite ->
ConferencesGeneral