JSON-LD, Schema.org, and Structured data

Download JSON-LD, Schema.org, and Structured data

Post on 10-Feb-2017

473 views

Category:

Software

1 download

TRANSCRIPT

PowerPoint PresentationNovember 13, 2015Semantic Modelling with JSON-LDSante J. AchilleSearch Marketing Consultant@sjachilleSearch Marketing SpecialistHas analyzed and optimized hundreds of websites on 20 years of hands-on professional activityLoves proverbs and traditions Motto: Why Be Normal?http://achille.name/@sjachillesante@achille.name TODAY WELL TALK ABOUT JSON-LD smxmilan.it@sjachille#SMX #22AThe biggest challenge for Search Engines? Reduce Uncertaintiy & Ambiguity smxmilan.it@sjachille#SMX #22ADATA: Values of qualitative or quantitative variables in raw or unorganized form such as alphabets, numbers, or symbols that refer to, or represent, conditions, ideas, or objects.Your web pages have an underlying meaning that people understand when they read the web pages.But search engines have a limited understanding of what is being discussed on those pages.Why use structured data? smxmilan.it@sjachille#SMX #22AWhy use structured data?By adding additional tags to the HTML of your web pages you can help search engines and other applications better understand your content and display it in a useful, relevant way. smxmilan.it@sjachille#SMX #22ARequirements smxmilan.it@sjachille#SMX #22AAttributes smxmilan.it@sjachille#SMX #22A smxmilan.it@sjachille#SMX #22Ahttp://schema.org/docs/full.html smxmilan.it@sjachille#SMX #22AJSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for machines to parse and generate. It is based on JSON is a text format that is completely language independent but uses conventions that are familiar to programmers of the C-family of languages, including C, C++, C#, Java, JavaScript, Perl, Python, and many others. These properties make JSON an ideal data-interchange language. smxmilan.it@sjachille#SMX #22AJSON-LD is a lightweight Linked Data format that is easy for humans to read and writehttp://www.w3.org/TR/2013/CR-json-ld-20130910/http://www.w3.org/TR/2013/CR-json-ld-api-20130910/SpecificationsExampleCreating semantic sites with Web Components and JSON-LD smxmilan.it@sjachille#SMX #22ASchema.org e JSON-LD smxmilan.it@sjachille#SMX #22ASchema.org AvatarDirector: James Cameron (born August 16, 1954) Science fiction Trailer smxmilan.it@sjachille#SMX #22AJSON-LD{ "@context": { "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "foaf": "http://xmlns.com/foaf/0.1/", "rel": "purl.org/vocab/relationship/", "schema": "https://www.schema.org/" }, "@id": "http://example.com/people/mario-rossi/", "@type" : "foaf:Person", "foaf:name": Mario Rossi", "foaf:based_near": "http://www.geonames.org/3333125", "rel:employerOf": "http://example.com/people/joe-smoe/", "schema:worksFor" : { "@type" : "schema:Organization", "schema:legalName" : Mario Rossi Inc.", "schema:vatID" : "XXXXXXXXX", "schema:email" : mario@rossi.com", "schema:telephone" : "+39.xxx xx xx xxx" } } } }} smxmilan.it@sjachille#SMX #22AStructured Data & JSON-LD smxmilan.it@sjachille#SMX #22AThe Resource Description Framework (RDF) is a framework for expressing information about resources. Resources can be anything, including documents, people, physical objects, and abstract concepts. http://www.w3.org/TR/rdf11-primer/ Information is represented by the Node-Arc smxmilan.it@sjachille#SMX #22AIn RDF the description of a resource is represented by a series of triples. The components of each triple are the Subject - Predicate ObjectA triple emulates the structure of a simple phrase such as "Sante live in L'Aquila smxmilan.it@sjachille#SMX #22AThe Subject of the triple is the URI, identifying the resource being describedThe Object may be a value (string, number, data, ) or the URI of another resource which is somehow related to the subjectThe Predicate explains the relationship between subject and object and is a URI chosen amongst those available in the various Vocabularies smxmilan.it@sjachille#SMX #22A{ "@context": { "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "foaf": "http://xmlns.com/foaf/0.1/", "rel": "purl.org/vocab/relationship/", "schema": "https://www.schema.org/" }, "@id": "http://example.com/people/mario-rossi/", "@type" : "foaf:Person", "foaf:name": Mario Rossi", "foaf:based_near": "http://www.geonames.org/3333125", "rel:employerOf": "http://example.com/people/mario-rossi/", "schema:worksFor" : { "@type" : "schema:Organization", "schema:legalName" : "Mario Rossi Srl", "schema:vatID" : "XXXXXXXXX", "schema:email" : mario.rossi@dominio.com", "schema:telephone" : "+39.123 45 67 890" } } } }}JSON-LD @work smxmilan.it@sjachille#SMX #22AJSON-LD Specification: http://www.w3.org/TR/json-ld/#syntax-tokens-and-keywords3.3 Syntax Tokens and Keywords@contextUsed to define the short-hand names that are used throughout a JSON-LD document @idUsed to uniquely identify things that are being described in the document with IRIs @typeUsed to set the data type of a node or typed value@vocabUsed to expand properties and values in @type with a common prefix IRI JSON-LD @work smxmilan.it@sjachille#SMX #22AUse JSON-LD to develop a model, which best describes your content to reduce (minimize) ambiguity and uncertaintyJSON-LD @work smxmilan.it@sjachille#SMX #22A { "@context": { "schema": "https://schema.org/" },"@id" : "https://mywebsite.com/blogposturl/","@type": "schema:BlogPosting","schema:datePublished" : "YYYY-MM-DD","schema:name": "BLOGPOST NAME","schema:headline" : "POST TITLE","schema:description": "A DESCRIPTION - LIKE META DESCRIPTION TAG","schema:mainEntityOfPage" : "URL","schema:image" : "https://mywebsite.com/wp-content/themes/DD-MM-YYYY/images/majestic_large.png",JSON-LD @work smxmilan.it@sjachille#SMX #22A "schema:isPartOf" : { "@id" : "https://mywebsite.com/", "@type" : "schema:Blog", "schema:name" : "My Blog","schema:description": "A DESCRIPTION OF MY BLOG - HOW BEAUTIFUL AND INTERESTING MY CONTENT IS AND WHY EVERBODY SHOULD READ IT!" },JSON-LD @work smxmilan.it@sjachille#SMX #22A"schema:author" : { "@id" : "http://blog.achille.name/", "@type" : "schema:Person", "schema:givenName": "FIRST NAME", "schema:additionalName": "MIDDLE NAME OR INITIAL", "schema:familyName": "FAMILY NAME (SURNAME)", "schema:jobTitle" : "SEARCH MARKETING CONSULTANT", "schema:sameAs" : "https://twitter.com/sjachille", "schema:sameAs" : "https://plus.google.com/+SanteJAchille/", "schema:sameAs" : "https://www.facebook.com/sjachille" }}JSON-LD @work smxmilan.it@sjachille#SMX #22A smxmilan.it@sjachille#SMX #22AUse in-line schema.org markup to provide detailed information about the page and the various elements (for example images)SCHEMA.org @work smxmilan.it@sjachille#SMX #22ASchema Markup Model for IMAGES smxmilan.it@sjachille#SMX #22ASchema Markup for Documents [caption] [/caption] smxmilan.it@sjachille#SMX #22AThis is an iterative process - almost impossible to get it right and complete 1st time aroundNew properties are constantly published on schema.org Semantic models require periodic updatingTest, Test and Test again! smxmilan.it@sjachille#SMX #22A smxmilan.it@sjachille#SMX #22A