Wojna w mikroświecie

- autor: tsissput

Internet cały czas rośnie. Nie tylko dochodzą nowe strony ale istniejące mają coraz więcej treści. Oczywistym stał się fakt, że jeśli komputery nie pomogą nam przefiltrować tego ogromu słów, nic wartościowego nie znajdziemy w relatywnie krótkim czasie. Jeszcze kilka lat temu poważnym problemem był fakt, że maszyny nie rozumiały znaczenia tego całego zlepku literek. Wtedy powstał boom na Semantic Web i powstały technologie dające możliwość programom na rozumienie treści witryn internetowych.

Sztandarowym przykładem może tu być internetowa odmiana RDF, czyli RDFa. Istniejąca już od 2004 roku. Problem polega na tym, że dla zwykłych web developerów jest to zbyt skomplikowana technologia.

<p xmlns:dc="http://purl.org/dc/elements/1.1/"
   about="http://www.example.com/books/wikinomics">
  In his latest book
  <cite property="dc:title">Wikinomics</cite>,
  <span property="dc:creator">Don Tapscott</span>
  explains deep changes in technology,
  demographics and business.
  The book is due to be published in
  <span property="dc:date" content="2006-10-01">October 2006</span>.
</p>

Przeładowanie informacji potrzebnych do opisu wartości sprawiło, że programiści zapragnęli  prostszego rozwiązania. Znaleźli je w postci mikroformatów. Nie będę się o nich rozpisywał bo temat ten został już poruszony na tym blogu tutaj. Nie da się ukryć, że są one niezwykle proste i nie wymagają tworzenia żadnych dodatkowych atrybutów HTML’owych. Ten ich niewątpliwy plus staje się również ich wadą. Co prawda specyfikacja HTML 4.1 odnoście atrybutu class mówi, że może on zostać wykorzystany dla ogólnych potrzeb przetwarzania jednak w powszechnym użyciu funkcjonuje jako selektor arkuszy stylów. Nakłada to większą ostrożność dla projektantów storn i osób odpowiedzialnych za pisanie CSS’ów. Jest to również problem dla parserów, które muszą się domyślić czy dana wartość jest selektorem czy mikroformatem.

Warto się przyjrzeć co w takiej sytuacji zrobili najbardziej zainteresowani a zarazem najwięksi gracze na rynku. Google, Bing i Yahoo!, czyli firmy które czerpią największe zyski z wiedzy o tym co jest czym w sieci. Żeby zapewnić jeszcze lepsze wyniki wyszukiwania, ale również żeby je lepiej opisać wybrali mikrodane. Właśnie o tą technologię Google oparło swoje Rich snippets. Dodatkowo uruchomiono stronę Schema.org, która zawiera kolekcje schematów, gotowych do użycia.

Mikrodane definiowane są poprzez atrybuty HTMLa (szerszy opis i przykłady tu)

  • itemscope – definiuje grupę  par nazwa-wartość, nazywaną item
  • itemprop – dodaje właściwość do item’a (nazwa może być tekstem lub url’em, wartością jest zawartość elementu)
  • itemref – item może zawierać niedziedziczone właściwości poprzez referencje do nich
  • itemtype – definiuje typ item’u  jeśli jest użyte w tym samym elemencie co itemscope
  • itemid – pozwala słownikowi zdefiniować globalny identyfikator dla item’u

Mikrodane są częścią specyrikacji HTML5, rozdział im poświęcony znajduje się tutaj. Dodatkowym plusem, przemawiającym za mikrodanymi jest specyfikacja microdata DOM API. Pozawala ona na używanie skryptów do manipulowania mikrodanymi, udostępnianie ich innym aplikacjią, itp. Możliwości są ograniczone jedynie przez potrzeby twórców aplikacji internetowych. Niestety jedyną przeglądarką, która implementuje microdata DOM API jest Opera. Na szczęście na podstawie specyfikacji powstały już co najmniej dwie biblioteki JavaScript’owe MicrodataJS oraz Microdata-JS. Dodatkowo istnieje też projekt Live Microdata, który pozwala obserwować jak nasz kod HTML wygląda oraz podejrzeć zawarte w nim mikrodane w postaci JSONa.

Jedną z wad mikrodanych jest niemożliwość używania wielu typów jeśli nie pochodzą one z tego samego słownika (mowa o tym tutaj). Można jednak osiągnąć taki efekt w nietrywialny sposób, jak zaprezentowano to tu. W trakcie powstawania jest specyfikacja rozszerzająca która ma dać możliwość łączenia słowników, która nie zmienia składni mikrodanych.

Na blogu Jeni Tennison można znaleźć dużo informacji na temat mikrodanych, jak również i RDFa. Ciekawą serię stanowią artykuły o mapowaniu mikrodanych do RDFa i RDFa do mikrodanych.

<section itemscope itemtype=”http://schema.org/Person”&gt;
<span itemprop=”name”>Dawid Jankowiak</span>
<section itemprop=”affiliation” itemscope itemtype=”http://schema.org/Organization”&gt;
<span itemprop=”name”>Politechnika Poznańska</span>
</section>
<span itemscope>
<time itemprop=”date” datetime=”2012-01-26″>26 stycznia 2012</time>
</span>
</section>

Dawid Jankowiak

Politechnika Poznańska

26 stycznia 2012

Reklamy

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj / Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj / Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj / Zmień )

Zdjęcie na Google+

Komentujesz korzystając z konta Google+. Wyloguj / Zmień )

Connecting to %s

%d blogerów lubi to: