<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>SemantycznyWeb - semantic web, web 3.0 &#187; Microformats</title>
	<atom:link href="http://semantictechnology.eu/tag/microformats/feed/" rel="self" type="application/rss+xml" />
	<link>http://semantictechnology.eu</link>
	<description>Standardy i technologie Web 3.0, wyszukiwanie informacji w sieci, semantyczne nowości</description>
	<lastBuildDate>Sun, 18 Mar 2012 16:17:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
		<item>
		<title>Relacja z &#8222;BOF on Structured Data in HTML&#8221; na SemTech2011</title>
		<link>http://semantictechnology.eu/2011/06/relacja-z-bof-on-structured-data-in-html-na-semtech2011/</link>
		<comments>http://semantictechnology.eu/2011/06/relacja-z-bof-on-structured-data-in-html-na-semtech2011/#comments</comments>
		<pubDate>Thu, 23 Jun 2011 14:47:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Ogólnie]]></category>
		<category><![CDATA[Microdata]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[RDFa]]></category>
		<category><![CDATA[semantic web]]></category>

		<guid isPermaLink="false">http://semantictechnology.eu/?p=601</guid>
		<description><![CDATA[Zapraszam do przeczytania zapisek wszystkich rozmów jakie miały miejsce na &#8222;BOF on Structured Data on HTML&#8222;  zorganizowanego dnia 8.06.2011 w Hilton San Francisco Union Square hotel w ramach konferencji SemTech2011. Na BOF&#8221;ie rozmawiano na temat &#8222;Format RDFa vs Microformats vs Microdata&#8221; oraz inicjatywy schema.org. Jednym z pytań było to czy zapis w formacie RDFa oraz [...]]]></description>
			<content:encoded><![CDATA[<p>Zapraszam do przeczytania zapisek wszystkich rozmów jakie miały miejsce na &#8222;<strong>BOF on Structured Data on HTML</strong>&#8222;  zorganizowanego dnia 8.06.2011 w Hilton San Francisco Union Square hotel w ramach konferencji SemTech2011.</p>
<p><a title="SemTech2011" href="http://semtech2011.semanticweb.com/" target="_blank"><img class="aligncenter size-medium wp-image-602" title="semTech2011" src="http://semantictechnology.eu/wp-content/uploads/2011/06/semTech2011-300x63.jpg" alt="" width="300" height="63" /></a><span id="more-601"></span>Na BOF&#8221;ie rozmawiano na temat &#8222;Format   RDFa vs Microformats vs Microdata&#8221; oraz inicjatywy schema.org. Jednym z pytań było to czy zapis w formacie RDFa oraz Microformats będzie tak samo traktowany przez wyszukiwarki jak Microdata?. Zapis prawie wszystkich wypowiedzi wykonał współorganizator Ivan Herman.</p>
<p>Zapraszam tutaj: <a title="BOF on Structure Data in HTML" href="http://www.w3.org/2011/06/semtech-bof-notes-smaller.html" target="_blank">http://www.w3.org/2011/06/semtech-bof-notes-smaller.html</a></p>
<div id="_mcePaste" class="mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">
<h1><span class="mw-headline">BOF on Structured Data in HTML</span></h1>
</div>
]]></content:encoded>
			<wfw:commentRss>http://semantictechnology.eu/2011/06/relacja-z-bof-on-structured-data-in-html-na-semtech2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sig.ma &#8211; eksplorator Semantycznego Web</title>
		<link>http://semantictechnology.eu/2010/10/sig-ma-eksplorator-semantycznego-web/</link>
		<comments>http://semantictechnology.eu/2010/10/sig-ma-eksplorator-semantycznego-web/#comments</comments>
		<pubDate>Sat, 02 Oct 2010 22:18:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Aplikacje]]></category>
		<category><![CDATA[Linked Open Data]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[RDF]]></category>
		<category><![CDATA[RDFa]]></category>
		<category><![CDATA[semantic web]]></category>
		<category><![CDATA[Sindice]]></category>
		<category><![CDATA[web of data]]></category>

		<guid isPermaLink="false">http://semantictechnology.eu/?p=435</guid>
		<description><![CDATA[Sig.ma to chyba jedyna na dzień dzisiejszy przeglądarka, generator danych oraz API dla Semantycznego Web&#8217;a. Oparta na projekcie Sindice aplikacja pozwala przeszukać całą semantyczną sieć. Wystarczy opisać dane za pomocą RDF, RDFa lub Microformats. Następnie zadbać o to aby dane te zostały w jak najszybszy sposób zaindeksowane, a na końcu odwiedzić stronę sig.ma i wykorzystać [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://semantictechnology.eu/wp-content/uploads/2010/10/sigma-logo-h70.png"><img class="alignright size-full wp-image-436" title="sigma-logo-h70" src="http://semantictechnology.eu/wp-content/uploads/2010/10/sigma-logo-h70.png" alt="" width="301" height="70" /></a><strong>Sig.ma</strong> to chyba jedyna na dzień dzisiejszy przeglądarka, generator danych oraz API dla Semantycznego Web&#8217;a. Oparta na projekcie <strong>Sindice</strong> aplikacja pozwala przeszukać całą semantyczną sieć. Wystarczy opisać dane za pomocą RDF, RDFa lub Microformats. Następnie zadbać o to aby dane te zostały w jak najszybszy sposób zaindeksowane, a na końcu odwiedzić stronę sig.ma i wykorzystać aplikację na 3 możliwe sposoby&#8230;<br />
<span id="more-435"></span><br />
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fsemantictechnology.eu%2F2010%2F10%2Fsig-ma-eksplorator-semantycznego-web%2F&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=dark&amp;height=0" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:40px;" allowTransparency="true"></iframe><br />
Aplikacja ta działa zaskakująco dobrze i umożliwia edycję otrzymanych danych na wiele sposobów. Wykorzystać ją można:</p>
<ol>
<li>Jako <strong>przeglądarkę danych</strong> (wyszukiwarkę)</li>
<li>Jako <strong>widget</strong>, który można umieścić na swojej stronie www z interesującymi nas danymi</li>
<li>Jako <strong>API</strong> dla różnych aplikacji. Otrzymujemy URI, a dane można wygenerować w różnych formatach: RDF, JSON itp.</li>
</ol>
<p>Na swojej stronie twórcy Sig.ma wyraźnie dają do zrozumienia, że dane pochodzące z ich aplikacji są póki co narażone na drobne niedokładności i &#8222;zanieczyszczenia&#8221;. Jest to spowodowane tym, że istniejąca obecnie sieć semantyczna jest w bardzo wczesnym stadium rozwoju. Jest dzieckiem, który dopiero raczkuje i dane indeksowane przez semantyczne bazy nie są w żadne sposób filtrowane. Google i Yahoo coraz poważniej rozważają wartość semantyki na stronach www, co może wpłynąć na poprawę całej sytuacji w niedalekiej przyszłości. Aplikacja doskonale nadaje się do wyszukiwania osób. Wpisując imię i nazwisko osoby, która umieściła swoje dane w ontologii <strong>FOAF</strong> w dowolnym pliku .rdf lub wykorzystując np. Microformats, otrzymamy całkiem niezły profil tej osoby. Wpisując np. &#8222;Katowice&#8221; otrzymamy na pewno rzetelne dane gdyż większość informacji o mieście pochodzi z bazy <strong>DBPedia</strong>.</p>
<p>Czas oczekiwania na pojawienie się nowo powstałej semantycznej strony w bazie Sig&#8217;my jest bardzo krótki za sprawą <strong>Sindice</strong>. Po dodaniu owej strony przez formularz wystarczy około 15&#8242;u minut na to, aby zostały rozpoznane i uwzględnione w jej wynikach.</p>
<p>Więcej informacji w poniższym filmiku, który prezentuje możliwości opisywanej aplikacji.</p>
<p style="text-align: center;">
<iframe src="http://player.vimeo.com/video/5703809" width="400" height="300" frameborder="0"></iframe>
<p><a href="http://vimeo.com/5703809">Sig.ma &#8211; Live views on the Web of Data</a> from <a href="http://vimeo.com/user2064567">Sindice Team</a> on <a href="http://vimeo.com">Vimeo</a>.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://semantictechnology.eu/2010/10/sig-ma-eksplorator-semantycznego-web/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jak opublikować i zaindeksować semantyczną stronę www zgodną ze standardami web 3.0 (LOD) ?</title>
		<link>http://semantictechnology.eu/2010/09/jak-opublikowac-i-zaindeksowac-semantyczna-strone-www-zgodna-ze-standardami-web-3-0-lod/</link>
		<comments>http://semantictechnology.eu/2010/09/jak-opublikowac-i-zaindeksowac-semantyczna-strone-www-zgodna-ze-standardami-web-3-0-lod/#comments</comments>
		<pubDate>Fri, 24 Sep 2010 18:42:08 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Ogólnie]]></category>
		<category><![CDATA[Linked Open Data]]></category>
		<category><![CDATA[LOD]]></category>
		<category><![CDATA[Microdata]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[ontologia]]></category>
		<category><![CDATA[RDF]]></category>
		<category><![CDATA[RDFa]]></category>
		<category><![CDATA[SEM]]></category>
		<category><![CDATA[semantic web]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[web 3.0]]></category>

		<guid isPermaLink="false">http://semantictechnology.eu/?p=351</guid>
		<description><![CDATA[Wiele czasu trzeba poświęcić na stworzenie semantycznego opisu swojej strony www, dzięki czemu nadamy znaczenie temu co się na niej znajduje. Proces pracochłonny jeśli chcemy wprowadzać semantyczne znaczniki różnych ontologii (SIOC, FOAF, Good Relations, SKOS itd. ) ręcznie bezpośrednio w kodzie HTML wykorzystując standardy RDFa, Microdata czy znaczniki Microformats. Można również wykorzystać generatory, które zrobią [...]]]></description>
			<content:encoded><![CDATA[<p>Wiele czasu trzeba poświęcić na stworzenie semantycznego opisu swojej strony www, dzięki czemu nadamy znaczenie temu co się na niej znajduje. Proces pracochłonny jeśli chcemy wprowadzać semantyczne znaczniki różnych ontologii (SIOC, FOAF, Good Relations, SKOS itd. ) ręcznie bezpośrednio w kodzie HTML wykorzystując standardy RDFa, Microdata czy znaczniki Microformats. Można również wykorzystać generatory, które zrobią to za nas. Można też to zrobić  przez umieszczenie semantycznego opisu w oddzielnych plikach .rdf i umieszczenie ich pod określoną lokalizacją na serwerze wraz ze stroną.<a href="../wp-content/uploads/2010/09/swCrawlers.jpg"><img class="aligncenter size-full wp-image-360" title="swCrawlers" src="http://semantictechnology.eu/wp-content/uploads/2010/09/swCrawlers.jpg" alt="" width="500" height="120" /></a></p>
<p>I co dalej ? Jak powiedzieć robotom semantycznych wyszukiwarek/składnic danych o naszej stronie dzięki czemu zwiększymy jej widoczność i użyteczność ?<br />
<span id="more-351"></span><br />
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fsemantictechnology.eu%2F2010%2F09%2Fjak-opublikowac-i-zaindeksowac-semantyczna-strone-www-zgodna-ze-standardami-web-3-0-lod%2F&amp;layout=standard&amp;show_faces=false&amp;width=450&amp;action=like&amp;colorscheme=dark&amp;height=35" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:35px;" allowTransparency="true"></iframe><br />
Jeśli zdecydowaliśmy się na wprowadzanie znaczników RDFa bezpośrednio w kodzie na swojej stronie wykorzystując różne ontologie wystarczy wykonać następujące kroki:</p>
<p>1) uzupełniamy nagłówek strony, DOCTYPE:</p>
<pre class="html">
<span class="htmlOtherTag">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML+RDFa 1.0//EN&quot; &quot;http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd&quot;&gt;</span>
<span class="htmlOtherTag">&lt;html xmlns=<span class="htmlAttributeValue">&quot;http://www.w3.org/1999/xhtml&quot;</span> version=<span class="htmlAttributeValue">&quot;XHTML+RDFa 1.0&quot;</span> xml:lang=<span class="htmlAttributeValue">&quot;en&quot;</span>&gt;</span>
<span class="htmlOtherTag">&lt;head&gt;</span>
<span class="htmlOtherTag">&lt;meta http-equiv=<span class="htmlAttributeValue">&quot;Content-Type&quot;</span> content=<span class="htmlAttributeValue">&quot;text/html; charset=UTF-8&quot;</span>/&gt;</span>
<span class="htmlOtherTag">&lt;/head&gt;</span>
</pre>
<p>2) Opisujemy kod wykorzystując np. ontologię DC i FOAF:</p>
<pre class="html">
<span class="htmlOtherTag">&lt;p&gt;</span>Nazywam się <span class="htmlOtherTag">&lt;span property=<span class="htmlAttributeValue">&quot;foaf:nick&quot;</span>&gt;</span>Kowalski Jan<span class="htmlOtherTag">&lt;/span&gt;</span> i lubię słuchać
<span class="htmlAnchorTag">&lt;a href=<span class="htmlAttributeValue">&quot;http://www.neubauten.org/&quot;</span> rel=<span class="htmlAttributeValue">&quot;foaf:interest&quot;</span>
xml:lang=<span class="htmlAttributeValue">&quot;de&quot;</span>&gt;</span>Einstürzende Neubauten<span class="htmlAnchorTag">&lt;/a&gt;</span>.
<span class="htmlOtherTag">&lt;/p&gt;</span>
<span class="htmlOtherTag">&lt;p&gt;</span>
Moja<span class="htmlOtherTag">&lt;span rel=<span class="htmlAttributeValue">&quot;foaf:interest&quot;</span> resource=<span class="htmlAttributeValue">&quot;urn:ISBN:0752820907&quot;</span>&gt;</span>ulubiona książka to<span class="htmlOtherTag">&lt;span about=<span class="htmlAttributeValue">&quot;urn:ISBN:0752820907&quot;</span>&gt;</span><span class="htmlOtherTag">&lt;cite
property=<span class="htmlAttributeValue">&quot;dc:title&quot;</span>&gt;</span>Weaving the Web<span class="htmlOtherTag">&lt;/cite&gt;</span> autorstwa
<span class="htmlOtherTag">&lt;span property=<span class="htmlAttributeValue">&quot;dc:creator&quot;</span>&gt;</span>Tim Berners-Lee<span class="htmlOtherTag">&lt;/span&gt;</span><span class="htmlOtherTag">&lt;/span&gt;</span>
<span class="htmlOtherTag">&lt;/span&gt;</span>
<span class="htmlOtherTag">&lt;/p&gt;</span>
</pre>
<p>Powyższe dwa kroki pokazują przykład wykorzystania kodu źródłowego strony i jej lekką modyfikację przez odpowiednie znaczniki. Jest to jedna z możliwości publikacji RDF (<strong>Embedded RDF</strong>).</p>
<p>Druga metoda nie polega na zagnieżdżaniu semantyki w istniejącym kodzie lecz na podaniu przed znacznikiem zamykającym stronę fragmentu, który zawiera tylko i wyłącznie opis z wykorzystaniem wybranej ontologii. Taka możliwość powoduje jednak redundancje danych na stronie lecz jest bardziej czytelna dla człowieka.<br />
Przykładem takiej możliwości jest wykorzystanie automatycznego generatora ontologii Good Relations, który tworzy nam przeźroczystego div&#8217;a gotowego do wklejenia na stronę.<br />
Generator dostępny pod tym adresem &#8211; <a href="http://www.ebusiness-unibw.org/tools/grsnippetgen/">http://www.ebusiness-unibw.org/tools/grsnippetgen/</a>. Istnieją też inne generatory do konwersji plików RDF na kod RDFa takie jak RDF2RDFa, który można użyć na stronie <a href="http://www.ebusiness-unibw.org/tools/rdf2rdfa/">http://www.ebusiness-unibw.org/tools/rdf2rdfa/</a>.</p>
<p>Druga z metod umieszczenia semantycznych danych polega na stworzeniu pliku RDF/XML np. semanticweb.rdf. W tym przypadku wystarczy dodać tylko jedną linijke w nagłówku strony:</p>
<pre class="html">
<span class="htmlOtherTag">&lt;head&gt;</span>
<span class="htmlOtherTag">&lt;link rel=<span class="htmlAttributeValue">&quot;meta&quot;</span> type=<span class="htmlAttributeValue">&quot;application/rdf+xml&quot;</span> title=<span class="htmlAttributeValue">&quot;dane RDF/XML naszej firmy&quot;</span> href=<span class="htmlAttributeValue">&quot;http://www.seoshop.org/semanticweb.rdf&quot;</span> /&gt;</span>
<span class="htmlOtherTag">&lt;/head&gt;</span>
</pre>
<p>Koniecznie trzeba się upewnić czy serwer na którym znajduje się strona zwraca odpowiedni typ podczas pobierania pliku <em>semanticweb.rdf</em> (Content-Type: application/rdf+xml):</p>
<pre class="html">
przykład pliku .htaccess:
AddType application/rdf+xml .rdf
</pre>
<p>Opisanie swoich danych na stronie nie oznacza, że zostanie ona dodana do chmury Linked Open Data i stanie się częścią semantycznej sieci www. Jak to zwykle bywa trzeba się samemu o to postarać&#8230;</p>
<p>W obu przypadkach publikacji danych na stronie, można odwiedzić następujące adresy www w celu zaindeksowania swojej strony:</p>
<h3>Sindice &#8211; http://sindice.com</h3>
<p>- semantyczna wyszukiwarka, która umożliwia bezpośrednie przesłanie swojej strony przez formularz lub też umożliwia przesłanie pliku .rdf zgodnie z druga opisywaną metodą. Można też ten proces zautomatyzować przez wykorzystanie udostępnionego interfejsu <strong>REST API</strong> lub <strong>RPC API</strong>:</p>
<pre class="html">
przesłanie jednego lub więcej adresów przez plik tekstowy:
curl -H &quot;Accept: text/plain&quot; --data-binary @urls.txt  http://sindice.com/api/v2/ping
lub gotowy skrypt np. w PHP:
...
$client = new xmlrpc_client(&quot; http://sindice.com/xmlrpc/api&quot;);
$payload = new xmlrpcmsg(&quot;weblogUpdates.ping&quot;);
...
</pre>
<h3>Yahoo Search Monkey</h3>
<p>- <a href="http://siteexplorer.search.yahoo.com/submit">http://siteexplorer.search.yahoo.com/submit</a></p>
<h3>URIBurner &#8211; http://uriburner.com/</h3>
<p>- URIBurner to serwis, który posiada chyba najprostsza metodę wysłania swoich semantycznych stron do jego składnic danych. Oparty jest on o technologię <strong>Virtuoso&#8217;s Sponger</strong>, który jest wręcz semantycznym kombajnem zbierającym prawie wszystko co się da. Jest on w stanie pobrać semantyczne opisy zarówno z dokumentów html, plików .doc, .ppt jak i plików multimedialnych. Tworzy z nich odpowiedni graf RDF a następnie ponownie przekształca do postaci HTML lub do RDF w różnych postaciach (<strong>RDF/XML</strong>, <strong>text/n3</strong>, <strong>turtle</strong>, <strong>JSON</strong>). Prezentacje owego &#8222;kombajnu&#8221; można znaleźć na stronie <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSponger">http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSponger</a>.</p>
<p>Aby dodać stronę do URIBurner&#8217;a wystarczy wpisać następujący adres w swojej przeglądarce:</p>
<pre class="html">
http://linkeddata.uriburner.com/about/html/<span class="htmlOtherTag">&lt;nasza strona&gt;</span>
gdzie <span class="htmlOtherTag">&lt;nasza strona&gt;</span> to oczywiście URI naszej strony www np.:
http://linkeddata.uriburner.com/about/html/http://semantictechnology.eu
</pre>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 2286px; width: 1px; height: 1px; overflow: hidden;">http://linkeddata.uriburner.com/about/html/&lt;nasza strona&gt;</div>
<h3>PingTheSemanticWeb.com</h3>
<p>- umożliwia przesyłanie swoich grafów w plikach .rdf oraz podobnie jak Syndice udostępnia swoje API do pingowania.</p>
<h3>Swoogle</h3>
<p>- jedna z pierwszych wyszukiwarek semantycznych. Swoją stronę można dodać pod następującym adresem <a href="http://swoogle.umbc.edu/index.php?option=com_swoogle_service&amp;service=submit">http://swoogle.umbc.edu/index.php?option=com_swoogle_service&amp;service=submit</a></p>
<p>Opisywane metody indeksacji semantycznej strony www nie są zapewne jedynymi metodami a opisane serwisy jedynymi istniejącymi. Jeśli znalazłeś jakieś inne ciekawe miejsca, które to umożliwiają daj znać ! : )<br />
Warto już dziś tworzyć semantyczne Web, które staną się częścią powiększającej się chmury Linked Open Data. O korzyściach SEO płynących z takiej reprezentacji danych typu widoczność i użyteczność nie trzeba po raz kolejny powtarzać&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://semantictechnology.eu/2010/09/jak-opublikowac-i-zaindeksowac-semantyczna-strone-www-zgodna-ze-standardami-web-3-0-lod/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Microdata w HTML5 &#8211; alternatywna dla RDFa i microformats ?</title>
		<link>http://semantictechnology.eu/2010/09/microdata-w-html5-alternatywna-dla-rdfa-i-microformats/</link>
		<comments>http://semantictechnology.eu/2010/09/microdata-w-html5-alternatywna-dla-rdfa-i-microformats/#comments</comments>
		<pubDate>Mon, 20 Sep 2010 20:54:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Ogólnie]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Microdata]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[RDFa]]></category>
		<category><![CDATA[SEO]]></category>

		<guid isPermaLink="false">http://semantictechnology.eu/?p=304</guid>
		<description><![CDATA[Wraz z rozwojem najnowszej wersji języka World Wide Web (HTML 5) pojawiła się możliwość umieszczania bezpośrednio w kodzie strony ustrukturalizowanych danych, czyli tzw. &#8222;danych w postaci mikro&#8221; czyli Microdata. Dla niektórych to nic innego jak dodatkowa możliwości tagowania treści strony &#8211; nic bardziej mylnego. Ja bym ten &#8222;dodatek&#8221; dla webmasterów/webdeveloperów/blogerów nazwał  &#8222;semantyką dla leniwych&#8221;, czyli [...]]]></description>
			<content:encoded><![CDATA[<p>Wraz z rozwojem najnowszej wersji języka World Wide Web (<strong>HTML 5</strong>) pojawiła się możliwość umieszczania bezpośrednio w kodzie strony ustrukturalizowanych danych, czyli tzw. &#8222;danych w postaci mikro&#8221; czyli <strong>Microdata</strong>. Dla niektórych to nic innego jak dodatkowa możliwości tagowania treści strony &#8211; nic bardziej mylnego. Ja bym ten &#8222;dodatek&#8221; dla webmasterów/webdeveloperów/blogerów nazwał  &#8222;semantyką dla leniwych&#8221;, czyli najszybszą możliwość umieszczania danych o danych na stronie www. A co na to <strong>Google</strong> ? Co ma wspólnego standard <strong>RDFa</strong> oraz znaczniki <strong>Microformats</strong> z Microdata ?</p>
<p><span id="more-304"></span></p>
<p>W poście pod tytułem &#8222;<a href="http://semantictechnology.eu/2010/03/rich-snippets-efektywniejsze-seo/">Rich Snippets &#8211; efektywniejsze SEO ?</a>&#8221; pisałem, że wyszukiwarka Google wprowadziła tzw. Rich Snippety, czyli możliwość uwzględniania w wynikach wyszukiwania strukturalnych danych ze strony www. Strukturalne dane były do tej pory umieszczane za pomocą standardu RDFa oraz mikroformatów. Wraz z rozwojem najnowszej wersji HTML pojawiła się kolejna, czyli trzecia możliwość tworzenia takich danych. Umożliwia to <strong>Microdata</strong>. Microdata to nic innego jak zbiór odpowiednich znaczników, które podobnie jak wspomniane wcześniej technologie, dążą do przedstawiania danych w postaci obiekt-własność-wartość. Oto dwa przykłady, które trochę wyjaśnią o co chodzi:</p>
<pre class="html">
<span class="htmlOtherTag">&lt;section itemscope&gt;</span>
<span class="htmlOtherTag">&lt;h1 itemprop=<span class="htmlAttributeValue">&quot;name http://przyklad.pl/fn&quot;</span>&gt;</span>Kundel<span class="htmlOtherTag">&lt;/h1&gt;</span>
Kundel to bardzo miły pies, którego najczęstsze kolory to <span class="htmlOtherTag">&lt;span
itemprop=<span class="htmlAttributeValue">&quot;http://przyklad.pl/color&quot;</span>&gt;</span>biały<span class="htmlOtherTag">&lt;/span&gt;</span> oraz <span class="htmlOtherTag">&lt;span
itemprop=<span class="htmlAttributeValue">&quot;http://przyklad.pl/color&quot;</span>&gt;</span>czarny<span class="htmlOtherTag">&lt;/span&gt;</span>.
<span class="htmlOtherTag">&lt;/section&gt;</span>
</pre>
<p>Powyższy opis jest jednak bezwartościowy gdyż nie da się go w żaden sposób użyć przez innych użytkowników w swych aplikacjach, gdyż opisywany obiekt (<strong>item</strong>) nie posiada typu, który powinien być wskazany przez odpowiedni adres adres URL (pod nim można również umieścić odpowiednią ontologię używaną w opisie):</p>
<pre class="html">
<span class="htmlOtherTag">&lt;section itemscope itemtype=<span class="htmlAttributeValue">&quot;http://przyklad.pl/ontologia/animals#dog&quot;</span>&gt;</span>
<span class="htmlOtherTag">&lt;h1 itemprop=<span class="htmlAttributeValue">&quot;name http://przyklad.pl/fn&quot;</span>&gt;</span>Kundel<span class="htmlOtherTag">&lt;/h1&gt;</span>
Kundel to bardzo miły pies, którego najczęstsze kolory to <span class="htmlOtherTag">&lt;span
itemprop=<span class="htmlAttributeValue">&quot;http://przyklad.pl/color&quot;</span>&gt;</span>biały<span class="htmlOtherTag">&lt;/span&gt;</span> oraz <span class="htmlOtherTag">&lt;span
itemprop=<span class="htmlAttributeValue">&quot;http://przyklad.pl/color&quot;</span>&gt;</span>czarny<span class="htmlOtherTag">&lt;/span&gt;</span>.
<span class="htmlOtherTag">&lt;/section&gt;</span>
</pre>
<p>Format Microdata podobnie jak pozostałe dwa umożliwia nam opisywanie wydarzeń (<strong>Events</strong>), ludzi (<strong>People</strong>), organizacji (<strong>Organization</strong>), recenzji (<strong>Reviews</strong>), przepisów (<strong>Recipes</strong>), produktów (<strong>Products</strong>). Opis w formacie Microdata jest bardzo zbliżony do tego wykorzystywanego przez pozostałe dwa formaty. Na anglojęzycznej Wikipedii możemy przeczytać, że Microdata jest pewnym uproszczeniem standardu RDFa. Na stronach &#8222;Google dla Webmasterów&#8221; możemy porównać przykładowe opisy jakiegoś obiektu w tych trzech formatach. Różnice występują tylko w składni. Idea opisu pozostaje identyczna.<br />
Przykładowo chcąc opisać dzisiejszy koncert Sting&#8217;a na nowo otwartym stadionie Euro 2012 w Poznaniu można by to zrobić w następujący sposób:</p>
<pre class="html">
<span class="htmlOtherTag">&lt;div itemscope itemtype=<span class="htmlAttributeValue">&quot;http://data-vocabulary.org/Event&quot;</span>&gt;</span>
<span class="htmlAnchorTag">&lt;a href=<span class="htmlAttributeValue">&quot;http://www.sport.com/events/nowystadionwpoznaniu&quot;</span> itemprop=<span class="htmlAttributeValue">&quot;url&quot;</span> &gt;</span>
<span class="htmlOtherTag">&lt;span itemprop=<span class="htmlAttributeValue">&quot;summary&quot;</span>&gt;</span>Koncert Sting&#039;a w Poznaniu<span class="htmlOtherTag">&lt;/span&gt;</span>
<span class="htmlAnchorTag">&lt;/a&gt;</span>
<span class="htmlImageTag">&lt;img itemprop=<span class="htmlAttributeValue">&quot;photo&quot;</span> src=<span class="htmlAttributeValue">&quot;sting.jpg&quot;</span> /&gt;</span>
<span class="htmlOtherTag">&lt;span itemprop=<span class="htmlAttributeValue">&quot;description&quot;</span>&gt;</span>Z okazji otwarcia stadionu na Euro 2012 w Poznaniu zagra gościnnie gwiazda światowej sceny muzycznej - Sting!<span class="htmlOtherTag">&lt;/span&gt;</span>
Kiedy:
<span class="htmlOtherTag">&lt;time itemprop=<span class="htmlAttributeValue">&quot;startDate&quot;</span> datetime=<span class="htmlAttributeValue">&quot;2010-09-20T19:00-08:00&quot;</span>&gt;</span>Oct 15, 7:00PM<span class="htmlOtherTag">&lt;/time&gt;</span>—
<span class="htmlOtherTag">&lt;time itemprop=<span class="htmlAttributeValue">&quot;endDate&quot;</span> datetime=<span class="htmlAttributeValue">&quot;2010-09-20T19:00-08:00&quot;</span>&gt;</span>Oct 15, 9:00PM<span class="htmlOtherTag">&lt;/time&gt;</span>
Gdzie:
<span class="htmlOtherTag">&lt;span itemprop=<span class="htmlAttributeValue">&quot;location&quot;</span> itemscope itemtype=<span class="htmlAttributeValue">&quot;http://data-vocabulary.org/​Organization&quot;</span>&gt;</span>
<span class="htmlOtherTag">&lt;span itemprop=<span class="htmlAttributeValue">&quot;name&quot;</span>&gt;</span>Stadion w Poznaniu<span class="htmlOtherTag">&lt;/span&gt;</span>
<span class="htmlOtherTag">&lt;span itemprop=<span class="htmlAttributeValue">&quot;address&quot;</span> itemscope itemtype=<span class="htmlAttributeValue">&quot;http://data-vocabulary.org/Address&quot;</span>&gt;</span>
<span class="htmlOtherTag">&lt;span itemprop=<span class="htmlAttributeValue">&quot;street-address&quot;</span>&gt;</span>Sportowa 16<span class="htmlOtherTag">&lt;/span&gt;</span>,
<span class="htmlOtherTag">&lt;span itemprop=<span class="htmlAttributeValue">&quot;locality&quot;</span>&gt;</span>Poznań<span class="htmlOtherTag">&lt;/span&gt;</span>,
<span class="htmlOtherTag">&lt;span itemprop=<span class="htmlAttributeValue">&quot;region&quot;</span>&gt;</span>PL<span class="htmlOtherTag">&lt;/span&gt;</span>
<span class="htmlOtherTag">&lt;/span&gt;</span>
<span class="htmlOtherTag">&lt;span itemprop=<span class="htmlAttributeValue">&quot;geo&quot;</span> itemscope itemtype=<span class="htmlAttributeValue">&quot;http://data-vocabulary.org/​Geo&quot;</span>&gt;</span>
<span class="htmlOtherTag">&lt;meta itemprop=<span class="htmlAttributeValue">&quot;latitude&quot;</span> content=<span class="htmlAttributeValue">&quot;45.884945&quot;</span>&gt;</span><span class="htmlOtherTag">&lt;/meta&gt;</span>
<span class="htmlOtherTag">&lt;meta itemprop=<span class="htmlAttributeValue">&quot;longitude&quot;</span> content=<span class="htmlAttributeValue">&quot;-145.444446&quot;</span>&gt;</span><span class="htmlOtherTag">&lt;/meta&gt;</span>
<span class="htmlOtherTag">&lt;/span&gt;</span>
<span class="htmlOtherTag">&lt;/span&gt;</span> Kategoria: <span class="htmlOtherTag">&lt;span itemprop=<span class="htmlAttributeValue">&quot;eventType&quot;</span>&gt;</span>Koncert<span class="htmlOtherTag">&lt;/span&gt;</span>
<span class="htmlOtherTag">&lt;/div&gt;</span>
</pre>
<p>Google na swoim blogu 11 marca 2010 ogłosiło wykorzystywanie tego formatu do wyświetlania strukturalnych danych ze stron www w swoich SERP&#8217;ach. Oczywiście wszystko jest dopiero w fazie początkowej i nikt nie gwarantuje, że jeśli ktoś stosuje takie dane na swojej stronie to wyszukiwarka te dane wyświetli w swoich Rich Snippet&#8217;ach.</p>
<p>Jak widać wyszukiwarka Google poważnie podchodzi do strukturalnych danych w swoich SERP&#8217;ach co może mieć wpływ na widoczność strony oraz jej użyteczność (<strong>Web usability</strong>). Co ciekawe parę miesięcy temu Google ogłosiło wykupienie <strong>Metaweb</strong> a z nią jej bazy wiedzy <strong>Freebase</strong>. Google wierzy, że jej zasoby będą nieodzownym źródłem wspierającym tworzenie jak najbardziej relewantnych wyników zapytań wprowadzanych przez użytkowników do wyszukiwarki, ale o tym może w kolejnym poście&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://semantictechnology.eu/2010/09/microdata-w-html5-alternatywna-dla-rdfa-i-microformats/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rich Snippets &#8211; efektywniejsze SEO ?</title>
		<link>http://semantictechnology.eu/2010/03/rich-snippets-efektywniejsze-seo/</link>
		<comments>http://semantictechnology.eu/2010/03/rich-snippets-efektywniejsze-seo/#comments</comments>
		<pubDate>Sun, 07 Mar 2010 15:27:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Ogólnie]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[RDFa]]></category>
		<category><![CDATA[Rich Snippets]]></category>
		<category><![CDATA[SEO]]></category>

		<guid isPermaLink="false">http://semantictechnology.eu/?p=175</guid>
		<description><![CDATA[W poście dotyczącym pozycjonowania w sieci Web 3.0 napisałem, że już prawie rok temu Google i Yahoo wprowadziły do swego algorytmu wyszukiwania ustrukturalizowane dane znajdujące się na stronach www. Dane te to wspomniane wcześniej znaczniki microformats oraz RDFa. Wykorzystanie ich w wynikach wyszukiwania Google nazwało Rich Snippets. Czy mają one (będą mieć) jakiś wpływ na [...]]]></description>
			<content:encoded><![CDATA[<p>W poście dotyczącym pozycjonowania w sieci Web 3.0 napisałem, że już prawie rok temu Google i Yahoo wprowadziły do swego algorytmu wyszukiwania ustrukturalizowane dane znajdujące się na stronach www. Dane te to wspomniane wcześniej znaczniki microformats oraz RDFa. Wykorzystanie ich w wynikach wyszukiwania Google nazwało <strong>Rich Snippets</strong>. Czy mają one (będą mieć) jakiś wpływ na pozycję konkretnej strony w wyszukiwarce ?<br />
<span id="more-175"></span><br />
Jako rzecze Google na swojej stronie dla webmasterów strukturalne dane ułatwiają korzystanie z internetu, pomagają w zrozumieniu treści strony oraz dzięki nim może być ona lepiej zaprezentowana w wynikach wyszukiwania. Jeśli użytkownik napotka stronę ze snippetami w wyszukiwarce, może na nich znaleźć więcej informacji, które go interesują bez wchodzenia na konkretną stronę dzięki czemu zostanie niejako zachęcony do dalszej penetracji.</p>
<p style="text-align: left;">Co z tego wynika ? Można dzięki temu osiągnąć wzrost <strong>CTR</strong> (click-through rate), spadek <strong>Bounce Rate</strong>, zwiększyć ruch na stronie. Jest to jedna z idei SEO. Jeśli chodzi o samą pozycję w wyszukiwarce to na stronach Google dla Webmasterów możemy się dowiedzieć, że:</p>
<blockquote>
<p style="text-align: left;">Marking up your data for rich snippets won&#8217;t affect your page&#8217;s ranking in search results</p>
</blockquote>
<h3 style="text-align: left;">Rich Snippets w praktyce:</h3>
<p><a href="http://semantictechnology.eu/wp-content/uploads/2010/03/rich_snippets.jpg"><img class="aligncenter size-full wp-image-181" title="rich_snippets" src="http://semantictechnology.eu/wp-content/uploads/2010/03/rich_snippets.jpg" alt="" width="486" height="175" /></a>Opisywać możemy następujące elementy (na dzień dzisiejszy <span style="color: #ff0000;">tylko w języku angielskim</span>) za pomocą microformats albo RDFa (bez znaczenia, który sposób wybierzemy):</p>
<ul>
<li>reviews</li>
<li>people profiles</li>
<li>business listings</li>
<li>events</li>
</ul>
<p>Przykładowy opis z wykorzystaniem <strong>microformats</strong>:</p>
<pre class="html">
<span class="htmlOtherTag">&lt;div class=<span class="htmlAttributeValue">&quot;hreview-aggregate&quot;</span>&gt;</span>
<span class="htmlOtherTag">&lt;div class=<span class="htmlAttributeValue">&quot;item vcard&quot;</span>&gt;</span>
<span class="htmlOtherTag">&lt;h1 class=<span class="htmlAttributeValue">&quot;page-title fn org&quot;</span>&gt;</span>Pizza My Heart<span class="htmlOtherTag">&lt;/h1&gt;</span>
...
<span class="htmlOtherTag">&lt;span class=<span class="htmlAttributeValue">&quot;count&quot;</span>&gt;</span>7<span class="htmlOtherTag">&lt;/span&gt;</span> reviews
<span class="htmlOtherTag">&lt;span class=<span class="htmlAttributeValue">&quot;pricerange&quot;</span>&gt;</span>Under $10 peer entre<span class="htmlOtherTag">&lt;/span&gt;</span>
<span class="htmlOtherTag">&lt;/div&gt;</span>
<span class="htmlOtherTag">&lt;/div&gt;</span>
</pre>
<p>Te same informacje zapisane przy użyciu RDFa:</p>
<pre class="html">
<span class="htmlOtherTag">&lt;div xmls:v=<span class="htmlAttributeValue">&quot;http://rdf.data-vocabulary.org/#&quot;</span> typeof=<span class="htmlAttributeValue">&quot;v:Review-aggregate&quot;</span>&gt;</span>
<span class="htmlOtherTag">&lt;div rel=<span class="htmlAttributeValue">&quot;v:itemreviewed&quot;</span>&gt;</span>
<span class="htmlOtherTag">&lt;span typeof=<span class="htmlAttributeValue">&quot;v:Product&quot;</span>&gt;</span>
<span class="htmlOtherTag">&lt;h1 property=<span class="htmlAttributeValue">&quot;v:name&quot;</span>&gt;</span>Pizza My Heart<span class="htmlOtherTag">&lt;/h1&gt;</span>
<span class="htmlOtherTag">&lt;span property=<span class="htmlAttributeValue">&quot;v:count&quot;</span>&gt;</span>7<span class="htmlOtherTag">&lt;/span&gt;</span> review
<span class="htmlOtherTag">&lt;span property=<span class="htmlAttributeValue">&quot;v:pricerange&quot;</span>&gt;</span>Under 10$ per entree<span class="htmlOtherTag">&lt;/span&gt;</span>
<span class="htmlOtherTag">&lt;/div&gt;</span>
<span class="htmlOtherTag">&lt;/div&gt;</span>
</pre>
<p>Ktoś kto umieści na swojej stronie dane zapisane w ten sposób może je przetestować pod adresem: <span style="color: #ff6600;">http://www.google.com/webmasters/tools/richsnippets?</span>. Narzędzie to pokaże jak wprowadzone dane prezentowałyby się w wyszukiwarce. Dodanie na stronę takich danych nie gwarantuje jednak pokazywanie ich w wynikach wyszukiwania. Algorytm Google pokazuje je tylko wtedy kiedy uzna, że są one przydatne użytkownikowi. Można też poinformować Google o dodaniu strukturalnych danych na stronie pod adresem <span style="color: #ff6600;">http://www.google.com/support/webmasters/bin/request.py?contact_type=rich_snippets_feedback</span> wypełniając formularz.</p>
<p>Przeglądając opinię osób, które zdecydowały się na taką formę opisu danych na stronie nie zauważyłem jednoznacznej odpowiedzi na pytanie postawione na początku. Oto kilka wypowiedzi z różnych list dyskusyjnych:</p>
<blockquote><p>(&#8230;) So, in my mind, it appears that while we saw a benefit from the implementation of rich snippets, we subsequently saw some kind of penalty or filter applied against us because we increased traffic too much &#8211; all through a technique that Google are encouraging people to use.</p>
<p>(&#8230;) I&#8217;ve just got to think something else is going on with that traffic drop. I&#8217;ve seen several site that added RDFa mark-up and weren&#8217;t hurt at all &#8211; in fact, they were helped, as was your initial experience.</p>
<p>(&#8230;) no noticeable changes to existing traffic trends.</p></blockquote>
<p>Tak czy inaczej warto mieć w kręgu zainteresowań temat Rich Snippets, Microformats oraz RDFa. W przyszłości zapewne coraz więcej rozwiązań będzie zaimplementowanych w wyszukiwarkach, które będą wykorzystywały semantyczne znaczniki na stronach www. Jak to wpłynie na jej optymalizację w wyszukiwarkach ? &#8211; czas pokarze.</p>
]]></content:encoded>
			<wfw:commentRss>http://semantictechnology.eu/2010/03/rich-snippets-efektywniejsze-seo/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>SEO Web 3.0 &#8211; pozycjonowanie przy użyciu RDFa, Microformats i ontologii</title>
		<link>http://semantictechnology.eu/2010/03/seo-web-3-0-pozycjonowanie-przy-uzyciu-rdfa-microformats-i-ontologii/</link>
		<comments>http://semantictechnology.eu/2010/03/seo-web-3-0-pozycjonowanie-przy-uzyciu-rdfa-microformats-i-ontologii/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 20:16:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Ogólnie]]></category>
		<category><![CDATA[Good Relations]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[OWL]]></category>
		<category><![CDATA[PageRank]]></category>
		<category><![CDATA[pozycjonowanie]]></category>
		<category><![CDATA[RDFa]]></category>
		<category><![CDATA[SEM]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[Yahoo]]></category>

		<guid isPermaLink="false">http://semantictechnology.eu/?p=141</guid>
		<description><![CDATA[Na wstępie trzeba trochę powiedzieć jak to całe SEO wyglądało dawno, dawno temu&#8230; Za czasów Web 1.0 sprawa była całkiem prosta bo ograniczała się do kilku meta tagów (description i keywords) + dodanie stron do paru lepszych katalogów np. DMOZ. Całe to &#8222;pozycjonowanie&#8221; było jednym wielki spamem, przez który wyniki zwracane przez wyszukiwarki daleko odbiegały [...]]]></description>
			<content:encoded><![CDATA[<p>Na wstępie trzeba trochę powiedzieć jak to całe SEO wyglądało dawno, dawno temu&#8230;</p>
<p>Za czasów Web 1.0 sprawa była całkiem prosta bo ograniczała się do kilku meta tagów (description i keywords) + dodanie stron do paru lepszych katalogów np. DMOZ. Całe to &#8222;pozycjonowanie&#8221; było jednym wielki spamem, przez który wyniki zwracane przez wyszukiwarki daleko odbiegały od ideału i można było nimi w łatwy sposób manipulować. Wyszukiwarki nie rozumiały oczywiście tekstu na żadnej z indeksowanej stron.</p>
<p>W 1998 roku Larry &amp; Sergei opracowali wskaźnik Page Rank (PR), który w wielkim skrócie mówi, że:</p>
<ul>
<li>link do strony jest &#8222;głosem&#8221; na nią</li>
<li>link linkowi nie jest równy.. więc</li>
<li>ważne kto linkuje do strony (im ważniejsza strona, często odwiedzana tym lepiej)</li>
</ul>
<p><span id="more-141"></span><br />
Algorytm PR nie jest znany. Powstało swego czasu wiele &#8222;firm&#8221; zajmujących się pozycjonowaniem. Istnieje masa pozycjonerów/spamerów bombardujących Google linkami na różnego rodzaju stronach śmietnikach, preclach, niby katalogach. Powstają systemy wymiany linków rotacyjnych, wiele stron za umieszczenie u siebie odnośnika żąda nie małej gotówki (jak to zresztą a w życiu bywa). Powstają linki sponsorowane w Google (AdWords).</p>
<p>Ważne aby pamiętać o następujących rzeczach:</p>
<ul>
<li>Page title</li>
<li>Anchor text</li>
<li>Mod rewrite</li>
<li>Image alt</li>
<li>Content</li>
<li>Mapa strony</li>
<li>Serwisy społecznościowe</li>
<li>Dobra użyteczność witryny, jej architektura</li>
<li>&#8230; i jeszcze kilka innych rzeczy</li>
</ul>
<p>Pozycjonowanie w sieci Web 2.0 nadal pozostawia wiele do życzenia. Wyszukiwarki nadal nie znają znaczenia treści zamieszczanej na stronach www.</p>
<p>Lekarstwem na to może okazać się semantyczna sieć www. Użytkownik nie jest uzależniony tylko i wyłącznie od wyszukiwarki. Odpowiednio zaprogramowany agent może pobierać bezpośrednio interesujące nas dane prosto ze stron innych użytkowników i wykorzystując SPARQL dostarczyć nam je od razu (nie trzeba czekać na zaktualizowanie zasobów wyszukiwarki). Możemy budować własne aplikacje przeszukujące semantyczne zasoby zapisane w plikach RDF już dziś. Resource Description Framework &#8211; in &#8211; attributes (<strong>RDFa</strong>) pozwala na zapis trójek s-p-b bezpośrednio na stronach www. Już niemal rok temu (maj 2009) Google i Yahoo ogłosiło wspieranie semantycznych znaczników w swoich wyszukiwarkach. Ponadto rozpoznają one znaczniki <strong>Microformats</strong>:</p>
<ul>
<li>hCalender</li>
<li>Hcard<a href="http://microformats.org/"><img class="alignright size-full wp-image-149" title="microformats" src="http://semantictechnology.eu/wp-content/uploads/2010/03/microformats.png" alt="" width="320" height="104" /></a></li>
<li>HReview</li>
<li>Geo</li>
<li>VoteLinks</li>
<li>rel-tag</li>
<li>&#8230;</li>
</ul>
<p>Na konferencji <strong>Search Engine Strategies 2010 Copenhagen: Web 3.0: How the Semantic Web will revolutionize Search Marketing and eCommerce</strong> poruszano min. zagadnienia opisu witryn sklepów internetowych przy pomocy ontologii takich jak <a title="Good Relations Ontology" href="http://www.heppnetz.de/projects/goodrelations/" target="_blank"><strong>Good Relations</strong></a>, <strong>eClassOWL</strong> czy będącej w trakcie budowy przez  The Federal Economic Chamber of Austria, the e-business standardization initiative AustriaPRO, the Austrian National Tourist Office, and Smart Information Systems ontologii<strong> EBSemantics</strong>. <a href="http://semantictechnology.eu/wp-content/uploads/2010/03/goodrelations-logo.gif"><img class="alignleft size-full wp-image-154" title="goodrelations-logo" src="http://semantictechnology.eu/wp-content/uploads/2010/03/goodrelations-logo.gif" alt="" width="265" height="72" /></a>Przedstawiano po raz kolejny efekty zamieszczenia na stronach sieci sklepów <strong>BestBuy</strong> znaczników RDFa oraz ontologii Good Relations &#8211; 30% wzrost ruchu na stronie oraz 15% wzrost CTR (Click-through-Rate). Ze znanych witryn na świecie wykorzystujących semantyczne technologie trzeba wspomnieć o New York Times, BBC, TESCO, katalog O&#8217;Reilly czy The White House&#8230;</p>
<p>Przyjazny tutorial RDFa można znaleść na stronie <a title="RDFa tutorial" href="http://www.w3.org/MarkUp/2009/rdfa-for-html-authors" target="_blank">RDFA for HTML Authors</a></p>
<p>Dla osób, które nie miały styczności z ontologiami przed czytaniem o RDFa powinny się zaznajomić przynajmniej z takowymi:</p>
<ul>
<li><a title="FOAF" href="http://www.foaf-project.org/" target="_blank">Friend of a Friend</a> (FOAF)</li>
<li><a title="DC" href="http://dublincore.org/" target="_blank">Dublin Core</a> (DC)</li>
</ul>
<p><a href="http://semantictechnology.eu/wp-content/uploads/2010/03/black-magic-seo.jpg"><img class="aligncenter size-full wp-image-143" title="black-magic-seo" src="http://semantictechnology.eu/wp-content/uploads/2010/03/black-magic-seo.jpg" alt="" width="637" height="808" /></a></p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><a class="zemanta-pixie-a" title="Reblog this post [with Zemanta]" href="http://reblog.zemanta.com/zemified/10a83cf6-daba-4ac9-b5f7-d2cc4ac567ab/"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/reblog_e.png?x-id=10a83cf6-daba-4ac9-b5f7-d2cc4ac567ab" alt="Reblog this post [with Zemanta]" /></a><span class="zem-script more-related pretty-attribution"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>
]]></content:encoded>
			<wfw:commentRss>http://semantictechnology.eu/2010/03/seo-web-3-0-pozycjonowanie-przy-uzyciu-rdfa-microformats-i-ontologii/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Odpytywanie semantycznych zasobów z użyciem klas ARC</title>
		<link>http://semantictechnology.eu/2010/02/odpytywanie-semantycznych-zasobow-z-uzyciem-klas-arc/</link>
		<comments>http://semantictechnology.eu/2010/02/odpytywanie-semantycznych-zasobow-z-uzyciem-klas-arc/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 20:23:54 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Programowanie]]></category>
		<category><![CDATA[ARC]]></category>
		<category><![CDATA[DBpedia]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[RDFa]]></category>
		<category><![CDATA[SPARQL]]></category>

		<guid isPermaLink="false">http://semantictechnology.eu/?p=94</guid>
		<description><![CDATA[Od jakiegoś czasu dostępnych jest kilka, mniej lub bardziej popularnych narzędzi, za pomocą których można korzystać z dobrodziejstw semantic web. Większość języków programowania posiada na dzień dzisiejszy takowe. Jednym z nich jest ARC (RDF Classes for PHP). Narzędzie to posiada kilka bardzo użytecznych funkcji, za pomocą których w łatwy sposób możemy odpytywać zasoby opisane w [...]]]></description>
			<content:encoded><![CDATA[<p>Od jakiegoś czasu dostępnych jest kilka, mniej lub bardziej popularnych narzędzi, za pomocą których można korzystać z dobrodziejstw semantic web. Większość języków programowania posiada na dzień dzisiejszy takowe. Jednym z nich jest <strong>ARC</strong> (<em>RDF Classes for PHP</em>).<a href="http://semantictechnology.eu/wp-content/uploads/2010/02/arc_logo.gif"><img class="alignleft size-full wp-image-107" title="arc_logo" src="http://semantictechnology.eu/wp-content/uploads/2010/02/arc_logo.gif" alt="" width="105" height="70" /></a></p>
<p>Narzędzie to posiada kilka bardzo użytecznych funkcji, za pomocą których w łatwy sposób możemy odpytywać zasoby opisane w RDF. Klasy te posiadają parsery dla: RDF/XML, Turtle, SPARQL + SPOG, Legacy XML, HTML tag soup, RSS 2.0, Google Social Graph API JSON,  umożliwiają wykorzystanie SPARQL Endpoint w bardzo szybki i prosty sposób, posiadają możliwość odczytywanie mikroformatów ze stron www (DC, eRDF, microformats, OpenID, RDFa). Pełna funkcjonalność opisana jest w dokumentacji pod adresem arc.semsol.org.<br />
<span id="more-94"></span><br />
Pierwszym przykładowym zastosowaniem klas ARC jaki chce pokazać to zapytanie do serwisu DBPedia z wykorzystaniem SPARQL Endpoint. W ARC cały proces łączenia się z serwisem to parę linijek kodu:</p>
<pre class="php">
<span class="phpKeyword"><span class="phpKeyword">
include_once<span class="phpOperator">(</span></span></span><span class="phpString">'arc/ARC2<span class="phpOperator">.</span>php'</span><span class="phpOperator">)</span><span class="phpText">;</span>
$config <span class="phpOperator">=</span> <span class="phpFunction">array</span><span class="phpOperator">(</span>
<span class="phpString">'remote_store_endpoint'</span> <span class="phpOperator"><span class="phpOperator">=</span><span class="phpOperator">&gt;</span></span> <span class="phpString">'http<span class="phpOperator">:</span><span class="phpComment">//dbpedia.org/sparql'</span>,
</span><span class="phpOperator">)</span><span class="phpText">;</span>
$store <span class="phpOperator">=</span> ARC2<span class="phpOperator">:</span><span class="phpOperator">:</span>getRemoteStore<span class="phpOperator">(</span>$config<span class="phpOperator">)</span><span class="phpText">;</span>
</pre>
<p>Zapytanie będzie brzmiało tak: &#8222;<em>Wyszukaj wszystkie nazwy państw (commonName), ich waluty (currency) z oznakowaniem (currencyCode), których oficjalny język (officialLanguages) to hiszpański.</em>&#8221;</p>
<pre class="php">
$query <span class="phpOperator">=</span> <span class="phpString">'
PREFIX countries<span class="phpOperator">:</span> <span class="phpOperator">&lt;</span>http<span class="phpOperator">:</span><span class="phpComment"><span class="phpComment">//dbpedia.org/ontology/Country</span><span class="phpOperator">&gt;</span>
</span>
SELECT DISTINCT <span class="phpOperator">?</span>name <span class="phpOperator">?</span>currency <span class="phpOperator">?</span>code WHERE <span class="phpOperator">{</span>
<span class="phpOperator">?</span>b rdf<span class="phpOperator">:</span>type countries<span class="phpOperator">:</span> <span class="phpOperator">.</span>
<span class="phpOperator">?</span>b <span class="phpOperator">&lt;</span>http<span class="phpOperator">:</span><span class="phpComment"><span class="phpComment">//dbpedia.org/property/officialLanguages</span><span class="phpOperator">&gt;</span> <span class="phpOperator">?</span>c <span class="phpOperator">.</span>
</span><span class="phpOperator">?</span>b <span class="phpOperator">&lt;</span>http<span class="phpOperator">:</span><span class="phpComment"><span class="phpComment">//dbpedia.org/property/commonName</span><span class="phpOperator">&gt;</span> <span class="phpOperator">?</span>name <span class="phpOperator">.</span>
</span><span class="phpOperator">?</span>b <span class="phpOperator">&lt;</span>http<span class="phpOperator">:</span><span class="phpComment"><span class="phpComment">//dbpedia.org/ontology/currency</span><span class="phpOperator">&gt;</span> <span class="phpOperator">?</span>currency <span class="phpOperator">.</span>
</span><span class="phpOperator">?</span>b <span class="phpOperator">&lt;</span>http<span class="phpOperator">:</span><span class="phpComment"><span class="phpComment">//dbpedia.org/property/currencyCode</span><span class="phpOperator">&gt;</span> <span class="phpOperator">?</span>code
</span>FILTER<span class="phpOperator">(</span>regex<span class="phpOperator">(</span><span class="phpOperator">?</span>c, <span class="phpString">"Spanish"</span><span class="phpOperator">)</span><span class="phpOperator">)</span>
<span class="phpOperator">}</span>
'</span><span class="phpText">;</span>
$r <span class="phpOperator">=</span> <span class="phpString">'<span class="phpOperator">&lt;</span>table<span class="phpOperator">&gt;</span>'</span><span class="phpText">;</span>
<span class="phpKeyword">
if </span><span class="phpOperator">(</span>$rows <span class="phpOperator">=</span> $store<span class="phpOperator">-<span class="phpOperator">&gt;</span></span>query<span class="phpOperator">(</span>$q, <span class="phpString">'rows'</span><span class="phpOperator">)</span><span class="phpOperator">)</span> <span class="phpOperator">{</span>
<span class="phpKeyword">
foreach </span><span class="phpOperator">(</span>$rows<span class="phpKeyword"> as </span>$row<span class="phpOperator">)</span> <span class="phpOperator">{</span>
$r <span class="phpOperator">.=</span> <span class="phpString">'<span class="phpOperator">&lt;</span>tr<span class="phpOperator">&gt;</span><span class="phpOperator">&lt;</span>td<span class="phpOperator">&gt;</span>'</span> <span class="phpOperator">.</span> $row<span class="phpOperator">[</span><span class="phpString">'name'</span><span class="phpOperator">]</span> <span class="phpOperator">.</span> <span class="phpString">'<span class="phpOperator">&lt;</span>/td<span class="phpOperator">&gt;</span><span class="phpOperator">&lt;</span>td<span class="phpOperator">&gt;</span>'</span> <span class="phpOperator">.</span> $row<span class="phpOperator">[</span><span class="phpString">'currency'</span><span class="phpOperator">]</span> <span class="phpOperator">.</span> <span class="phpString">'<span class="phpOperator">&lt;</span>/td<span class="phpOperator">&gt;</span><span class="phpOperator">&lt;</span>td<span class="phpOperator">&gt;</span>'</span> <span class="phpOperator">.</span> $row<span class="phpOperator">[</span><span class="phpString">'code'</span><span class="phpOperator">]</span> <span class="phpOperator">.</span> <span class="phpString">'<span class="phpOperator">&lt;</span>/td<span class="phpOperator">&gt;</span><span class="phpOperator">&lt;</span>/tr<span class="phpOperator">&gt;</span>'</span><span class="phpText">;</span>
<span class="phpOperator">}</span>
<span class="phpOperator">}</span>
$r<span class="phpOperator">.=</span><span class="phpString">'<span class="phpOperator">&lt;</span>/table<span class="phpOperator">&gt;</span>'</span><span class="phpText">;</span>
<span class="phpFunction">echo</span> $r <span class="phpOperator">?</span> $r  <span class="phpOperator">:</span> <span class="phpString">'nic nie znaleziono'</span><span class="phpText">;</span>
</pre>
<p>Otrzymany wynik wyglądał tak:</p>
<table>
<tbody>
<tr>
<td>Peru</td>
<td>[[Peruvian nuevo sol|Nuevo Sol]]</td>
<td>PEN</td>
</tr>
<tr>
<td>Costa Rica</td>
<td>[[Costa Rican colón]]</td>
<td>CRC</td>
</tr>
<tr>
<td>Easter Island</td>
<td>[[Chilean Peso|Peso]]</td>
<td>CLP</td>
</tr>
<tr>
<td>Chile</td>
<td>[[Chilean peso|Peso]]</td>
<td>CLP</td>
</tr>
<tr>
<td>Juan Fernández Islands</td>
<td>[[Chilean peso|Peso]]</td>
<td>CLP</td>
</tr>
<tr>
<td>Cuba</td>
<td>4217</td>
<td>CUC</td>
</tr>
<tr>
<td>Dominican Republic</td>
<td>[[Dominican peso|Peso]]</td>
<td>DOP</td>
</tr>
<tr>
<td>Honduras</td>
<td>[[Honduran lempira|Lempira]]</td>
<td>HNL</td>
</tr>
<tr>
<td>Western Sahara</td>
<td>[[Moroccan Dirham|Moroccan]] [[dirham]]</td>
<td>MAD</td>
</tr>
<tr>
<td>Nicaragua</td>
<td>[[Nicaraguan córdoba|Córdoba]]</td>
<td>NIO</td>
</tr>
<tr>
<td>Venezuela</td>
<td>4</td>
<td>VEF</td>
</tr>
<tr>
<td>Equatorial Guinea</td>
<td>[[Central African CFA franc]]</td>
<td>XAF</td>
</tr>
<tr>
<td>Spain</td>
<td>[[Euro]] ([[Euro sign|€]])</td>
<td>EUR</td>
</tr>
<tr>
<td>Puerto Rico</td>
<td>[[United States dollar]]</td>
<td>USD</td>
</tr>
<tr>
<td>Ecuador</td>
<td>[[United States dollar|U.S. dollar]]</td>
<td>USD</td>
</tr>
<tr>
<td>El Salvador</td>
<td>[[United States dollar|U.S. dollar]]</td>
<td>USD</td>
</tr>
<tr>
<td>Argentina</td>
<td>[[Argentine peso|Peso]]</td>
<td>ARS</td>
</tr>
<tr>
<td>Colombia</td>
<td>[[Colombian peso|Peso]]</td>
<td>COP</td>
</tr>
<tr>
<td>Bolivia</td>
<td>[[Bolivian boliviano|Boliviano]]</td>
<td>BOB</td>
</tr>
<tr>
<td>Uruguay</td>
<td>4217</td>
<td>UYU</td>
</tr>
</tbody>
</table>
<p>Drugim przykładem zastosowania tego narzędzia jest odczytywanie semantycznych znaczników ze stron www. ARC umożliwia odpytywanie pobranych danych po wcześniejszym &#8222;zamontowaniu&#8221; ich w lokalnej bazie danych użytkownika. Cały proces polega na zapisie tychże danych do specjalnie oznakowanych tabel (przez dodanie prefiksu). Pisząc zapytania SPARQL ARC przekształca je na zapytania odpowiednie dla relacyjncyh baz danych np. MySQL.</p>
<p>Prosta strona www z paroma semantycznymi znacznikami (DC i FOAF) mogłaby wyglądać tak:</p>
<pre class="html">
<span class="htmlOtherTag">&lt;?xml version=<span class="htmlAttributeValue">&quot;1.0&quot;</span> encoding=<span class="htmlAttributeValue">&quot;UTF-8&quot;</span>?&gt;</span>
<span class="htmlOtherTag">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML+RDFa 1.0//EN&quot;
&quot;http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd&quot;&gt;</span>
<span class="htmlOtherTag">&lt;html xmlns=<span class="htmlAttributeValue">&quot;http://www.w3.org/1999/xhtml&quot;</span>
xmlns:foaf=<span class="htmlAttributeValue">&quot;http://xmlns.com/foaf/0.1/&quot;</span>
xmlns:dc=<span class="htmlAttributeValue">&quot;http://purl.org/dc/elements/1.1/&quot;</span>
version=<span class="htmlAttributeValue">&quot;XHTML+RDFa 1.0&quot;</span> xml:lang=<span class="htmlAttributeValue">&quot;en&quot;</span>&gt;</span>
<span class="htmlOtherTag">&lt;head&gt;</span>
<span class="htmlOtherTag">&lt;title&gt;</span><span class="htmlOtherTag">&lt;/title&gt;</span>
<span class="htmlOtherTag">&lt;meta property=<span class="htmlAttributeValue">&quot;dc:creator&quot;</span> content=<span class="htmlAttributeValue">&quot;admin&quot;</span> /&gt;</span>
<span class="htmlOtherTag">&lt;/head&gt;</span>
<span class="htmlOtherTag">&lt;body&gt;</span>
<span class="htmlOtherTag">&lt;p&gt;</span>Mój nick to <span class="htmlOtherTag">&lt;span property=<span class="htmlAttributeValue">&quot;foaf:nick&quot;</span>&gt;</span>testowy_nick44<span class="htmlOtherTag">&lt;/span&gt;</span><span class="htmlOtherTag">&lt;br /&gt;</span>
Mój ulubiony gatunek filmu to
<span class="htmlOtherTag">&lt;span property=<span class="htmlAttributeValue">&quot;foaf:interest&quot;</span>&gt;</span>Sci-Fi<span class="htmlOtherTag">&lt;/span&gt;</span><span class="htmlOtherTag">&lt;br /&gt;</span>
Mój blog znajdziesz ppd adresem <span class="htmlOtherTag">&lt;span property=<span class="htmlAttributeValue">&quot;foaf:homepage&quot;</span>&gt;</span>semantictechnology.eu<span class="htmlOtherTag">&lt;/span&gt;</span>
<span class="htmlOtherTag">&lt;/p&gt;</span>
<span class="htmlOtherTag">&lt;/body&gt;</span>
<span class="htmlOtherTag">&lt;/html&gt;</span>
</pre>
<p>Skrypt w PHP odczytujący nick, stronę domową oraz zainteresowania wszystkich osób opisanych znacznikiem <em>foaf</em> z wykorzystaniem klas ARC mógłby wyglądać tak:</p>
<pre class="php">
$config <span class="phpOperator">=</span> <span class="phpFunction">array</span><span class="phpOperator">(</span>
<span class="phpString">'db_name'</span> <span class="phpOperator"><span class="phpOperator">=</span><span class="phpOperator">&gt;</span></span> <span class="phpString">'arc'</span>,
<span class="phpString">'db_user'</span> <span class="phpOperator"><span class="phpOperator">=</span><span class="phpOperator">&gt;</span></span> <span class="phpString">'root'</span>,
<span class="phpString">'db_pwd'</span> <span class="phpOperator"><span class="phpOperator">=</span><span class="phpOperator">&gt;</span></span> <span class="phpString">'password'</span>,
<span class="phpString">'store_name'</span> <span class="phpOperator"><span class="phpOperator">=</span><span class="phpOperator">&gt;</span></span> <span class="phpString">'arc_tables'</span>,
<span class="phpString">'max_errors'</span> <span class="phpOperator"><span class="phpOperator">=</span><span class="phpOperator">&gt;</span></span> 100,
<span class="phpOperator">)</span><span class="phpText">;</span>
$store <span class="phpOperator">=</span> ARC2<span class="phpOperator">:</span><span class="phpOperator">:</span>getStore<span class="phpOperator">(</span>$config<span class="phpOperator">)</span><span class="phpText">;</span>
<span class="phpKeyword">
if </span><span class="phpOperator">(</span><span class="phpOperator">!</span>$store<span class="phpOperator">-<span class="phpOperator">&gt;</span></span>isSetUp<span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpOperator">)</span> <span class="phpOperator">{</span>
$store<span class="phpOperator">-<span class="phpOperator">&gt;</span></span>setUp<span class="phpOperator">(</span><span class="phpOperator">)</span><span class="phpText">;</span>
<span class="phpOperator">}</span>
$store<span class="phpOperator">-<span class="phpOperator">&gt;</span></span>query<span class="phpOperator">(</span><span class="phpString">'LOAD <span class="phpOperator">&lt;</span>http<span class="phpOperator">:</span><span class="phpComment"><span class="phpComment">//www<span class="phpOperator">.</span>przykladowaatrona.pl/semantycznapodstrona.html</span><span class="phpOperator">&gt;</span>'</span><span class="phpOperator">)</span><span class="phpText">;</span>
</span>
$q <span class="phpOperator">=</span> <span class="phpString">'
PREFIX foaf<span class="phpOperator">:</span> <span class="phpOperator">&lt;</span>http<span class="phpOperator">:</span><span class="phpComment"><span class="phpComment">//xmlns<span class="phpOperator">.</span>com/foaf/<span class="phpNumber">0</span><span class="phpOperator">.</span><span class="phpNumber">1</span>/</span><span class="phpOperator">&gt;</span> <span class="phpOperator">.</span>
</span>SELECT <span class="phpOperator">?</span>nick <span class="phpOperator">?</span>interest <span class="phpOperator">?</span>homepage WHERE <span class="phpOperator">{</span>
<span class="phpOperator">?</span>p foaf<span class="phpOperator">:</span>homepage <span class="phpOperator">?</span>homepage <span class="phpText">;</span> foaf<span class="phpOperator">:</span>nick <span class="phpOperator">?</span>nick <span class="phpText">;</span> foaf<span class="phpOperator">:</span>interest <span class="phpOperator">?</span>interest
<span class="phpOperator">}</span>
'</span><span class="phpText">;</span>
$r <span class="phpOperator">=</span> <span class="phpString">''</span><span class="phpText">;</span>
<span class="phpKeyword">
if </span><span class="phpOperator">(</span>$rows <span class="phpOperator">=</span> $store<span class="phpOperator">-<span class="phpOperator">&gt;</span></span>query<span class="phpOperator">(</span>$q, <span class="phpString">'rows'</span><span class="phpOperator">)</span><span class="phpOperator">)</span> <span class="phpOperator">{</span>
<span class="phpKeyword">
foreach </span><span class="phpOperator">(</span>$rows<span class="phpKeyword"> as </span>$row<span class="phpOperator">)</span> <span class="phpOperator">{</span>
$r <span class="phpOperator">.=</span> <span class="phpString">'<span class="phpOperator">&lt;</span>li<span class="phpOperator">&gt;</span>'</span> <span class="phpOperator">.</span> $row<span class="phpOperator">[</span><span class="phpString">'nick'</span><span class="phpOperator">]</span> <span class="phpOperator">.</span> <span class="phpString">'- '</span>.$row<span class="phpOperator">[</span><span class="phpString">'homepage'</span><span class="phpOperator">]</span>.<span class="phpString">' - '</span>.$row<span class="phpOperator">[</span><span class="phpString">'interest'</span><span class="phpOperator">]</span>.<span class="phpString">'<span class="phpOperator">&lt;</span>/li<span class="phpOperator">&gt;</span>'</span><span class="phpText">;</span>
<span class="phpOperator">}</span>
<span class="phpOperator">}</span>
<span class="phpFunction">echo</span> $r <span class="phpOperator">?</span> <span class="phpString">'<span class="phpOperator">&lt;</span>ul<span class="phpOperator">&gt;</span>'</span> <span class="phpOperator">.</span> $r <span class="phpOperator">.</span> <span class="phpString">'<span class="phpOperator">&lt;</span>/ul<span class="phpOperator">&gt;</span>'</span> <span class="phpOperator">:</span> <span class="phpString">'nic nie znaleziono'</span><span class="phpText">;</span>
</pre>
<p>Otrzymany wynik:</p>
<ul>
<li>testowy_nick44- semantictechnology.eu &#8211; Sci-Fi</li>
</ul>
<p>Przyglądając się stworzonym przez ARC tabelom w bazie danych widzimy, że jest ich 6. Opisane są w nich trójki s-p-o:</p>
<p><a href="http://semantictechnology.eu/wp-content/uploads/2010/02/arc_database.jpg"><img class="aligncenter size-full wp-image-136" title="arc_database" src="http://semantictechnology.eu/wp-content/uploads/2010/02/arc_database.jpg" alt="" width="906" height="233" /></a></p>
<p>To tylko niektóre z oferowanych możliwości klas ARC. Więcej można znaleźć w dokumentacji.</p>
]]></content:encoded>
			<wfw:commentRss>http://semantictechnology.eu/2010/02/odpytywanie-semantycznych-zasobow-z-uzyciem-klas-arc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

