SlideShare ist ein Scribd-Unternehmen logo
1 von 101
Getting Started with the Talis Platform ,[object Object],[object Object],[object Object],[object Object],http://creativecommons.org/licenses/by/2.0/uk/
Agenda ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Platform Overview
Software as a Service Multi-Tenant Data Storage Service
Unstructured Data Storage e.g. binary files, including images, documents, etc
Structured Data Storage RDF metadata
Access Control All data is open (to read) by default Configurable access options
Full-Text Searching  and Querying
Standards Compliance RDF, SPARQL, HTTP
Platform Architecture Web API Metabox Contentbox
REST, RDF Authentication & Authorization Content Negotiation Core Concepts aka “The Science Bit”
REST Re presentational  S tate  T ransfer Correct Use of HTTP
Resource-Centric API Everything has a unique URI
Interact with resources using HTTP GET  = read PUT = write POST = update/modify DELETE = delete
Use HTTP Response Codes 200 = OK 201 = Created (new resource) 202 = Accepted (for processing) 400 = Bad Request 500 = Server Error
Mime Types Used to identifiy content & meaning of request and response body
Content  Negotiation Majority of services support multiple output options, list varies by resource Accept  header output  parameter
Our Service Checklist ,[object Object],[object Object],[object Object],[object Object],[object Object]
Authentication HTTP Digest Authentication
Authentication Example
Authorization By default stores are world-readable, Store owner writable Customisable roles and privileges per-Store
Review of the RDF Model
Apollo 11 was launched from Cape Canaveral
Apollo 11 was launched from Cape Canaveral Subject Predicate Object
<http://purl.org/net/schemas/space/spacecraft/apollo-11>   <http://purl.org/net/schemas/space/launchsite>  <http://purl.org/net/schemas/space/launchsite/capecanaveral>.
space: spacecraft/apollo-11   space: launchsite  space: launchsite/capecanaveral.
space:spacecraft/apollo-11  space:launchsite space:launchsite/capecanaveral. space:spacecraft/apollo-11  rdfs:label   “Apollo 11” . space:launchsite/capecanaveral  rdfs:label   “Cape Canaveral” .
 
 
Benefits of RDF?
Good for Semi-structured Data “Schema-Free” Very Flexible
Extensible New properties New resources New types of resource New statements
Encourages Convergence Reuse of vocabularies (i.e. properties) Reuse of identifiers (i.e. talk about the same things)
Simplifies Data Integration and Aggregation Shared identifiers Common data model Common query language Common data formats
Several Different Ways to Serialize RDF Optimized for different purposes
Turtle Simple to read and hand-author Used in SPARQL query language
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> @prefix space: <http://purl.org/net/schemas/space/>  @ @prefix dc: <http://purl.org/dc/elements/1.1/> <http://purl.org/net/schemas/space/spacecraft/1969-059A>  rdf:type  <http://purl.org/net/schemas/space/Spacecraft>;  dc:description  &quot;Apollo 11 was…”; space:agency  &quot;United States&quot; .
RDF/XML Best for data interchange Harder to read
<rdf:RDF xmlns:j.0=&quot;http://xmlns.com/foaf/0.1/“ xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;  xmlns:space=&quot;http://purl.org/net/schemas/space/&quot;  xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot;  xml:base=&quot;http://purl.org/net/schemas/space&quot;> <rdf:Description  rdf:about=&quot;/spacecraft/1969-059A&quot;>  <dc:description>Apollo 11 was…</dc:description>  <rdf:type  rdf:resource=&quot;http://purl.org/net/schemas/space/Spacecraft&quot;/>  <space:agency>United States</space:agency> </rdf:Description> </rdf:RDF>
The Content Box Managing unstructured, binary data
Store any stream of binary data Images, documents, Javascript, etc
Full HTTP Caching Support ETags Efficient retrieval Conditional updates
Server or Client Assignment of Identifiers Provides full control over how URIs assigned
ContentBox URLs ,[object Object],[object Object],[object Object],[object Object]
Adding Content
Deleting Content
Metadata for Contentbox Resources Minimum is URI and ETag Extract height & width of images … more metadata extraction in future
The Meta Box Managing structured metadata
Full RDF Data Storage Create, read, update, delete RDF resources Query RDF data
Configurable Full Text Indexing of RDF Indexes updated whenever new metadata added
Versioned and Un-Versioned Updates By submitting data to separate resources Maintain audit trail
Can be Divided into Sub-Graphs Separate access control options
Metabox URLs ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Storing RDF POST  application/rdf+xml Changes saved immediately Search indexing asynchronous
Triples are  Merged  into Store Can catch out the unwary Updates happen through separate mechanism
Retrieving Metadata /meta?about=…URI… Can select RDF serialization
Updating Resources POST  application/vnd.talis.changeset+xml
ChangeSets Vocabulary that specifies removals/additions to an RDF graph
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Versioned Updates POST to  /meta/changesets Apply update and stores changeset for later retrieval
Batch Updates Combine several changesets into single POST Linked together to define ordering
<rdf:RDF xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;  xmlns:cs=&quot;http://purl.org/vocab/changeset/schema#&quot;> <cs:ChangeSet rdf:about=&quot;http://example.com/changesets/1&quot;> <cs:subjectOfChange  rdf:resource=&quot;http://purl.org/net/schema/space/launch/1969-059&quot;/> <cs:changeReason>More accurate launch time</cs:changeReason> < cs:precedingChangeset  rdf:resource=&quot; http://example.com/changesets/2 &quot;/> <!– changes --> </cs:ChangeSet> <cs:ChangeSet rdf:about=&quot; http://example.com/changesets/2 &quot;> <cs:subjectOfChange  rdf:resource=&quot;http://purl.org/net/schema/space/launch/1969-059&quot;/> <cs: precedingChangeset  rdf:resource=&quot; http://example.com/changesets/3 &quot;/> <!– changes --> </cs:ChangeSet>  <cs:ChangeSet rdf:about=&quot; http://example.com/changesets/3 &quot;> <cs:subjectOfChange  rdf:resource=&quot;http://purl.org/net/schema/space/spacecraft/1969-059D&quot;/> <!– changes --> ... </cs:ChangeSet>  </rdf:RDF>
Data Extraction & Exploration with SPARQL
SPARQL RDF query language; HTTP protocol; Results format 4 different forms of query
ASK Test whether the graph contains some data of interest
#Was there a launch on 16 th  July 1969? PREFIX space: <http://purl.org/net/schemas/space/> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> ASK WHERE { ?launch space:launched &quot;1969-07-16&quot;^^xsd:date. }
<?xml version=&quot;1.0&quot;?> <sparql  xmlns=&quot;http://www.w3.org/2005/sparql-results#&quot;> <head> </head> <boolean>true</boolean> </sparql>
DESCRIBE Generate an RDF description of a resource(s)
#Describe launch(es) that occurred on 16 th  July 1969 PREFIX space: <http://purl.org/net/schemas/space/> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> DESCRIBE ?launch WHERE { ?launch space:launched &quot;1969-07-16&quot;^^xsd:date. }
#Describe spacecraft launched on 16 th  July 1969 PREFIX space: <http://purl.org/net/schemas/space/> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> DESCRIBE ?spacecraft WHERE { ?launch space:launched &quot;1969-07-16&quot;^^xsd:date. ?spacecraft space:launch ?launch. }
CONSTRUCT Create a custom RDF graph based on query criteria
PREFIX space: <http://purl.org/net/schemas/space/> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> PREFIX foaf: <http://xmlns.com/foaf/0.1/> CONSTRUCT { ?spacecraft foaf:name ?name; space:agency ?agency; space:mass ?mass.  } WHERE { ?launch space:launched &quot;1969-07-16&quot;^^xsd:date. ?spacecraft space:launch ?launch; foaf:name ?name; space:agency ?agency; space:mass ?mass.  }
SELECT SQL style result set retrieval
PREFIX space: <http://purl.org/net/schemas/space/> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?name ?agency ?mass WHERE { ?launch space:launched &quot;1969-07-16&quot;^^xsd:date. ?spacecraft space:launch ?launch; foaf:name ?name; space:agency ?agency; space:mass ?mass.  }
…as XML <?xml version=&quot;1.0&quot;?> <sparql  xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; xmlns=&quot;http://www.w3.org/2005/sparql-results#&quot; > <head> <variable name=&quot;name&quot;/> <variable name=&quot;agency&quot;/> <variable name=&quot;mass&quot;/> </head> <results> <result> <binding name=&quot;name&quot;> <literal>Apollo 11 Command and Service Module (CSM)</literal> </binding> <binding name=&quot;agency&quot;> <literal>United States</literal> </binding> <binding name=&quot;mass&quot;> <literal>28801.0</literal> </binding> </result> <!– more results --> </results> </sparql>
…as JSON {  &quot;head&quot;: {  &quot;vars&quot;: [ &quot;name&quot; , &quot;agency&quot; , &quot;mass&quot; ]  } ,  &quot;results&quot;: {  &quot;bindings&quot;: [  {  &quot;name&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;Apollo 11 Command and Service Module (CSM)&quot; } ,  &quot;agency&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;United States&quot; } ,  &quot;mass&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;28801.0&quot; }  } ,  {  &quot;name&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;Apollo 11 SIVB&quot; } ,  &quot;agency&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;United States&quot; } ,  &quot;mass&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;13300.0&quot; }  } ,  {  &quot;name&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;Apollo 11 Lunar Module / EASEP&quot; } ,  &quot;agency&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;United States&quot; } ,  &quot;mass&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;15065.0&quot; }  }  ]  } }
Tour of Extra Features Searching, browsing, augmentation
Searching Full text index over RDF literals Configurable indexing options
/items?query=[query] &max=[10] &offset=[0] &sort=[comma-separated fieldnames] &xsl=[XSLT stylesheet] &content-type=[mimetype for XSLT results]
Query Syntax ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Query Results RSS 1.0 feed OpenSearch extensions (paging, relevance) Full description of each resource
<rdf:RDF xmlns=&quot;http://purl.org/rss/1.0/&quot;  xmlns:foaf=&quot;http://xmlns.com/foaf/0.1/&quot;  xmlns:relevance=&quot;http://a9.com/-/opensearch/extensions/relevance/1.0/&quot;  xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;  xmlns:os=&quot;http://a9.com/-/spec/opensearch/1.1/&quot;  xmlns:ns.1=&quot;http://purl.org/net/schemas/space/&quot;> <channel rdf:about=“…&quot;> <title>lunar</title> <link>…</link> <description>Results of a search for lunar on space</description> <items> <rdf:Seq rdf:about=&quot;urn:uuid:eae4ead8-ca6a-4b12-b714-fe631d38e447&quot;> <rdf:li resource=&quot;http://purl.org/net/schemas/space/spacecraft/LUNAR-A&quot; /> </rdf:Seq> </items> < os:startIndex >0</ os:startIndex > < os:itemsPerPage >10</ os:itemsPerPage > < os:totalResults >118</ os:totalResults > </channel> <item rdf:about=&quot;http://purl.org/net/schemas/space/spacecraft/LUNAR-A&quot;> <title>Item</title> <link>http://purl.org/net/schemas/space/spacecraft/LUNAR-A</link> < relevance:score >1.0</ relevance:score > <foaf:name>Lunar-A</foaf:name> <space:mass>520.0</space:mass> <space:internationalDesignator>LUNAR-A</space:internationalDesignator> </item> </rdf:RDF>
Facetted Search Similar to Amazon product search, etc Group search results by specific fields
/services/facet?query=[query] &fields=[comma-separated fieldnames]   &top=[10] &format=[xml|html]
<facet-results xmlns=&quot;http://schemas.talis.com/2007/facet-results#&quot;> <head> <query>name:luna*</query> <fields>agency</fields> <top>10</top> <output>xml</output> </head>  <fields>  <field name=&quot;agency&quot;>   <term value=&quot;U.S.S.R&quot;    number=&quot;25&quot; facet-uri=“…&quot;  search-uri=“…&quot;/>   <term value=&quot;United States&quot;    number=&quot;9&quot; facet-uri=“…&quot; search-uri=“…&quot;/>   <term value=&quot;Japan&quot;    number=&quot;1&quot; facet-uri=“…&quot; search-uri=“…&quot;/>   <term value=&quot;India&quot;    number=&quot;1&quot; facet-uri=“…&quot; search-uri=“…&quot;/> </field> </fields> </facet-results>
Augmentation Annotate an RSS 1.0 feed against a store Automatically add a description of each referenced resource
Store Administration Job Control, Store Configuration
Field Predicate Map Associate a short name to a RDF property Properties in field predicate map are indexed for searching Short name used in query syntax, sort order, etc
<rdf:RDF  xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;  xmlns:rdfs=&quot;http://www.w3.org/2000/01/rdf-schema#&quot;  xmlns:bf=&quot;http://schemas.talis.com/2006/bigfoot/configuration#&quot;  xmlns:frm=&quot;http://schemas.talis.com/2006/frame/schema#“ xml:base=“http://api.talis.com/stores/space”> <bf:FieldPredicateMap rdf:about=&quot;/indexes/default/fpmaps/default&quot;> <frm:mappedDatatypeProperty> <rdf:Description rdf:about=&quot;/indexes/default/fpmaps/default#agency&quot;> <frm:property rdf:resource=&quot;http://purl.org/net/schema/space/agency&quot;/> <frm:name>agency</frm:name> </rdf:Description> </frm:mappedDatatypeProperty> </bf:FieldPredicateMap> </rdf:RDF>
Query Profile Assign weightings to fields for searching
<rdf:RDF  xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; xmlns:rdfs=&quot;http://www.w3.org/2000/01/rdf-schema#&quot; xmlns:bf=&quot;http://schemas.talis.com/2006/bigfoot/configuration#&quot; xmlns:frm=&quot;http://schemas.talis.com/2006/frame/schema#“ xml:base=“http://api.talis.com/stores/space”> <bf:QueryProfile rdf:about=&quot;&quot;> <bf:fieldWeight> <rdf:Description rdf:about=&quot;/indexes/default/queryprofiles/default#name&quot;> <bf:weight>10.0</bf:weight> <frm:name>name</frm:name> </rdf:Description> </bf:fieldWeight> <bf:fieldWeight> <rdf:Description rdf:about=&quot;/indexes/default/queryprofiles/default#agency&quot;> <bf:weight>5.0</bf:weight> <frm:name>agency</frm:name> </rdf:Description> </bf:fieldWeight> </bf:QueryProfile> </rdf:RDF>
Job Control Reindex, Reset, Snapshot, Restore POST Job Request to  /jobs
<rdf:RDF xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; xmlns:rdfs=&quot;http://www.w3.org/2000/01/rdf-schema#&quot; xmlns:bf=&quot;http://schemas.talis.com/2006/bigfoot/configuration#&quot;>  <bf:JobRequest> <rdfs:label>Reset the data in my store</rdfs:label> <bf:jobType rdf:resource=&quot;http://schemas.talis.com/2006/bigfoot/configuration#ResetDataJob&quot;/> <bf:startTime>2008-12-01T15:10:00Z</bf:startTime> </bf:JobRequest> </rdf:RDF>
Jobs Each job is a resource, with a URI GET to monitor status, DELETE to remove
Summing Up Summary, Additional Resources
The Talis Platform… ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Additional Resources ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Client Libraries (in various states of development) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
shared innovation

