[SemanticWeb] Apache Stanbol: la semantica nei content management systems

Apache Stanbol è un progetto open-source che fornisce uno stack software modulare e un set di componenti riusabili per la gestione semantica dei contenuti.
L’iniziativa è dell’European R&D project IKS (Interactive Knowledge Stack for small to medium CMS providers). La “mission” di IKS è quella di portare le tecnologie semantiche come componenti open-source integrate nei piccoli e medi CMS provider. Infatti, abbiamo applicazioni di tale tecnologia in Alfresco e Liferay.

Apache Stanbol automatizza l’identificazione (detection) delle “named entities” (persone, luoghi e organizzazioni, nonchè link verso risorse esterne, come DBpedia). Il processo di estrazione di queste informazioni (detto di “enhancement“) è ad uno stato abbastanza maturo, infatti le sue caratteristiche di base sono già impiegate dai CMS più utilizzati allo stato attuale (Liferay e Alfresco, come già detto in precedenza).

I componenti di Apache Stanbol sono accessibili tramite interfacce RESTFul e mettono a disposizione servizi semantici per gestire i contenuti. E’ possibile estendere i sistemi tradizionali di content management (CMS) con questi servizi semantici (interni ed esterni). Il core di Stanbol è scritto in Java e si basa sul component framework OSGi.

Le principali caratteristiche di Stanbol sono:

  • Arricchimento semantico dei contenuti: i servizi di Stanbol aggiungono informazioni semantiche a parti di contenuto “non semantico”
  • Reasoning: i servizi sono capaci di ritrovare informazioni semantiche nel contenuto
  • Knowledge Models: i servizi vengono utilizzati per definire e manipolare i data model (ad esempio, le ontologie) che sono usati per memorizzare le informazioni semantiche

Le caratteristiche messe a disposizione da Apache Stanbol sono accessibili, direttamente dai CMS, con interfacce utente avanzate.
La demo online (di base) è disponibile a questo link: http://stanbol.demo.nuxeo.com/

Documentazione di Apache Stanbol: http://incubator.apache.org/stanbol/docs/trunk/index.html

Integrazione di Apache Stanbol con un CMS. Basta connettere il proprio CMS via HTTP ad una istanza di Apache Stanbol, oppure usando un CMS adapter component che faccia da bridge tra un CMIS/JCR compliant content repositories e il repository di metadati semantici presente in Apache Stanbol.

Ecco i vari servizi offerti da Stanbol ai CMS che lo integrano:

  • Basic Content Enhancement: analisi testuale dei contenuti, con estrazione delle named entities (person, place, organization), link suggeriti verso sorgenti open-data
  • Definizione di “local” entities: uso di entità “locali” (come Thesaurus) per rappresentare il contesto di una organizzazione (grazie al suo componente Entityhub). Questo aspetto è particolarmente importante poichè i servizi potrebbero non essere necessariamente esternalizzati su Internet, ma l’organizzazione potrebbe impiegarli nella propria rete aziendale
  • Supporto multilingue: la ricerca testuale del contenuto avviene in più lingue (EN, DE, SV, DA, PT e NL)
  • Ricerca semantica nel Portale: memorizza e indicizza gli item dei contenuti, migliorando la ricerca semantica nell’applicazione
  • Refactoring Enhancements for SEO: “refactor” dei risultati estratti, collegandoli alla propria ontologia
  • Trasformazione della struttura del repository del CMS in vere e proprie ontologie
  • Inserimento di altre repository come thesaurus o ontologie di dominio

Apache Stanbol usa una interfaccia stateless per permettere agli utenti di inviare contenuto agli Enhancement Engines (i motori di cui è composto Stanbol e ottenere risultati (enhancements) in formato RDF (Resource Definition Framework), senza memorizzare nulla sul server.

Inoltre, mette a disposizione un meccanismo per lavorare con vocabolari in linguaggi standard come dataset codificati in SKOS (Simple Knowledge Organization Systems) o RDF. Il componente Entityhub di Stanbol crea e gestisce gli indici estratti da questi dataset e i vari Enhancement Engines li usano durante il processo di “enhancement“.

Gli Enhancement Engines sono diversi e suddivisi in categorie (Preprocessing, Natural Language Processing, Linking Suggestions, PostProcessing/Other):

  • Preprocessing: Language Identification Engine, Tika Engine e Metaxa Engine (effettuano l’identificazione linguistica del contenuto testuale, l’estrazione di testo e metadati da vari formati documentali con Apache Tika)
  • Natural Language Processing: Named Entity Extraction Enhancement Engine (NLP processing con OpenNLP Engine e identificazione di persone, luoghi e organizzazioni), KeywordLinking Engine (NLP processing con OpenNLP, supporto multilingue, identificazione delle occorrenze di entità non tipate, come concetti, tassonomie locali, …)
  • Linking Suggestions: Named Entity Tagging Engine (suggerimenti di link da fonti dette Linked DataSources, come DBpedia), Geonames Enhancement Engine (suggerimento di link usando geonames.org e organizzazione gerarchica dei link per le locations), OpenCalais Enhancement Engine (integra servizi da Open Calais), Zemanta Enhancement Engine (integra i servizi di Zemanta)
  • Postprocessing/Other: CachingDereferencerEngine (deprecato, ma ritrova contenuti addizionali per la presentazione degli enhancement results), Refactor Engine (trasforma i risultati –enhancements– in accordo con l’ontologia target)

Le named entities estratte (persone, luoghi e organizzazioni) sono strutturate secondo un grafo RDF, particolarmente comodo per utilizzare le informazioni all’esterno del motore, per descrivere l’intera repository e ricercare i risultati.

 ————————————————————————

Appuntamento al LIFERAY ROADSHOW a ROMA:

Vi segnalo l’incontro a Roma per il prossimo 11 Giugno 2012: LIFERAY ROADSHOW ROMA, in cui si parlerà dell’ Integrazione di Liferay con la piattaforma Apache Stanbol per la gestione semantica dei contenuti.

DOVE? Università di Tor Vergata
Sala Congressi Facoltà di Ingegneria
Via del Politecnico, 1
00133 Roma

QUANDO? 11 GIUGNO 2012 – ore 14,00 – 17,30

INFORMAZIONI: Per partecipare all’evento, totalmente gratuito, é richiesta la registrazione tramite il portale Liferay. Per maggiori informazioni contattate ufficio.marketing@smc.it

————————————————————————

Articoli utili:

2 pensieri su “[SemanticWeb] Apache Stanbol: la semantica nei content management systems

  1. Pingback: [Liferay&SemanticWeb] La semantica in Liferay con SKOS e Stanbol - Francesco Ficetola

  2. Pingback: Semantic Content Management System - al via i CMS per il nuovo web 3.0

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

AlphaOmega Captcha Classica  –  Enter Security Code
     
 


8 + = tredici