Metadata a webový obsah

15. 9. 2009

Sdílet

Minulý týden jsme se v článku Metadata ve firemních informačních systémech seznámili se skupinami metadat a s hlavními motivacemi pro systematickou práci s metadaty. Dnes na toto téma navážeme.

Obsahově zaujímají nestrukturovaná metadata naprostou většinu metadat – stačí nahlédnout na některé příklady:
•    smlouvy (metadata smlouvy určují, kdo je účastník smlouvy, jaký je předmět smlouvy atp.)
•    psané předpisy a normy
•    pracovní znalosti zaměstnanců, které nejsou nikde zaznamenané
•    knihy a encyklopedie
•    webový obsah internetu
•    multimediální prezentace
•    a další
Možná namítnete, že webový obsah strukturu má. Samozřejmě, i smlouva obsahuje popis identifikačních a kontaktních údajů účastníků a předmět plnění smouvy. Ale pokusili jste se někdy získat z Wikipedie seznam zemí a jejich populace? Pravděpodobně víte ze školy, které země jsou nejlidnatější, a aktuální hodnoty si vyhledáte pro každou zemi v encyklopedii samostatně. Jedná se o efektivní proces? Není možné tento proces urychlit? Na tyto a další otázky se pokusíme podat odpověď v tomto příspěvku.

Strukturalizace webu
Z pohledu nestrukturovaných metadat budou v nejbližší době největší přínosy plynout ze zpracování textového obsahu. Téměř každý uživatel internetu má dnes nějaký prospěch z toho, že jiný uživatel zpracoval data a obohatil je o metadata. Nová skupina technologií označovaná jako Web 2.0 pomáhá řešit aktivní pořizování obsahu a spolupráci. Mezi hlavní fenomény patří:
•    blogování
•    wiki technologie – např. wikipedia.org
•    sociální sítě – např. facebook, mySpace

Pojďme se nyní zabývat řešením výše položené úlohy o nejlidnatějších zemích. Získat seznam nejlidnatějších zemí je možné pomocí následujícího SPARQL dotazu do DBpedia. DBpedia je volně přístupný a často citovaný zdroj, který se zabývá extrakcí a sémantikou dat (čili získáváním metadat) z Wikipedie. Dotaz můžete vložit pomocí OpenLink Virtuoso rozhraní na http://dbpedia.org/sparql

PREFIX type:
PREFIX prop:
SELECT ?country_name ?population ?country
WHERE {
?country a type:Country ;
rdfs:label ?country_name ;
prop:populationEstimate ?population .
FILTER (langMatches(lang(?country_name), "EN")) .
}
ORDER BY DESC(?population)


Prvních pět záznamů bude vypadat nějak podobně:

Čím to, že ve výpisu figuruje virtuální Nation. 1 a jiné podobné celky? Textové zpracování zdaleka není dokonalé – mnoho informací se načítá z takzvaného infoboxu.

Infobox pro resource http://en.wikipedia.org/wiki/Nation.1

Terminologie
SPARQL dotaz má určitou podobnost s SQL dotazy. Uvedený příklad cituje:
•    http://dbpedia.org/ontology/Country - jedná se o OWL třídu, která bohužel nereprezentuje pouze země, ale také další celky viz Nation.1.

Termín OWL odkazuje na taxonomii tříd, která má v případě zemí nadřízené úrovně vč. Country:
Thing
-> Place
-> Populated Place
-> Country

•    do proměnné ?country_name dosazuje property [label], která např. pro instanci http://dbpedia.org/page/Czech_Republic nabývá hodnot:
o    Czech Republic (en),
o    République tchèque (fr)
o    ....
•    podobně do proměnné ?population ukládá hodnotu property populationEstimate

Property jsou zjednodušeně řečeno vlastnosti daných tříd – v případě státu to může být [rozloha], [měna země], [datum založení], nebo se může jednat i vlastnosti, které mají vazební význam. Např. property [birthplace of] nabízí pro Českou republiku vztah i na http://dbpedia.org/page/Sigmund_Freud

OWL (Web Ontology Language) je spolu s RDF (Resource Description Framework) základnou pro sémantické weby – SPARQL je dotazovací jazyk, který je na RDF postaven. Klasický obsah webu je doplněn metadaty, takže z něj lze vytěžit více informací. Toto obohacení je buďto manuálním nebo automatickým procesem.

