SEO Italy blog: articoli, video e tutorial di approfondimento su posizionamento web e motori di ricerca

Web Semantico: URI, XML e RDF - adesso facciamo sul serio. Parte 3 di 3

15
Nov
2010
In questa ultima "puntata" del nostra piccola guida sul web semantico vediamo che cosa cambia, alla luce di queste novità , per chi si occupa di SEO, posizionamento sui motori e in generale marketing sul web



La nuova parola chiave non è più "keyword" ma "entity": il concetto di parola chiave è molto più ampio, dispersivo e ambiguo perché comprende una serie di riferimenti al contesto e ad altre informazioni non univoche, l'entità  per il web semantico è univoca, come se fosse un "prodotto" identificato senza dubbi da un codice a barre. Per fare un'esempio cercando Genova usciranno informazioni attinenti alla città , mentre cercando Università  di Genova ci troveremo davanti ad un'entità , grazie ai metadati e ad un database come Freebase cercando "nome+professore+genova+corso+studi" il sistema non processerà più come un tempo le parole chiave cercando delle corrispondenze il più possibile attinenti ma sarà  istruito e capirà che noi stiamo parlando di 3 entità : un professore, una università  (anche se non specificata nel search) e un corso di studi, così da poterli unire e, proprio come farebbe il droide C-3PO, darci una risposta sensata e farci saltare la ricerca nella SERP.



Il sistema per quanto innovativo ed interessante ha però a mio avviso un lato negativo: potrebbe portare alla morte il web di terze parti. Internet verrebbe scisso in social network, siti promozionali (che vivrebbero con molta difficoltà ) e un motore di ricerca capace di rispondere a tutti i dubbi. Chi fa SEO non deve lasciarsi scappare l'opportunità  di iniziare a pensare con questo nuovo metodo dato che sarà  il futuro, pensiamo al classico sito di promozione dell'antivirus: un computer è infetto da un virus, l'amministratore cerca una soluzione su Google e oggigiorno veniamo rediretti ai siti ufficiali o a qualche forum dove l'amministratore troverà links. In un futuro semantico un search engine come WolframAlpha ci dirà cosa fare e ci consiglierà tutti gli antivirus inseriti nel database capaci di eliminare il virus, così facendo tutto il lavoro fatto in fase di SEO per far arrivare primo l'antivirus di turno nella SERP andrebbe a scemare, questo è un problema non da poco.



