Presentation is loading. Please wait.

Presentation is loading. Please wait.

Semantic-Web, Triple-Strores, and SPARQL

Similar presentations


Presentation on theme: "Semantic-Web, Triple-Strores, and SPARQL"— Presentation transcript:

1 Semantic-Web, Triple-Strores, and SPARQL
BCHB697

2 Outline Semantic Web Triple-Stores SPARQL
URIs & Links, Ontologies/RDF/RDFS Triple-Stores Semi-structured data, again Federation SPARQL SQL for triple-stores / semantic web BCHB697 - Edwards

3 (HTML) Web-pages Designed for humans to read. Page content
Prose, Numbers, Text, Pictures, Layout Anchors/Links w/ Label Search engines exploit the text and links to find useful information PageRank – number of pages that link to you UniProt XRefs – jump to related information Still, how to distinguish between: jaguar & jaguar; stamp & stamp; C4 and C4? BCHB697 - Edwards

4 Semantic Web Annotate instances with semantics
Jaguar (big cat) & Jaguar (car) Stamp (collector's item) & Stamp (one's foot, verb) C4 (gene) & C4 (explosive) Annotate instances with: Semantic information (name, size, value), and Semantic relationships to other instances Who manages the semantics? Anyone with data to describe, but… …reuse others' work to promote interoperability BCHB697 - Edwards

5 authority / data-provider
RESTful web-services RESTful web-services associate URIs with data-model entities: Notice how well this maps to database, table, and row This web-service returns everything about taxonomy id 9606 in XML or JSON format. protocol (http,https) authority / data-provider entity identifier BCHB697 - Edwards

6 URIs: Universal Resource Identifiers
URIs need not actually represent a web-service Pure identifiers, even if no machine or server. Associate semantic properties with URIs Literal values, or other URIs protocol (http,https) authority / data-provider entity identifier BCHB697 - Edwards

7 RDF: Resource Description Framework
XML format for describing instances, and their semantic properties – triples! (subject, predicate, object) Subject: a URI identifying the resource (instance identifier). Predicate: a URI indicates the relationship between Subject and Object (property identifier). Object: a literal value or URI of another resource related to the Subject (property value). BCHB697 - Edwards

8 RDF: Resource Description Framework
Conceptually, this is either: A really tall, thin table, containing the entire database A graph of nodes (subjects, objects) and edges (predicates) Regardless, still need a logical data model (at least in your head) to navigate the information. Predicate Subject Object BCHB697 - Edwards

9 GlycoConjugate Ontology
BCHB697 - Edwards Matthew Campbell

10 Example Triples (TURTLE)
< a gco:ReferencedProtein ; gco:glycosylated_at < ... ; gco:has_protein < ; gco:has_saccharide_set < ; ... . < a gco:Glycosylation_site , faldo:region ; gco:has_saccharide_set < ; faldo:ExactPosition < . < a faldo:ExactPosition ; gco:has_amino_acid < ; faldo:position "153^^xsd:int" . < a gco:amino_acid ; gco:amino_acid "Ser" . Matthew Campbell BCHB697 - Edwards

11 RDF/XML <?xml version="1.0" encoding="utf-8" ?> <rdf:RDF
xmlns:rdf=" xmlns:rdfs=" xmlns:owl=" xmlns:oboInOwl=" xmlns:obo=" > <rdf:Description rdf:about=" <rdf:type rdf:resource=" /> <rdfs:label rdf:datatype=" subtype N2 (Influenza A virus)</rdfs:label> <rdfs:comment rdf:datatype=" Requested by=IEDB. Requested by=ImmPort.</rdfs:comment> <rdfs:subClassOf rdf:resource=" /> <rdfs:subClassOf rdf:nodeID="b " /> <oboInOwl:hasExactSynonym rdf:datatype=" <oboInOwl:hasOBONamespace rdf:datatype=" <oboInOwl:id rdf:datatype=" <obo:IAO_ rdf:datatype=" neuraminidase (Influenza A virus) that is expressed on the surface of Influenza A virus and has similar antigenic properties, i.e., it will be neutralized by a similar set of antibodies. Example: UniProtKB:P06820.</obo:IAO_ > </rdf:Description> <rdf:Description rdf:nodeID="b "> <rdf:type rdf:resource=" /> <owl:onProperty rdf:resource=" /> <owl:someValuesFrom rdf:resource=" /> </rdf:RDF> BCHB697 - Edwards

12 RDFS: RDF Schema Data modeling vocabulary (ontology) for classes and properties rdfs:Class, rdfs:subClassOf, rdf:Property, rdfs:subPropertyOf, rdfs:range, rdfs:domain, rdfs:Resource, rdfs:Literal, rdfs:Datatype, rdfs:type, rdfs:comment, rdfs:label, rdfs:seeAlso, rdfs:isDefinedBy BCHB697 - Edwards

13 Ontology Formal definition of terms and their conceptual definitions:
In particular, classes and their properties OWL – Web Ontology Language RDF document with specific classes and properties for defining ontologies Public, facilitates data-use/reuse Compare with: Logical data-model for a relational database BCHB697 - Edwards

14 Triple-Stores Database for storing RDF triples, and efficiently querying them Constrain subject, predicate, and/or object Triple-store query as web-service, or dump RDF/XML Semi-structured, similar to document stores From one extreme to the other… Extreme "(de-)normalized form" Ontology / logical data-model is crucial BCHB697 - Edwards

15 Federation / Federated Queries
Triple-stores can easily be concatenated: …even virtually, with triples staying put. However, this only makes sense if Both triple-stores agree on classes, properties Both triple-stores agree on URIs NOTE: True for any data-integration project Done right, federated queries of multiple triple-stores can be executed automatically …across multiple independent triple-stores BCHB697 - Edwards

16 SPARQL SPARQL Protocol and RDF Query Language
SQL-like query language for triples BCHB697 - Edwards

17 SPARQL URI Namespaces: Result clause: Query pattern: Placeholders:
BCHB697 - Edwards

18 SPARQL URI Namespaces: Result clause: Query pattern: Placeholders:
rdfs:type BCHB697 - Edwards

19 SPARQL BCHB697 - Edwards

20 SPARQL Not quite as expressive as SQL
…but provides a significant subset of its functionality Properties must be present to be matched Absence of property values is difficult to query Primarily use "equality" clauses Consequences for data-modeling strategies Multi-values appear as multi-triples BCHB697 - Edwards

21 Exercise Explore the SPARQL endpoint at Uniprot: Lots of interesting queries here! Come up with a hypothesis about how the triples are used to represent UniProt entries BCHB697 - Edwards


Download ppt "Semantic-Web, Triple-Strores, and SPARQL"

Similar presentations


Ads by Google