Na adrese http://sws.clearforest.com/calaisViewer/ je možné vložit do textového pole text a podrobit je analýze. Analýza Calais odhalí různé objekty, určí třídu (Organizace, Regiony...) a rovněž některé souvislosti (hlavní město). Zvýrazněním textu (identifikací metadat) na webové stránce a efektivním zpřístupněním kontextové informace se zabývá i http://semanta.cz

Další systém, se kterými jste na internetu denně ve styku je např.  kontextová reklama – stačí si zobrazit článek na http://idnes.cz a sledovat myší dvojitě podtržená slova
.

Integrace na bázi sémantiky
V úvodním příspěvku jsme nastínili přínos spojení technických a business metadat. Sémantické technologie se zabývají rovněž integrací. Hlavní koncept RDF se nazývá [triple] a jedná se o pojmenované spojení dvou jedinečných objektů (již zmiňovaný resource – pokud možno definovaný pomocí URI)

Pokud budeme studovat nám blízkou instaci třídy Country http://dbpedia.org/page/Czech_Republic zjistíme, že se odkazuje na několik dalších externích (mimo wikipedii) zdrojů např. v OWL property [sameAs] se odkazuje na Freebase.com:

Freebase je alternativní zdroj, který se od Wikipedie liší v několika bodech, ale ten nejzajímavější rozdíl z pohledu obsahu je, jakým způsobem Freebase přistupuje ke strukturování (klasifikaci). Přípěvky (topics) se zařazují do kategorií dvojího typu. Buďto jsou pod kontrolou autora (tzv. bases) nebo jsou zobecněné a pod kontrolou zaměstnanců Freebase (tzv. commons). Příspěvek rozvíjí tzv. types (např. [Film Actor], [Film Rating] a další pro [Film common]), což jsou buďto vlastnosti vyplývající z commons, nebo jsou doplněné autorem příspěvku. Type se dále dělí na properties, což je nejnižší detail informace na příspěvku (např. pro [Film Actor] to jsou [Film perfomances], [Dubbing Performances] atd.).

Rovněž uživatelské rozhraní přímo vybízí ke strukturalizaci. Příspěvek se dělí do sekcí, každá sekce obsahuje odkaz na editaci, import dalších položek daného typu a odkaz ke zvýraznění nevyplněných sekcí.


Dotazování podporuje fulltext, navigaci a MQL (Metadata Query Language). Např. seznam restaurací určitého typu lze získat pomocí následujícího skriptu přes dotazovací rozhraní http://www.freebase.com/tools/queryeditor


[
{
"/business/business_location/address" : {
"citytown" : null,
"state_province_region" : null
},
"cuisine" : "Russian",
"name" : null,
"type" : "/dining/restaurant"
}
]


Výsledek je možné zobrazit formou stromu.

bitcoin školení listopad 24

Čeština
Výzvou pro textově bohaté zdroje není pouze strukturalizace, ale také fulltextové vyhledávání. V obou případech je řešení pro lokální český jazyk výrazně méně, než pro angličtinu. Pro fulltextové vyhledávání s podporou českého jazyka doporučuji prozkoumat dodávky pro relační databáze – s jistotou je k dispozici na MS SQL serveru či na Oracle. Opensource Sphinx by měl mít k dispozici též český stemmer, který umožňuje ohýbat slova.

Závěr
Metadata představují klíčové znalosti, bez nichž není možné data úspěšně interpretovat. Procesy, které nemají pro svůj průběh metadata, se prodražují o fázi, kdy se metadata pořizují. Nejdražším případem je opakované pořizování nekvalitních či zjednodušených metadat. Existuje celá řada prostředků na podporu metadat, která se týká jak standardů pro strukturalizaci tak i výkonného software pro pořizování či publikaci metadat. Společnosti vynakládají prostředky pro sdílení a integraci metadat – business přínosy se vyčíslují na zvýšené efektivitě procesů.

Pro nestrukturovaná metadata je v současné době nejvhodnější využít wiki nástroje (finanční důvody, funkcionalita, automatické zpracování obsahu). Existují určité wiki klony, které přímo podporují taxonomii během pořizování i dotazování (např. http://semantic-mediawiki.org).

Autor pracuje jako konzultant ve společnosti Adastra.