Ma, come si dice, per ogni porta che si chiude si apre un portone - e in questo caso bisogna saper mettere le mani dentro il codice semantico, e per far questo iniziamo ad introdurre un po' di nomenclatura:

  • Identificatori: Uniform Resource Identifier (URI)

    E' l'identificazione univoca dell'oggetto, il "codice a barre" di ogni entità  sul Web. Poiché usiamo un sistema uniforme di identificatori, e poiché ogni cosa identificata viene considerata una "risorsa", chiamiamo questi identificatori "Identificatori uniformi di risorse" o URI. Da questo concetto nasce l'URL, esso contiene informazioni univoche per raggiungere un indirizzo. Il web è troppo vasto per essere controllato da un ente, gli URI potendo essere infiniti, con il crearsi della rete ne è nato uno, dei possibili infiniti, controllato che noi tutti conosciamo: "http:". Esso dipende da sistemi centralizzati (ad esempio i DNS) ed è controllato da un'ente, discorso diverso per "freenet:" che vive decentralizzato nell'anarchia più assoluta, creando un problema gigantesto nella gestione di un URI infatti tutti noi possiamo creare un URI anche per cose non in nostro possesso, rappresentare la stessa cosa con URI diversi o viceversa, internet finirebbe nel caos più totale. Quindi si delinea un compromesso nella creazione di una pagina web semantica, la creazione di un URI avviene con la creazione di una pagina web in modo semplicissimo.

    La pagina descrive l'oggetto che verrà identificato, l'URL della pagina e l'URI di quell'oggetto, quindi l'URI, in questo caso, comprende URL+descrizione dell'oggetto. Non è solamente un indirizzo ma è il nome di una risorsa (un oggetto, una cosa, che può essere un libro, un paio di scarpe, una caramella...), e questa risorsa può anche non avere un URL dato che non tutto è su Internet, per semplificare diciamo che l'URI è il nome univoco della risorsa e non necessariamente deve contenere un indirizzo.

    Si sta discutendo ancora sul problema dell'identificazione univoca delle entità , allo stato attuale si può tranquillamente definire un URI ma non c'è la garanzia che non si possano verificare dei conflitti, in futuro si risolverà la questione, l'importante per il momento è capire cosa sarà  l'URI nel web semantico.

  • Documenti: Extensible Markup Language (XML)

    Il punto forte dell'XML nel Web Semantico è il markup, una specie di correzione della maestra con la penna rossa che permette di aggiungere contenuto interpretabile in maniera differente a seconda di come viene istruito il sistema che lo interpreta.;

    Vediamo un esempio:




    <em>importante</em>




    il browser potrebbe vederlo come italic, mentre un sintetizzatore vocale potrebbe alzare il volume, un sistema di navigazione GPS lo potrebbe interpretare come nome di città , pensiamo alle potenzialità  dell'interpretazione del codice seguente:




    <frase>

    <persona>Io</persona> ho un nuovo <animale>cane</animale>.

    </frase>




    Il computer, se istruito, saprà che "io" è una persona e il "cane" è un'animale.

    Posso affinare dicendo chi siamo io e il cane dando un collegamento ipertestuale ai tag persona e animale, i quali però saranno onnipresenti nella rete, il sistema si chiederebbe ad esempio come è possibile che ci sia un cane di nome Hachi e lo stesso cane si possa chiamare Polpetta, come fa a distinguerli nell'insieme cane? Qui entra in gioco l'URI, che diventa il nome univoco utilizzando un XML Namespace. Ognuno può creare il proprio tag e integrarlo con quello di altri senza creare conflitti, si crea un namespace per il linguaggio di markup, una pagina web, e si usa l'URL di questa pagina web come URI del namespace, definendo come di seguito:




    <frase

    xmlns="http://example.org/xml/documents/"

    xmlns:c="http://animals.example.net/xmlns/">

    <c:persona c:href="http://sito-che-dice-chi-è-Stefano-Petrone/">Io</c:persona> ho un nuovo

    <c:animale c:href="http://sito-che-dice-chi-è-Hachi/>cane</c:animale>.

    </frase>





    ora il sistema sa che nell'URI persona c'è Stefano Petrone e, grazie alla pagina web, sa quanti anni ha, quanto è alto, quanto pesa, cosa fa nella vita, dove abita e così via e sa che il cane è uno animali, e tramite la pagina "http://sito-che-dice-chi-è-Hachi" sa che è uno spitz nano del peso di 2kg, le sue attidudini comportamentali e così via.

    La potenza del mezzo sta che quando cercherò tramite una keyword il sistema farà  da subito un match con il database ma, a differenza della SERP attuale, restituirà informazioni che conosce proprio come potrebbe fare il nostro migliore amico, con cognizione e senso.

  • Dichiarazioni: Resource Description Framework (RDF)

    L'URI deve essere processato dal calcolatore, al momento attuale è stupido ma, grazie all'RDF, può fare il finto tonto e comportarsi come se capisse facendo una dichiarazione RDF composta da soggetto, predicato e oggetto:




    <http://www.ironmaiden.com/> <!-- soggetto -->

    <http://sito.di.mi.piace> <!-- predicato -->

    <http://it.wikipedia.org/wiki/Heavy_metal> <!-- oggetto -->





    nella nostra lingua vogliamo dire agli Iron Maiden piace l'Heavy Metal.

    Proprio come noi adesso il web può fare un discorso, con l'RDF non esiste un sito ufficiale che parla dell'Heavy Metal o quello che piace a tutti o ancora degli Iron Maiden, ma viene inserita la filosofia che "ogni cosa può dire ogni cosa su ogni cosa".

    Gli Iron Maiden possono dire che amano l'Heavy Metal mentre Gigi D'Alessio può dire che lo detesta.

    La dichiarazione sopra indicata è N-Triples un linguaggio che permette di scrivere agevolmente dichiarazioni RDF, in XML sarebbe:




    <rdf:RDF

    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

    xmlns:mipiace="http://sito.di.mi.piace"

    >

    <rdf:Description rdf:about="http://www.ironmaiden.com/">

    <mipiace:reallyLikes rdf:resource="http://it.wikipedia.org/wiki/Heavy_metal" />

    </rdf:Description>

    </rdf:RDF>





    può sembrare macchinoso ma il futuro sarà  probabilmente fatto di questo, e se pensiamo che il web semantico gioca sui database che sono la consapevolezza dell'essere umano le potenzialità  all'orizzonte sono gigantesche, basta pensare ad una stazione di polizia che tiene un database dei ricercati, oppure un'azienda che usa i database per gestire le RMA.

    Ora domandando "mostrami i clienti che hanno acquistato un pallone giallo dal 15/07/2009" Google con il mi sento fortunato ci suggerisce "24/11/2009 - In un vecchio film giallo, "L.A. Confidential" ci..." mentre un sistema semantico restituirebbe la lista dei clienti e la possibilità  di conoscere i clienti uno per uno e sapere cosa ne pensano del pallone giallo che hanno acquistato.

  • Schema e Ontologie: RDF Schema, DAML+OIL e WebOnt

    I database devono essere elastici, quando immettiamo "mipiace" tutti i database devono sapere cosa significa gradire una cosa, l'uso degli URI è inutile se non definiamo il significato dei termini e le loro relazioni. I sistemi per fare questo sono RDF Schema e DARPA Agent Markup Language with Ontology Inference Layer, in Notation3 (un superset di N-Triples) avremmo questo codice:




    @prefix dc: <http://purl.org/dc/elements/1.1/> .

    @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .


    # A creator is a type of contributor:

    dc:creator rdfs:subClassOf dc:contributor .






    siccome il web è di tutti mettiamo che si venga a definire "Author" al posto di "Creator" c'è la possibilità  di fissare:






    # [X dc:creator Y] is the same as [Y ed:hasAuthor X]

    dc:creator daml:inverse ed:hasAuthor .





    Quindi ed:hasAuthor è l'inverso di dc:creator, il programma andrà ad invertire il soggetto e l'oggetto, e cambierà ed:hasAuthor con dc:creator.

    Il W3C ha introdotto dal 2001 il Web Ontology Language, per farla breve è un linguaggio che rende intelligente il calcolatore che lo interpreta. Se il calcolatore non diventa intelligente è l'intelligenza che va dal calcolatore grazie all'ontologia (per maggiori informazioni vi rimando a Wikipedia: http://it.wikipedia.org/wiki/Ontologia_(informatica))

  • Architettura del web semantico


  • Firma Digitale

    Un altro problema che viene spontaneo alla mente leggendo l'articolo sul web semantico è: se un utente si definisce il re del mondo e protegge il contenuto dichiara una cosa falsa, come si fa a rettificare e fermare l'abuso di informazione? Si utilizza il sistema di Firma Digitale, ogni persona che usa gli RDF verrà sempre identificato, avrà una lista di persone affidabile o inaffidabili, in modo da creare una rete di fiducia ed evitare i millantatori del web.

  • Conclusioni

    Per non fare la fine del Dodo... Abbiamo parlato in maniera generale, chiaramente il web semantico è ancora giovane per la grande massa, ma gli addetti ai lavori stanno lavorando per il grande passaggio: Google quando parte con qualcosa di nuovo lo fa in grande stile, e non sarà  in sordina come Wave e Buzz, non mi stupirei se ad inizio 2011 trovassimo due versioni di Google, la classica e una semantica. Chi fa SEO dovrebbe iniziare a dare un'occhiata all'XML e al web semantico, trovarsi impreparati potrebbe essere fatale...

Seguici su Twitter La nostra fan page su Facebook Il nostro canale YouTube RSS Feed
Contattaci per un'analisi gratuita e senza impegno del tuo sito web e scopri il nostro SEO garantito: noi guadagnamo solo se tu ottieni dei risultati concreti >>