getting started with the talis platform
DESCRIPTION
Developer training session providing an overview of the core features and services of the Talis Platform. Includes basic overview of REST and RDFTRANSCRIPT
![Page 1: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/1.jpg)
Getting Started with the Talis PlatformLeigh Dodds
Platform Programme Manager
Talis
December 2008
http://creativecommons.org/licenses/by/2.0/uk/
![Page 2: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/2.jpg)
shared innovation
Agenda
• Platform Overview• Core Concepts• Review of the RDF Model• Managing binary data• Managing structured metadata• Exploring RDF data with SPARQL• Extra Features• Store Administration• Summary
![Page 3: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/3.jpg)
Platform Overview
![Page 4: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/4.jpg)
shared innovation
Software as a Service
Multi-Tenant Data Storage Service
![Page 5: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/5.jpg)
shared innovation
Unstructured Data Storage
e.g. binary files, including images, documents, etc
![Page 6: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/6.jpg)
shared innovation
Structured Data Storage
RDF metadata
![Page 7: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/7.jpg)
shared innovation
Access Control
All data is open (to read) by defaultConfigurable access options
![Page 8: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/8.jpg)
shared innovation
Full-Text Searching and Querying
![Page 9: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/9.jpg)
shared innovation
Standards Compliance
RDF, SPARQL, HTTP
![Page 10: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/10.jpg)
shared innovation
Platform Architecture
Web API
Metabox
Contentbox
![Page 11: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/11.jpg)
REST, RDFAuthentication & AuthorizationContent Negotiation
Core Conceptsaka “The Science Bit”
![Page 12: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/12.jpg)
shared innovation
REST
Representational State Transfer
Correct Use of HTTP
![Page 13: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/13.jpg)
shared innovation
Resource-Centric API
Everything has a unique URI
![Page 14: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/14.jpg)
shared innovation
Interact with resources using HTTP
GET = readPUT = write
POST = update/modifyDELETE = delete
![Page 15: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/15.jpg)
shared innovation
Use HTTP Response Codes
200 = OK201 = Created (new resource)
202 = Accepted (for processing)400 = Bad Request500 = Server Error
![Page 16: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/16.jpg)
shared innovation
Mime Types
Used to identifiy content & meaning of request and response body
![Page 17: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/17.jpg)
shared innovation
Content Negotiation
Majority of services support multiple output options, list varies by resource
Accept headeroutput parameter
![Page 18: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/18.jpg)
shared innovation
Our Service Checklist
Consistent URI structureEvery service has human interfacePlain text error messages for easy debuggingCacheable…etc
![Page 19: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/19.jpg)
shared innovation
Authentication
HTTP Digest Authentication
![Page 20: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/20.jpg)
shared innovation
Authentication Example
![Page 21: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/21.jpg)
shared innovation
Authorization
By default stores are world-readable, Store owner writable
Customisable roles and privileges per-Store
![Page 22: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/22.jpg)
Review of the RDF Model
![Page 23: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/23.jpg)
shared innovation
Apollo 11 was launched from Cape Canaveral
![Page 24: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/24.jpg)
shared innovation
Apollo 11 was launched from Cape Canaveral
Subject Predicate Object
![Page 25: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/25.jpg)
shared innovation
<http://purl.org/net/schemas/space/spacecraft/apollo-11> <http://purl.org/net/schemas/space/launchsite>
<http://purl.org/net/schemas/space/launchsite/capecanaveral>.
![Page 26: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/26.jpg)
shared innovation
space:spacecraft/apollo-11 space:launchsite
space:launchsite/capecanaveral.
![Page 27: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/27.jpg)
shared innovation
space:spacecraft/apollo-11 space:launchsite space:launchsite/capecanaveral.
space:spacecraft/apollo-11 rdfs:label “Apollo 11”.
space:launchsite/capecanaveral rdfs:label “Cape Canaveral”.
![Page 28: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/28.jpg)
shared innovation
![Page 29: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/29.jpg)
shared innovation
![Page 30: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/30.jpg)
shared innovation
Benefits of RDF?
![Page 31: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/31.jpg)
shared innovation
Good for Semi-structured Data
“Schema-Free”Very Flexible
![Page 32: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/32.jpg)
shared innovation
Extensible
New propertiesNew resources
New types of resourceNew statements
![Page 33: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/33.jpg)
shared innovation
Encourages Convergence
Reuse of vocabularies (i.e. properties)Reuse of identifiers (i.e. talk about the same things)
![Page 34: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/34.jpg)
shared innovation
Simplifies Data Integration and Aggregation
Shared identifiersCommon data model
Common query languageCommon data formats
![Page 35: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/35.jpg)
shared innovation
Several Different Ways to Serialize RDF
Optimized for different purposes
![Page 36: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/36.jpg)
shared innovation
Turtle
Simple to read and hand-authorUsed in SPARQL query language
![Page 37: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/37.jpg)
shared innovation
@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 "Apollo 11 was…”; space:agency "United States" .
![Page 38: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/38.jpg)
shared innovation
RDF/XML
Best for data interchangeHarder to read
![Page 39: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/39.jpg)
shared innovation
<rdf:RDF xmlns:j.0="http://xmlns.com/foaf/0.1/“ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:space="http://purl.org/net/schemas/space/" xmlns:dc="http://purl.org/dc/elements/1.1/" xml:base="http://purl.org/net/schemas/space">
<rdf:Description rdf:about="/spacecraft/1969-059A">
<dc:description>Apollo 11 was…</dc:description> <rdf:type rdf:resource="http://purl.org/net/schemas/space/Spacecraft"/> <space:agency>United States</space:agency>
</rdf:Description>
</rdf:RDF>
![Page 40: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/40.jpg)
The Content BoxManaging unstructured, binary data
![Page 41: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/41.jpg)
shared innovation
Store any stream of binary data
Images, documents, Javascript, etc
![Page 42: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/42.jpg)
shared innovation
Full HTTP Caching Support
ETagsEfficient retrieval
Conditional updates
![Page 43: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/43.jpg)
shared innovation
Server or Client Assignment of Identifiers
Provides full control over how URIs assigned
![Page 44: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/44.jpg)
shared innovation
ContentBox URLs
• /storename/items– The Contentbox container
• /storename/items/<id>– An individual item
![Page 45: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/45.jpg)
shared innovation
Adding Content
![Page 46: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/46.jpg)
shared innovation
Deleting Content
![Page 47: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/47.jpg)
shared innovation
Metadata for Contentbox Resources
Minimum is URI and ETagExtract height & width of images
…more metadata extraction in future
![Page 48: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/48.jpg)
The Meta Box
Managing structured metadata
![Page 49: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/49.jpg)
shared innovation
Full RDF Data Storage
Create, read, update, delete RDF resourcesQuery RDF data
![Page 50: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/50.jpg)
shared innovation
Configurable Full Text Indexing of RDF
Indexes updated whenever new metadata added
![Page 51: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/51.jpg)
shared innovation
Versioned and Un-Versioned Updates
By submitting data to separate resourcesMaintain audit trail
![Page 52: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/52.jpg)
shared innovation
Can be Divided into Sub-Graphs
Separate access control options
![Page 53: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/53.jpg)
shared innovation
Metabox URLs
• /storename/meta– The metabox
• /storename/meta/changesets– The collection of changesets associated with this metabox
• /storename/meta/graphs – The collection of sub-graphs
• /storename/meta/graphs/{id}– A sub-graph
• /storename/meta/graphs/{id}/changesets – The collection of changesets associated with a sub-graph
• /storename/services/sparql– SPARQL endpoint for metabox
• /storename/services/multisparql– SPARQL endpoint for querying across all sub-graphs
![Page 54: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/54.jpg)
shared innovation
Storing RDF
POST application/rdf+xmlChanges saved immediately
Search indexing asynchronous
![Page 55: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/55.jpg)
shared innovation
Triples are Merged into Store
Can catch out the unwaryUpdates happen through separate mechanism
![Page 56: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/56.jpg)
shared innovation
Retrieving Metadata
/meta?about=…URI…Can select RDF serialization
![Page 57: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/57.jpg)
shared innovation
Updating Resources
POST application/vnd.talis.changeset+xml
![Page 58: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/58.jpg)
shared innovation
ChangeSets
Vocabulary that specifies removals/additions to an RDF graph
![Page 59: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/59.jpg)
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cs="http://purl.org/vocab/changeset/schema#"> <cs:ChangeSet rdf:about="http://example.com/changesets#change"> <cs:subjectOfChange rdf:resource="http://purl.org/net/schema/space/launch/1969-059"/> <cs:createdDate>2008-12-08T00:00:00Z</cs:createdDate> <cs:creatorName>Leigh Dodds</cs:creatorName> <cs:changeReason>More accurate launch time</cs:changeReason> <cs:removal> <rdf:Statement> <rdf:subject rdf:resource="http://purl.org/net/schema/space/launch/1969-
059"/> <rdf:predicate rdf:resource="http://purl.org/net/schema/space/launched"/> <rdf:object>1969-07-16</rdf:object> </rdf:Statement> </cs:removal> <cs:addition> <rdf:Statement> <rdf:subject rdf:resource="http://purl.org/net/schema/space/launch/1969-
059"/> <rdf:predicate rdf:resource="http://purl.org/net/schema/space/launched"/> <rdf:object>1969-07-16T13:32:00</rdf:object> </rdf:Statement> </cs:addition> </cs:ChangeSet></rdf:RDF>
![Page 60: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/60.jpg)
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cs="http://purl.org/vocab/changeset/schema#"> <cs:ChangeSet rdf:about="http://example.com/changesets#change"> <cs:subjectOfChange rdf:resource="http://purl.org/net/schema/space/launch/1969-059"/> <cs:createdDate>2008-12-08T00:00:00Z</cs:createdDate> <cs:creatorName>Leigh Dodds</cs:creatorName> <cs:changeReason>More accurate launch time</cs:changeReason> <cs:removal> <rdf:Statement> <rdf:subject rdf:resource="http://purl.org/net/schema/space/launch/1969-
059"/> <rdf:predicate
rdf:resource="http://purl.org/net/schema/space/launched"/> <rdf:object>1969-07-16</rdf:object> </rdf:Statement> </cs:removal> <cs:addition> <rdf:Statement> <rdf:subject rdf:resource="http://purl.org/net/schema/space/launch/1969-
059"/> <rdf:predicate rdf:resource="http://purl.org/net/schema/space/launched"/> <rdf:object>1969-07-16T13:32:00</rdf:object> </rdf:Statement> </cs:addition> </cs:ChangeSet></rdf:RDF>
![Page 61: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/61.jpg)
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cs="http://purl.org/vocab/changeset/schema#"> <cs:ChangeSet rdf:about="http://example.com/changesets#change"> <cs:subjectOfChange rdf:resource="http://purl.org/net/schema/space/launch/1969-059"/> <cs:createdDate>2008-12-08T00:00:00Z</cs:createdDate> <cs:creatorName>Leigh Dodds</cs:creatorName> <cs:changeReason>More accurate launch time</cs:changeReason> <cs:removal> <rdf:Statement> <rdf:subject rdf:resource="http://purl.org/net/schema/space/launch/1969-
059"/> <rdf:predicate rdf:resource="http://purl.org/net/schema/space/launched"/> <rdf:object>1969-07-16</rdf:object> </rdf:Statement> </cs:removal> <cs:addition> <rdf:Statement> <rdf:subject rdf:resource="http://purl.org/net/schema/space/launch/1969-
059"/> <rdf:predicate
rdf:resource="http://purl.org/net/schema/space/launched"/> <rdf:object>1969-07-16T13:32:00</rdf:object> </rdf:Statement> </cs:addition> </cs:ChangeSet></rdf:RDF>
![Page 62: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/62.jpg)
shared innovation
Versioned Updates
POST to /meta/changesetsApply update and stores changeset for later retrieval
![Page 63: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/63.jpg)
shared innovation
Batch Updates
Combine several changesets into single POSTLinked together to define ordering
![Page 64: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/64.jpg)
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cs="http://purl.org/vocab/changeset/schema#"> <cs:ChangeSet rdf:about="http://example.com/changesets/1"> <cs:subjectOfChange
rdf:resource="http://purl.org/net/schema/space/launch/1969-059"/>
<cs:changeReason>More accurate launch time</cs:changeReason> <cs:precedingChangeset rdf:resource="http://example.com/changesets/2"/> <!– changes --> </cs:ChangeSet> <cs:ChangeSet rdf:about="http://example.com/changesets/2"> <cs:subjectOfChange
rdf:resource="http://purl.org/net/schema/space/launch/1969-059"/>
<cs:precedingChangeset rdf:resource="http://example.com/changesets/3"/>
<!– changes --> </cs:ChangeSet> <cs:ChangeSet rdf:about="http://example.com/changesets/3"> <cs:subjectOfChange
rdf:resource="http://purl.org/net/schema/space/spacecraft/1969-059D"/> <!– changes -->... </cs:ChangeSet> </rdf:RDF>
![Page 65: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/65.jpg)
Data Extraction & Exploration with SPARQL
![Page 66: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/66.jpg)
shared innovation
SPARQL
RDF query language; HTTP protocol; Results format4 different forms of query
![Page 67: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/67.jpg)
shared innovation
ASK
Test whether the graph contains some data of interest
![Page 68: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/68.jpg)
shared innovation
#Was there a launch on 16th July 1969?
PREFIX space: <http://purl.org/net/schemas/space/>PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
ASK WHERE { ?launch space:launched "1969-07-16"^^xsd:date.}
![Page 69: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/69.jpg)
shared innovation
<?xml version="1.0"?><sparql xmlns="http://www.w3.org/2005/sparql-results#"> <head> </head> <boolean>true</boolean></sparql>
![Page 70: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/70.jpg)
shared innovation
DESCRIBE
Generate an RDF description of a resource(s)
![Page 71: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/71.jpg)
shared innovation
#Describe launch(es) that occurred on 16th July 1969
PREFIX space: <http://purl.org/net/schemas/space/>PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
DESCRIBE ?launch WHERE { ?launch space:launched "1969-07-16"^^xsd:date.}
![Page 72: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/72.jpg)
shared innovation
#Describe spacecraft launched on 16th July 1969
PREFIX space: <http://purl.org/net/schemas/space/>PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
DESCRIBE ?spacecraft WHERE {
?launch space:launched "1969-07-16"^^xsd:date.
?spacecraft space:launch ?launch.
}
![Page 73: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/73.jpg)
shared innovation
CONSTRUCT
Create a custom RDF graph based on query criteria
![Page 74: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/74.jpg)
shared innovation
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 "1969-07-16"^^xsd:date.
?spacecraft space:launch ?launch; foaf:name ?name; space:agency ?agency; space:mass ?mass. }
![Page 75: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/75.jpg)
shared innovation
SELECT
SQL style result set retrieval
![Page 76: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/76.jpg)
shared innovation
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 ?massWHERE {
?launch space:launched "1969-07-16"^^xsd:date.
?spacecraft space:launch ?launch; foaf:name ?name; space:agency ?agency; space:mass ?mass. }
![Page 77: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/77.jpg)
shared innovation
<?xml version="1.0"?><sparql xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2005/sparql-results#" > <head> <variable name="name"/> <variable name="agency"/> <variable name="mass"/> </head> <results> <result> <binding name="name"> <literal>Apollo 11 Command and Service Module (CSM)</literal> </binding> <binding name="agency"> <literal>United States</literal> </binding> <binding name="mass"> <literal>28801.0</literal> </binding> </result> <!– more results --> </results></sparql>
…as XML
![Page 78: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/78.jpg)
shared innovation
{ "head": { "vars": [ "name" , "agency" , "mass" ] } , "results": { "bindings": [ { "name": { "type": "literal" , "value": "Apollo 11 Command and Service Module (CSM)" } , "agency": { "type": "literal" , "value": "United States" } , "mass": { "type": "literal" , "value": "28801.0" } } , { "name": { "type": "literal" , "value": "Apollo 11 SIVB" } , "agency": { "type": "literal" , "value": "United States" } , "mass": { "type": "literal" , "value": "13300.0" } } , { "name": { "type": "literal" , "value": "Apollo 11 Lunar Module / EASEP" } , "agency": { "type": "literal" , "value": "United States" } , "mass": { "type": "literal" , "value": "15065.0" } } ] }}
…as JSON
![Page 79: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/79.jpg)
Tour of Extra Features
Searching, browsing, augmentation
![Page 80: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/80.jpg)
shared innovation
Searching
Full text index over RDF literalsConfigurable indexing options
![Page 81: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/81.jpg)
shared innovation
/items?query=[query] &max=[10] &offset=[0] &sort=[comma-separated fieldnames] &xsl=[XSLT stylesheet] &content-type=[mimetype for XSLT results]
![Page 82: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/82.jpg)
shared innovation
Query Syntax
• lunar
• luna*
• “apollo 11”
• lunar OR apollo
• name:apollo
• (lunar OR apollo) AND agency:united states
![Page 83: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/83.jpg)
shared innovation
Query Results
RSS 1.0 feedOpenSearch extensions (paging, relevance)
Full description of each resource
![Page 84: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/84.jpg)
<rdf:RDF xmlns="http://purl.org/rss/1.0/" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:relevance="http://a9.com/-/opensearch/extensions/relevance/1.0/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:os="http://a9.com/-/spec/opensearch/1.1/" xmlns:ns.1="http://purl.org/net/schemas/space/"> <channel rdf:about=“…"> <title>lunar</title> <link>…</link> <description>Results of a search for lunar on space</description> <items> <rdf:Seq rdf:about="urn:uuid:eae4ead8-ca6a-4b12-b714-fe631d38e447"> <rdf:li resource="http://purl.org/net/schemas/space/spacecraft/LUNAR-A" /> </rdf:Seq> </items> <os:startIndex>0</os:startIndex> <os:itemsPerPage>10</os:itemsPerPage> <os:totalResults>118</os:totalResults></channel>
<item rdf:about="http://purl.org/net/schemas/space/spacecraft/LUNAR-A"> <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>
![Page 85: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/85.jpg)
shared innovation
Facetted Search
Similar to Amazon product search, etcGroup search results by specific fields
![Page 86: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/86.jpg)
shared innovation
/services/facet?query=[query] &fields=[comma-separated fieldnames]
&top=[10] &format=[xml|html]
![Page 87: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/87.jpg)
<facet-results xmlns="http://schemas.talis.com/2007/facet-results#"> <head> <query>name:luna*</query>
<fields>agency</fields><top>10</top><output>xml</output>
</head> <fields> <field name="agency">
<term value="U.S.S.R" number="25" facet-uri=“…" search-uri=“…"/>
<term value="United States" number="9" facet-uri=“…" search-uri=“…"/>
<term value="Japan" number="1" facet-uri=“…" search-uri=“…"/>
<term value="India" number="1" facet-uri=“…" search-uri=“…"/>
</field> </fields></facet-results>
![Page 88: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/88.jpg)
shared innovation
Augmentation
Annotate an RSS 1.0 feed against a storeAutomatically add a description of each referenced
resource
![Page 89: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/89.jpg)
Store Administration
Job Control, Store Configuration
![Page 90: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/90.jpg)
shared innovation
Field Predicate Map
Associate a short name to a RDF propertyProperties in field predicate map are indexed for
searchingShort name used in query syntax, sort order, etc
![Page 91: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/91.jpg)
shared innovation
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:bf="http://schemas.talis.com/2006/bigfoot/configuration#" xmlns:frm="http://schemas.talis.com/2006/frame/schema#“ xml:base=“http://api.talis.com/stores/space”>
<bf:FieldPredicateMap rdf:about="/indexes/default/fpmaps/default">
<frm:mappedDatatypeProperty> <rdf:Description rdf:about="/indexes/default/fpmaps/default#agency">
<frm:property rdf:resource="http://purl.org/net/schema/space/agency"/> <frm:name>agency</frm:name>
</rdf:Description> </frm:mappedDatatypeProperty>
</bf:FieldPredicateMap>
</rdf:RDF>
![Page 92: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/92.jpg)
shared innovation
Query Profile
Assign weightings to fields for searching
![Page 93: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/93.jpg)
shared innovation
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:bf="http://schemas.talis.com/2006/bigfoot/configuration#" xmlns:frm="http://schemas.talis.com/2006/frame/schema#“xml:base=“http://api.talis.com/stores/space”> <bf:QueryProfile rdf:about="">
<bf:fieldWeight> <rdf:Description rdf:about="/indexes/default/queryprofiles/default#name"> <bf:weight>10.0</bf:weight> <frm:name>name</frm:name> </rdf:Description> </bf:fieldWeight> <bf:fieldWeight> <rdf:Description rdf:about="/indexes/default/queryprofiles/default#agency"> <bf:weight>5.0</bf:weight> <frm:name>agency</frm:name> </rdf:Description> </bf:fieldWeight> </bf:QueryProfile></rdf:RDF>
![Page 94: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/94.jpg)
shared innovation
Job Control
Reindex, Reset, Snapshot, Restore
POST Job Request to /jobs
![Page 95: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/95.jpg)
shared innovation
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:bf="http://schemas.talis.com/2006/bigfoot/configuration#">
<bf:JobRequest> <rdfs:label>Reset the data in my store</rdfs:label> <bf:jobType
rdf:resource="http://schemas.talis.com/2006/bigfoot/configuration#ResetDataJob"/> <bf:startTime>2008-12-01T15:10:00Z</bf:startTime> </bf:JobRequest> </rdf:RDF>
![Page 96: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/96.jpg)
shared innovation
Jobs
Each job is a resource, with a URI
GET to monitor status, DELETE to remove
![Page 97: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/97.jpg)
Summing Up
Summary, Additional Resources
![Page 98: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/98.jpg)
shared innovation
The Talis Platform…
• Provides a standards compliant storage infrastructure for structured and unstructured metadata
• Uses RDF to support widest possible variety of data models and integration options
• Allow managing of data assets through simple web APIs
• Offers a range of data extraction options including full-text searching, SPARQL, RSS augmentation
• Can be tailored to individual applications using the API
• Can be driven by scheduling jobs to perform data management tasks
• Is constantly evolving…
![Page 99: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/99.jpg)
shared innovation
Additional Resources
• API Reference– http://n2.talis.com/wiki/Platform_API
• Mailing List– http://groups.google.com/group/n2-dev
• Blog– http://blogs.talis.com/n2/
![Page 100: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/100.jpg)
shared innovation
Client Libraries (in various states of development)
• Moriarty– http://code.google.com/p/moriarty/
• Javascript/JQuery– http://n2.talis.com/wiki/Talis_jQuery_plugin
• Ruby Client– http://rubyforge.org/projects/talis-platform/
• Java Client– http://code.google.com/p/penry/
![Page 101: Getting Started With The Talis Platform](https://reader036.vdocuments.site/reader036/viewer/2022062303/55533aadb4c905e12e8b5154/html5/thumbnails/101.jpg)
shared innovation