Weitere ähnliche Inhalte

Was ist angesagt?

Web of Data Usage Mining
Web of Data Usage MiningWeb of Data Usage Mining
Web of Data Usage Mining
Markus Luczak-Rösch
 
London HUG
London HUGLondon HUG
London HUG
Boudicca
 

Was ist angesagt? (20)

Let your data shine... with OpenRefine
Let your data shine... with OpenRefineLet your data shine... with OpenRefine
Let your data shine... with OpenRefine
 
Web of Data Usage Mining
Web of Data Usage MiningWeb of Data Usage Mining
Web of Data Usage Mining
 
The Web of data and web data commons
The Web of data and web data commonsThe Web of data and web data commons
The Web of data and web data commons
 
Introduction to Elastic with a hint of Symfony and Docker
Introduction to Elastic with a hint of Symfony and DockerIntroduction to Elastic with a hint of Symfony and Docker
Introduction to Elastic with a hint of Symfony and Docker
 
Mining a Large Web Corpus
Mining a Large Web CorpusMining a Large Web Corpus
Mining a Large Web Corpus
 
Semantic HTML
Semantic HTMLSemantic HTML
Semantic HTML
 
Clustering Search to Navigate A Case Study of the Canadian World Wide Web as ...
Clustering Search to Navigate A Case Study of the Canadian World Wide Web as ...Clustering Search to Navigate A Case Study of the Canadian World Wide Web as ...
Clustering Search to Navigate A Case Study of the Canadian World Wide Web as ...
 
A Web-scale Study of the Adoption and Evolution of the schema.org Vocabulary ...
A Web-scale Study of the Adoption and Evolution of the schema.org Vocabulary ...A Web-scale Study of the Adoption and Evolution of the schema.org Vocabulary ...
A Web-scale Study of the Adoption and Evolution of the schema.org Vocabulary ...
 
Sparql
SparqlSparql
Sparql
 
Drupal and Apache Stanbol
Drupal and Apache StanbolDrupal and Apache Stanbol
Drupal and Apache Stanbol
 
Linked data based semantic annotation using Drupal and Apache Stanbol
Linked data based semantic annotation using Drupal and Apache StanbolLinked data based semantic annotation using Drupal and Apache Stanbol
Linked data based semantic annotation using Drupal and Apache Stanbol
 
Querying Linked Data
Querying Linked DataQuerying Linked Data
Querying Linked Data
 
An Introduction to the Open Archives Initiative Object Reuse and Exchange (OA...
An Introduction to the Open Archives Initiative Object Reuse and Exchange (OA...An Introduction to the Open Archives Initiative Object Reuse and Exchange (OA...
An Introduction to the Open Archives Initiative Object Reuse and Exchange (OA...
 
Querying data on the Web – client or server?
Querying data on the Web – client or server?Querying data on the Web – client or server?
Querying data on the Web – client or server?
 
Tutorial Linked APIs
Tutorial Linked APIsTutorial Linked APIs
Tutorial Linked APIs
 
Building Linked Data Applications
Building Linked Data ApplicationsBuilding Linked Data Applications
Building Linked Data Applications
 
London HUG
London HUGLondon HUG
London HUG
 
The Digital Cavemen of Linked Lascaux
The Digital Cavemen of Linked LascauxThe Digital Cavemen of Linked Lascaux
The Digital Cavemen of Linked Lascaux
 
Documents, services, and data on the web
Documents, services, and data on the webDocuments, services, and data on the web
Documents, services, and data on the web
 
Null 1
Null 1Null 1
Null 1
 

Andere mochten auch

Introduction To Linked Data
Introduction To Linked DataIntroduction To Linked Data
Introduction To Linked Data
Leigh Dodds
 

Andere mochten auch (14)

The Web’s Rich Tapestry
The Web’s Rich TapestryThe Web’s Rich Tapestry
The Web’s Rich Tapestry
 
Authoritative Whats That Who Says
Authoritative Whats That Who SaysAuthoritative Whats That Who Says
Authoritative Whats That Who Says
 
Introduction To Linked Data
Introduction To Linked DataIntroduction To Linked Data
Introduction To Linked Data
 
News Innovation Lightning Talk
News Innovation Lightning TalkNews Innovation Lightning Talk
News Innovation Lightning Talk
 
Bath: Hacked: open data, the arts and cultural heritage
Bath: Hacked: open data, the arts and cultural heritageBath: Hacked: open data, the arts and cultural heritage
Bath: Hacked: open data, the arts and cultural heritage
 
Ignite for Good: Why I Love Open Data and You Should Too
Ignite for Good: Why I Love Open Data and You Should TooIgnite for Good: Why I Love Open Data and You Should Too
Ignite for Good: Why I Love Open Data and You Should Too
 
Digital Grafitti for Digital Cities
Digital Grafitti for Digital CitiesDigital Grafitti for Digital Cities
Digital Grafitti for Digital Cities
 
Time Travelling with Open Data
Time Travelling with Open DataTime Travelling with Open Data
Time Travelling with Open Data
 
Introduction to Open Data & Linked Data
Introduction to Open Data & Linked DataIntroduction to Open Data & Linked Data
Introduction to Open Data & Linked Data
 
Why I love open data and you should too
Why I love open data and you should tooWhy I love open data and you should too
Why I love open data and you should too
 
Blank
BlankBlank
Blank
 
The Modern Palimpsest
The Modern PalimpsestThe Modern Palimpsest
The Modern Palimpsest
 
Data Foundations for Digital Cities
Data Foundations for Digital CitiesData Foundations for Digital Cities
Data Foundations for Digital Cities
 
Swirl
SwirlSwirl
Swirl
 

Ähnlich wie Getting Started With The Talis Platform

SemanticWeb Nuts 'n Bolts
SemanticWeb Nuts 'n BoltsSemanticWeb Nuts 'n Bolts
SemanticWeb Nuts 'n Bolts
Rinke Hoekstra
 

Ähnlich wie Getting Started With The Talis Platform (20)

Slug: A Semantic Web Crawler
Slug: A Semantic Web CrawlerSlug: A Semantic Web Crawler
Slug: A Semantic Web Crawler
 
Semantic Web
Semantic WebSemantic Web
Semantic Web
 
Apache Solr
Apache SolrApache Solr
Apache Solr
 
DC-2008 Tutorial 3 - Dublin Core and other metadata schemas
DC-2008 Tutorial 3 - Dublin Core and other metadata schemasDC-2008 Tutorial 3 - Dublin Core and other metadata schemas
DC-2008 Tutorial 3 - Dublin Core and other metadata schemas
 
REST dojo Comet
REST dojo CometREST dojo Comet
REST dojo Comet
 
Catacomb Apachecon Fast Feather 2008
Catacomb Apachecon Fast Feather 2008Catacomb Apachecon Fast Feather 2008
Catacomb Apachecon Fast Feather 2008
 
Solr Presentation
Solr PresentationSolr Presentation
Solr Presentation
 
Culture Geeks Feb talk: Adventures in Linked Data Land
Culture Geeks Feb talk: Adventures in Linked Data LandCulture Geeks Feb talk: Adventures in Linked Data Land
Culture Geeks Feb talk: Adventures in Linked Data Land
 
RDFa Introductory Course Session 2/4 How RDFa
RDFa Introductory Course Session 2/4 How RDFaRDFa Introductory Course Session 2/4 How RDFa
RDFa Introductory Course Session 2/4 How RDFa
 
How RDFa works
How RDFa worksHow RDFa works
How RDFa works
 
SemanticWeb Nuts 'n Bolts
SemanticWeb Nuts 'n BoltsSemanticWeb Nuts 'n Bolts
SemanticWeb Nuts 'n Bolts
 
Data in RDF
Data in RDFData in RDF
Data in RDF
 
Semantic Web And Coldfusion
Semantic Web And ColdfusionSemantic Web And Coldfusion
Semantic Web And Coldfusion
 
Facet: Building Web Pages with SPARQL
Facet: Building Web Pages with SPARQLFacet: Building Web Pages with SPARQL
Facet: Building Web Pages with SPARQL
 
Hacia la Internet del Futuro: Web Semántica y Open Linked Data, Parte 2
Hacia la Internet del Futuro: Web Semántica y Open Linked Data, Parte 2Hacia la Internet del Futuro: Web Semántica y Open Linked Data, Parte 2
Hacia la Internet del Futuro: Web Semántica y Open Linked Data, Parte 2
 
Exploiter le Web Semantic, le comprendre et y contribuer
Exploiter le Web Semantic, le comprendre et y contribuerExploiter le Web Semantic, le comprendre et y contribuer
Exploiter le Web Semantic, le comprendre et y contribuer
 
Sword v2 at UKCoRR
Sword v2 at UKCoRRSword v2 at UKCoRR
Sword v2 at UKCoRR
 
Improving Human–Semantic Web Interaction: The Rhizomer Experience
Improving Human–Semantic Web Interaction: The Rhizomer ExperienceImproving Human–Semantic Web Interaction: The Rhizomer Experience
Improving Human–Semantic Web Interaction: The Rhizomer Experience
 
The Semantic Web An Introduction
The Semantic Web An IntroductionThe Semantic Web An Introduction
The Semantic Web An Introduction
 
Web Topics
Web TopicsWeb Topics
Web Topics
 

Mehr von Leigh Dodds

Creating APIs over RDF
Creating APIs over RDFCreating APIs over RDF
Creating APIs over RDF
Leigh Dodds
 
Creating APIs over RDF
Creating APIs over RDFCreating APIs over RDF
Creating APIs over RDF
Leigh Dodds
 

Mehr von Leigh Dodds (20)

Being a data magpie
Being a data magpieBeing a data magpie
Being a data magpie
 
How you (yes, you!) can contribute to open data
How you (yes, you!) can contribute to open dataHow you (yes, you!) can contribute to open data
How you (yes, you!) can contribute to open data
 
Accessible Bath Training
Accessible Bath TrainingAccessible Bath Training
Accessible Bath Training
 
Accessible Bath
Accessible BathAccessible Bath
Accessible Bath
 
Cheap bots done quick lightning talk
Cheap bots done quick lightning talkCheap bots done quick lightning talk
Cheap bots done quick lightning talk
 
Open data in bath
Open data in bathOpen data in bath
Open data in bath
 
Bath: Hacked Learning Night: Introduction to CartoDB
Bath: Hacked Learning Night: Introduction to CartoDBBath: Hacked Learning Night: Introduction to CartoDB
Bath: Hacked Learning Night: Introduction to CartoDB
 
Dungeons and Dragons and Data
Dungeons and Dragons and DataDungeons and Dragons and Data
Dungeons and Dragons and Data
 
Love the Environment Pre-Meetup
Love the Environment Pre-MeetupLove the Environment Pre-Meetup
Love the Environment Pre-Meetup
 
Introduction to Open Data & Bath: Hacked
Introduction to Open Data & Bath: HackedIntroduction to Open Data & Bath: Hacked
Introduction to Open Data & Bath: Hacked
 
Oil and Water: When Data Licences Don't Mix
Oil and Water: When Data Licences Don't MixOil and Water: When Data Licences Don't Mix
Oil and Water: When Data Licences Don't Mix
 
Linked Data Patterns
Linked Data PatternsLinked Data Patterns
Linked Data Patterns
 
Layered Data: An Example
Layered Data: An ExampleLayered Data: An Example
Layered Data: An Example
 
Linked Data: turning the web into a context graph
Linked Data: turning the web into a context graphLinked Data: turning the web into a context graph
Linked Data: turning the web into a context graph
 
The RDF Report Card: Beyond the Triple Count
The RDF Report Card: Beyond the Triple CountThe RDF Report Card: Beyond the Triple Count
The RDF Report Card: Beyond the Triple Count
 
Kasabi Linked Data Marketplace
Kasabi Linked Data MarketplaceKasabi Linked Data Marketplace
Kasabi Linked Data Marketplace
 
Creating APIs over RDF
Creating APIs over RDFCreating APIs over RDF
Creating APIs over RDF
 
Creating APIs over RDF
Creating APIs over RDFCreating APIs over RDF
Creating APIs over RDF
 
Challenges & Opportunities for Linked Data
Challenges & Opportunities for Linked DataChallenges & Opportunities for Linked Data
Challenges & Opportunities for Linked Data
 
Fanhu.bz
Fanhu.bzFanhu.bz
Fanhu.bz
 

Kürzlich hochgeladen

Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
PECB
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
Chris Hunter
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
kauryashika82
 

Kürzlich hochgeladen (20)

Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Asian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxAsian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptx
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
Role Of Transgenic Animal In Target Validation-1.pptx
Role Of Transgenic Animal In Target Validation-1.pptxRole Of Transgenic Animal In Target Validation-1.pptx
Role Of Transgenic Animal In Target Validation-1.pptx
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 

Getting Started With The Talis Platform

  • 1.
  • 2.
  • 4. Software as a Service Multi-Tenant Data Storage Service
  • 5. Unstructured Data Storage e.g. binary files, including images, documents, etc
  • 6. Structured Data Storage RDF metadata
  • 7. Access Control All data is open (to read) by default Configurable access options
  • 8. Full-Text Searching and Querying
  • 10. Platform Architecture Web API Metabox Contentbox
  • 11. REST, RDF Authentication & Authorization Content Negotiation Core Concepts aka “The Science Bit”
  • 12. REST Re presentational S tate T ransfer Correct Use of HTTP
  • 14. Interact with resources using HTTP GET = read PUT = write POST = update/modify DELETE = delete
  • 15. Use HTTP Response Codes 200 = OK 201 = Created (new resource) 202 = Accepted (for processing) 400 = Bad Request 500 = Server Error
  • 16. Mime Types Used to identifiy content & meaning of request and response body
  • 17. Content Negotiation Majority of services support multiple output options, list varies by resource Accept header output parameter
  • 18.
  • 19. Authentication HTTP Digest Authentication
  • 21. Authorization By default stores are world-readable, Store owner writable Customisable roles and privileges per-Store
  • 22. Review of the RDF Model
  • 23. Apollo 11 was launched from Cape Canaveral
  • 24. Apollo 11 was launched from Cape Canaveral Subject Predicate Object
  • 25. <http://purl.org/net/schemas/space/spacecraft/apollo-11> <http://purl.org/net/schemas/space/launchsite> <http://purl.org/net/schemas/space/launchsite/capecanaveral>.
  • 26. space: spacecraft/apollo-11 space: launchsite space: launchsite/capecanaveral.
  • 27. space:spacecraft/apollo-11 space:launchsite space:launchsite/capecanaveral. space:spacecraft/apollo-11 rdfs:label “Apollo 11” . space:launchsite/capecanaveral rdfs:label “Cape Canaveral” .
  • 28.  
  • 29.  
  • 31. Good for Semi-structured Data “Schema-Free” Very Flexible
  • 32. Extensible New properties New resources New types of resource New statements
  • 33. Encourages Convergence Reuse of vocabularies (i.e. properties) Reuse of identifiers (i.e. talk about the same things)
  • 34. Simplifies Data Integration and Aggregation Shared identifiers Common data model Common query language Common data formats
  • 35. Several Different Ways to Serialize RDF Optimized for different purposes
  • 36. Turtle Simple to read and hand-author Used in SPARQL query language
  • 37. @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> @prefix space: <http://purl.org/net/schemas/space/> @ @prefix dc: <http://purl.org/dc/elements/1.1/> <http://purl.org/net/schemas/space/spacecraft/1969-059A> rdf:type <http://purl.org/net/schemas/space/Spacecraft>; dc:description &quot;Apollo 11 was…”; space:agency &quot;United States&quot; .
  • 38. RDF/XML Best for data interchange Harder to read
  • 39. <rdf:RDF xmlns:j.0=&quot;http://xmlns.com/foaf/0.1/“ xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; xmlns:space=&quot;http://purl.org/net/schemas/space/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xml:base=&quot;http://purl.org/net/schemas/space&quot;> <rdf:Description rdf:about=&quot;/spacecraft/1969-059A&quot;> <dc:description>Apollo 11 was…</dc:description> <rdf:type rdf:resource=&quot;http://purl.org/net/schemas/space/Spacecraft&quot;/> <space:agency>United States</space:agency> </rdf:Description> </rdf:RDF>
  • 40. The Content Box Managing unstructured, binary data
  • 41. Store any stream of binary data Images, documents, Javascript, etc
  • 42. Full HTTP Caching Support ETags Efficient retrieval Conditional updates
  • 43. Server or Client Assignment of Identifiers Provides full control over how URIs assigned
  • 44.
  • 47. Metadata for Contentbox Resources Minimum is URI and ETag Extract height & width of images … more metadata extraction in future
  • 48. The Meta Box Managing structured metadata
  • 49. Full RDF Data Storage Create, read, update, delete RDF resources Query RDF data
  • 50. Configurable Full Text Indexing of RDF Indexes updated whenever new metadata added
  • 51. Versioned and Un-Versioned Updates By submitting data to separate resources Maintain audit trail
  • 52. Can be Divided into Sub-Graphs Separate access control options
  • 53.
  • 54. Storing RDF POST application/rdf+xml Changes saved immediately Search indexing asynchronous
  • 55. Triples are Merged into Store Can catch out the unwary Updates happen through separate mechanism
  • 56. Retrieving Metadata /meta?about=…URI… Can select RDF serialization
  • 57. Updating Resources POST application/vnd.talis.changeset+xml
  • 58. ChangeSets Vocabulary that specifies removals/additions to an RDF graph
  • 59.
  • 60.
  • 61.
  • 62. Versioned Updates POST to /meta/changesets Apply update and stores changeset for later retrieval
  • 63. Batch Updates Combine several changesets into single POST Linked together to define ordering
  • 64. <rdf:RDF xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; xmlns:cs=&quot;http://purl.org/vocab/changeset/schema#&quot;> <cs:ChangeSet rdf:about=&quot;http://example.com/changesets/1&quot;> <cs:subjectOfChange rdf:resource=&quot;http://purl.org/net/schema/space/launch/1969-059&quot;/> <cs:changeReason>More accurate launch time</cs:changeReason> < cs:precedingChangeset rdf:resource=&quot; http://example.com/changesets/2 &quot;/> <!– changes --> </cs:ChangeSet> <cs:ChangeSet rdf:about=&quot; http://example.com/changesets/2 &quot;> <cs:subjectOfChange rdf:resource=&quot;http://purl.org/net/schema/space/launch/1969-059&quot;/> <cs: precedingChangeset rdf:resource=&quot; http://example.com/changesets/3 &quot;/> <!– changes --> </cs:ChangeSet> <cs:ChangeSet rdf:about=&quot; http://example.com/changesets/3 &quot;> <cs:subjectOfChange rdf:resource=&quot;http://purl.org/net/schema/space/spacecraft/1969-059D&quot;/> <!– changes --> ... </cs:ChangeSet> </rdf:RDF>
  • 65. Data Extraction & Exploration with SPARQL
  • 66. SPARQL RDF query language; HTTP protocol; Results format 4 different forms of query
  • 67. ASK Test whether the graph contains some data of interest
  • 68. #Was there a launch on 16 th July 1969? PREFIX space: <http://purl.org/net/schemas/space/> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> ASK WHERE { ?launch space:launched &quot;1969-07-16&quot;^^xsd:date. }
  • 69. <?xml version=&quot;1.0&quot;?> <sparql xmlns=&quot;http://www.w3.org/2005/sparql-results#&quot;> <head> </head> <boolean>true</boolean> </sparql>
  • 70. DESCRIBE Generate an RDF description of a resource(s)
  • 71. #Describe launch(es) that occurred on 16 th July 1969 PREFIX space: <http://purl.org/net/schemas/space/> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> DESCRIBE ?launch WHERE { ?launch space:launched &quot;1969-07-16&quot;^^xsd:date. }
  • 72. #Describe spacecraft launched on 16 th July 1969 PREFIX space: <http://purl.org/net/schemas/space/> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> DESCRIBE ?spacecraft WHERE { ?launch space:launched &quot;1969-07-16&quot;^^xsd:date. ?spacecraft space:launch ?launch. }
  • 73. CONSTRUCT Create a custom RDF graph based on query criteria
  • 74. PREFIX space: <http://purl.org/net/schemas/space/> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> PREFIX foaf: <http://xmlns.com/foaf/0.1/> CONSTRUCT { ?spacecraft foaf:name ?name; space:agency ?agency; space:mass ?mass. } WHERE { ?launch space:launched &quot;1969-07-16&quot;^^xsd:date. ?spacecraft space:launch ?launch; foaf:name ?name; space:agency ?agency; space:mass ?mass. }
  • 75. SELECT SQL style result set retrieval
  • 76. PREFIX space: <http://purl.org/net/schemas/space/> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?name ?agency ?mass WHERE { ?launch space:launched &quot;1969-07-16&quot;^^xsd:date. ?spacecraft space:launch ?launch; foaf:name ?name; space:agency ?agency; space:mass ?mass. }
  • 77. …as XML <?xml version=&quot;1.0&quot;?> <sparql xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; xmlns=&quot;http://www.w3.org/2005/sparql-results#&quot; > <head> <variable name=&quot;name&quot;/> <variable name=&quot;agency&quot;/> <variable name=&quot;mass&quot;/> </head> <results> <result> <binding name=&quot;name&quot;> <literal>Apollo 11 Command and Service Module (CSM)</literal> </binding> <binding name=&quot;agency&quot;> <literal>United States</literal> </binding> <binding name=&quot;mass&quot;> <literal>28801.0</literal> </binding> </result> <!– more results --> </results> </sparql>
  • 78. …as JSON { &quot;head&quot;: { &quot;vars&quot;: [ &quot;name&quot; , &quot;agency&quot; , &quot;mass&quot; ] } , &quot;results&quot;: { &quot;bindings&quot;: [ { &quot;name&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;Apollo 11 Command and Service Module (CSM)&quot; } , &quot;agency&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;United States&quot; } , &quot;mass&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;28801.0&quot; } } , { &quot;name&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;Apollo 11 SIVB&quot; } , &quot;agency&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;United States&quot; } , &quot;mass&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;13300.0&quot; } } , { &quot;name&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;Apollo 11 Lunar Module / EASEP&quot; } , &quot;agency&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;United States&quot; } , &quot;mass&quot;: { &quot;type&quot;: &quot;literal&quot; , &quot;value&quot;: &quot;15065.0&quot; } } ] } }
  • 79. Tour of Extra Features Searching, browsing, augmentation
  • 80. Searching Full text index over RDF literals Configurable indexing options
  • 81. /items?query=[query] &max=[10] &offset=[0] &sort=[comma-separated fieldnames] &xsl=[XSLT stylesheet] &content-type=[mimetype for XSLT results]
  • 82.
  • 83. Query Results RSS 1.0 feed OpenSearch extensions (paging, relevance) Full description of each resource
  • 84. <rdf:RDF xmlns=&quot;http://purl.org/rss/1.0/&quot; xmlns:foaf=&quot;http://xmlns.com/foaf/0.1/&quot; xmlns:relevance=&quot;http://a9.com/-/opensearch/extensions/relevance/1.0/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; xmlns:os=&quot;http://a9.com/-/spec/opensearch/1.1/&quot; xmlns:ns.1=&quot;http://purl.org/net/schemas/space/&quot;> <channel rdf:about=“…&quot;> <title>lunar</title> <link>…</link> <description>Results of a search for lunar on space</description> <items> <rdf:Seq rdf:about=&quot;urn:uuid:eae4ead8-ca6a-4b12-b714-fe631d38e447&quot;> <rdf:li resource=&quot;http://purl.org/net/schemas/space/spacecraft/LUNAR-A&quot; /> </rdf:Seq> </items> < os:startIndex >0</ os:startIndex > < os:itemsPerPage >10</ os:itemsPerPage > < os:totalResults >118</ os:totalResults > </channel> <item rdf:about=&quot;http://purl.org/net/schemas/space/spacecraft/LUNAR-A&quot;> <title>Item</title> <link>http://purl.org/net/schemas/space/spacecraft/LUNAR-A</link> < relevance:score >1.0</ relevance:score > <foaf:name>Lunar-A</foaf:name> <space:mass>520.0</space:mass> <space:internationalDesignator>LUNAR-A</space:internationalDesignator> </item> </rdf:RDF>
  • 85. Facetted Search Similar to Amazon product search, etc Group search results by specific fields
  • 87. <facet-results xmlns=&quot;http://schemas.talis.com/2007/facet-results#&quot;> <head> <query>name:luna*</query> <fields>agency</fields> <top>10</top> <output>xml</output> </head> <fields> <field name=&quot;agency&quot;> <term value=&quot;U.S.S.R&quot; number=&quot;25&quot; facet-uri=“…&quot; search-uri=“…&quot;/> <term value=&quot;United States&quot; number=&quot;9&quot; facet-uri=“…&quot; search-uri=“…&quot;/> <term value=&quot;Japan&quot; number=&quot;1&quot; facet-uri=“…&quot; search-uri=“…&quot;/> <term value=&quot;India&quot; number=&quot;1&quot; facet-uri=“…&quot; search-uri=“…&quot;/> </field> </fields> </facet-results>
  • 88. Augmentation Annotate an RSS 1.0 feed against a store Automatically add a description of each referenced resource
  • 89. Store Administration Job Control, Store Configuration
  • 90. Field Predicate Map Associate a short name to a RDF property Properties in field predicate map are indexed for searching Short name used in query syntax, sort order, etc
  • 91. <rdf:RDF xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; xmlns:rdfs=&quot;http://www.w3.org/2000/01/rdf-schema#&quot; xmlns:bf=&quot;http://schemas.talis.com/2006/bigfoot/configuration#&quot; xmlns:frm=&quot;http://schemas.talis.com/2006/frame/schema#“ xml:base=“http://api.talis.com/stores/space”> <bf:FieldPredicateMap rdf:about=&quot;/indexes/default/fpmaps/default&quot;> <frm:mappedDatatypeProperty> <rdf:Description rdf:about=&quot;/indexes/default/fpmaps/default#agency&quot;> <frm:property rdf:resource=&quot;http://purl.org/net/schema/space/agency&quot;/> <frm:name>agency</frm:name> </rdf:Description> </frm:mappedDatatypeProperty> </bf:FieldPredicateMap> </rdf:RDF>
  • 92. Query Profile Assign weightings to fields for searching
  • 93. <rdf:RDF xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; xmlns:rdfs=&quot;http://www.w3.org/2000/01/rdf-schema#&quot; xmlns:bf=&quot;http://schemas.talis.com/2006/bigfoot/configuration#&quot; xmlns:frm=&quot;http://schemas.talis.com/2006/frame/schema#“ xml:base=“http://api.talis.com/stores/space”> <bf:QueryProfile rdf:about=&quot;&quot;> <bf:fieldWeight> <rdf:Description rdf:about=&quot;/indexes/default/queryprofiles/default#name&quot;> <bf:weight>10.0</bf:weight> <frm:name>name</frm:name> </rdf:Description> </bf:fieldWeight> <bf:fieldWeight> <rdf:Description rdf:about=&quot;/indexes/default/queryprofiles/default#agency&quot;> <bf:weight>5.0</bf:weight> <frm:name>agency</frm:name> </rdf:Description> </bf:fieldWeight> </bf:QueryProfile> </rdf:RDF>
  • 94. Job Control Reindex, Reset, Snapshot, Restore POST Job Request to /jobs
  • 95. <rdf:RDF xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; xmlns:rdfs=&quot;http://www.w3.org/2000/01/rdf-schema#&quot; xmlns:bf=&quot;http://schemas.talis.com/2006/bigfoot/configuration#&quot;> <bf:JobRequest> <rdfs:label>Reset the data in my store</rdfs:label> <bf:jobType rdf:resource=&quot;http://schemas.talis.com/2006/bigfoot/configuration#ResetDataJob&quot;/> <bf:startTime>2008-12-01T15:10:00Z</bf:startTime> </bf:JobRequest> </rdf:RDF>
  • 96. Jobs Each job is a resource, with a URI GET to monitor status, DELETE to remove
  • 97. Summing Up Summary, Additional Resources
  • 98.
  • 99.
  • 100.