<?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>Wilted buttercup, grey skies, and geek</title>
	<atom:link href="http://mmt.me.uk/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://mmt.me.uk/blog</link>
	<description>Mischa’s ramblings on the interweb</description>
	<lastBuildDate>Mon, 14 Dec 2009 13:42:13 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Compiling 4store on a Fedora 12 box</title>
		<link>http://mmt.me.uk/blog/2009/12/14/compiling-4store-on-a-fedora-12-box/</link>
		<comments>http://mmt.me.uk/blog/2009/12/14/compiling-4store-on-a-fedora-12-box/#comments</comments>
		<pubDate>Mon, 14 Dec 2009 13:40:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[4store]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[ld.so.conf]]></category>
		<category><![CDATA[ldd]]></category>
		<category><![CDATA[librasqal]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://mmt.me.uk/blog/?p=138</guid>
		<description><![CDATA[I was attempting to install 4store on my fedora 12 box, and I found that I couldn&#8217;t run the tests which are shipped with 4store. I got the following output when attempting to run &#8220;make test&#8221; :

[root@blanket 4store]# make test
(cd tests &#038;&#038; make -w test)
make[1]: Entering directory `/usr/local/src/4store/tests'
(cd query &#038;&#038; pwd &#038;&#038; ./setup.sh --autorun)
/usr/local/src/4store/tests/query
4store[9702]: backend-setup.c:176 [...]]]></description>
			<content:encoded><![CDATA[<p>I was attempting to install <a href="http://4store.org/">4store</a> on my fedora 12 box, and I found that I couldn&#8217;t run the tests which are shipped with 4store. I got the following output when attempting to run &#8220;make test&#8221; :</p>
<p><code><br />
[root@blanket 4store]# make test<br />
(cd tests &#038;&#038; make -w test)<br />
make[1]: Entering directory `/usr/local/src/4store/tests'<br />
(cd query &#038;&#038; pwd &#038;&#038; ./setup.sh --autorun)<br />
/usr/local/src/4store/tests/query<br />
4store[9702]: backend-setup.c:176 erased files for KB query_test_mmt04r<br />
4store[9702]: backend-setup.c:301 created RDF metadata for KB query_test_mmt04r<br />
../../src/frontend/4s-import: error while loading shared libraries: librasqal.so.1: cannot open shared object file: No such file or directory<br />
Preparing for tests...<br />
../../src/frontend/4s-delete-model: error while loading shared libraries: librasqal.so.1: cannot open shared object file: No such file or directory<br />
[FAIL] add-and-delete<br />
[FAIL] distinct-predicate<br />
[FAIL] foaf-all-limit<br />
[FAIL] foaf-bnode-vs-variable<br />
[FAIL] foaf-construct<br />
[FAIL] foaf-disjunctive-filter<br />
[FAIL] foaf-distinct<br />
[FAIL] foaf-graph-all<br />
[FAIL] foaf-graph-pred<br />
[FAIL] foaf-knows-name<br />
[FAIL] foaf-knows-name-sha1<br />
[FAIL] foaf-knows-sha1<br />
[FAIL] foaf-knows-sha1-xml<br />
[FAIL] foaf-multi-disjunctive-filter<br />
[FAIL] foaf-nested-optional<br />
[FAIL] foaf-nothing<br />
[FAIL] foaf-optional-order<br />
[FAIL] foaf-optional-pair<br />
[FAIL] foaf-optional-regex<br />
[FAIL] foaf-repeat-var<br />
[FAIL] graphs<br />
[PASS] integrity<br />
[FAIL] null-optional<br />
[FAIL] null-optional-double<br />
[FAIL] optimiser-disjunction<br />
[FAIL] select-bnodes<br />
[FAIL] select-order<br />
[FAIL] select-unused<br />
[FAIL] size<br />
[FAIL] tiger-broadway<br />
[FAIL] tiger-explosion<br />
[FAIL] tiger-fail-optional<br />
[FAIL] tiger-harold-ave<br />
[FAIL] tiger-landmarks<br />
[FAIL] tiger-mixed-optional<br />
[FAIL] tiger-reverse<br />
[FAIL] tiger-sugar-hill<br />
[FAIL] tiger-sugar-hill-filter<br />
[FAIL] tiger-typical<br />
[FAIL] tiger-water-names<br />
Tests completed: passed 1/40 (39 fails)<br />
make[1]: Leaving directory `/usr/local/src/4store/tests'<br />
</code></p>
<p>This struck me as odd given that when I ran the &#8220;configure&#8221; script I got the following output :<br />
<code><br />
[root@blanket 4store]# ./configure<br />
[OK  ] pkg-config installed<br />
[OK  ] raptor installed<br />
[OK  ] rasqal installed<br />
[OK  ] glib2 installed<br />
[OK  ] libxml2 installed<br />
[OK  ] pcre installed<br />
[OK  ] ncurses installed<br />
[OK  ] readline installed<br />
[OK  ] z installed<br />
[OK  ] avahi installed<br />
</code></p>
<p>So these are the setup step which I had to perform in order to get 4store working and running the tests: </p>
<p><strong>1. After compiling the code, used ldd to see which libs were missing</strong><br />
<code><br />
ldd src/frontend/4s-query<br />
[root@blanket 4store]# ldd !$2<br />
ldd src/frontend/4s-query<br />
	linux-gate.so.1 =>  (0x00d9a000)<br />
	librasqal.so.1 => not found<br />
	libraptor.so.1 => /usr/lib/libraptor.so.1 (0x00678000)<br />
	libxml2.so.2 => /usr/lib/libxml2.so.2 (0x04f2f000)<br />
	libavahi-common.so.3 => /usr/lib/libavahi-common.so.3 (0x051d0000)<br />
	libavahi-client.so.3 => /usr/lib/libavahi-client.so.3 (0x051bd000)<br />
	libavahi-glib.so.1 => /usr/lib/libavahi-glib.so.1 (0x004b8000)<br />
	libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x00da9000)<br />
	libpcre.so.0 => /lib/libpcre.so.0 (0x00110000)<br />
        ....<br />
</code><br />
<strong><br />
2. Fix my ld.so configuration. The issue was that I had to add the following line, which points to my librasqal.so.1, to the following empty file<br />
/etc/ld.so.conf.d/local.conf :</strong><br />
<code><br />
/usr/local/lib<br />
</code></p>
<p>A big yay to working 4store :<br />
<code><br />
[root@blanket 4store]# make test<br />
(cd tests &#038;&#038; make -w test)<br />
make[1]: Entering directory `/usr/local/src/4store/tests'<br />
(cd query &#038;&#038; pwd &#038;&#038; ./setup.sh --autorun)<br />
/usr/local/src/4store/tests/query<br />
4store[10887]: backend-setup.c:176 erased files for KB query_test_mmt04r<br />
4store[10887]: backend-setup.c:301 created RDF metadata for KB query_test_mmt04r<br />
removing old data<br />
Reading <file:///usr/local/src/4store/tests/query/../../data/swh.xrdf><br />
   into <http://example.com/swh.xrdf><br />
Pass 1, processed 63 triples (63)<br />
Reading <file:///usr/local/src/4store/tests/query/../../data/tiger/TGR06001.nt><br />
   into <http://example.com/TGR06001.nt><br />
Pass 1, processed 764610 triples (764547)<br />
Reading <file:///usr/local/src/4store/tests/query/../../data/nasty.ttl><br />
   into <http://example.com/nasty.ttl><br />
Pass 1, processed 764658 triples (48)<br />
Pass 2, processed 764658 triples, 26769 triples/s<br />
Updating index<br />
Index update took 17.133335 seconds<br />
Imported 764658 triples, average 19375 triples/s<br />
Preparing for tests...<br />
[PASS] add-and-delete<br />
[PASS] count<br />
[PASS] distinct-predicate<br />
[PASS] foaf-all-limit<br />
[PASS] foaf-bnode-vs-variable<br />
[PASS] foaf-construct<br />
[PASS] foaf-disjunctive-filter<br />
[PASS] foaf-distinct<br />
[PASS] foaf-graph-all<br />
[PASS] foaf-graph-pred<br />
[PASS] foaf-knows-name<br />
[PASS] foaf-knows-name-sha1<br />
[PASS] foaf-knows-sha1<br />
[PASS] foaf-knows-sha1-xml<br />
[PASS] foaf-multi-disjunctive-filter<br />
[PASS] foaf-nested-optional<br />
[PASS] foaf-nothing<br />
[PASS] foaf-optional-order<br />
[PASS] foaf-optional-pair<br />
[PASS] foaf-optional-regex<br />
[PASS] foaf-repeat-var<br />
[PASS] graphs<br />
[PASS] integrity<br />
[PASS] null-optional<br />
[PASS] null-optional-double<br />
[PASS] optimiser-disjunction<br />
[PASS] select-bnodes<br />
[PASS] select-order<br />
[PASS] select-unused<br />
[PASS] size<br />
[PASS] tiger-broadway<br />
[PASS] tiger-explosion<br />
[PASS] tiger-fail-optional<br />
[PASS] tiger-harold-ave<br />
[PASS] tiger-landmarks<br />
[PASS] tiger-mixed-optional<br />
[PASS] tiger-reverse<br />
[PASS] tiger-sugar-hill<br />
[PASS] tiger-sugar-hill-filter<br />
[PASS] tiger-typical<br />
[PASS] tiger-water-names<br />
[PASS] union-nobind<br />
Tests completed: passed 42/42 (0 fails)<br />
make[1]: Leaving directory `/usr/local/src/4store/tests'<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://mmt.me.uk/blog/2009/12/14/compiling-4store-on-a-fedora-12-box/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>4store and Dan Hanley&#8217;s client libgs</title>
		<link>http://mmt.me.uk/blog/2009/12/13/4store-java/</link>
		<comments>http://mmt.me.uk/blog/2009/12/13/4store-java/#comments</comments>
		<pubDate>Sun, 13 Dec 2009 20:19:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[4store]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[SPARQL]]></category>

		<guid isPermaLink="false">http://mmt.me.uk/blog/?p=130</guid>
		<description><![CDATA[Find below step by step instructions on how to talk to a 4store KB via the SPARQL-Procotol in Java, using Dan Hanley&#8217;s 4store client libs.
First of all you need to have the following installed :
4store
A java compiler (i have Sun&#8217;s Java SDK 1.6.x installed on my laptop)
Maven (to compile Dan Hanley&#8217;s 4store client libs). 
I [...]]]></description>
			<content:encoded><![CDATA[<p>Find below step by step instructions on how to talk to a <a href="http://4store.org/">4store</a> KB via the <a href="http://www.w3.org/TR/rdf-sparql-protocol/">SPARQL-Procotol</a> in Java, using <a href="http://github.com/danhanley/4store-java-client">Dan Hanley&#8217;s 4store client libs</a>.</p>
<p>First of all you need to have the following installed :<br />
4store<br />
A java compiler (i have<a href="http://java.sun.com/javase/downloads/widget/jdk6.jsp"> Sun&#8217;s Java SDK 1.6.x</a> installed on my laptop)<br />
<a href="http://maven.apache.org/">Maven</a> (to compile Dan Hanley&#8217;s 4store client libs). </p>
<p>I have all of the code needed for this example placed on my site here : <a href="http://mmt.me.uk/examples/4store-java-query-example/">http://mmt.me.uk/examples/4store-java-query-example/</a>  feel free to grab and use it as you wish.</p>
<p>First of all, I should say that I have had to patch the 4store-client-library, as it seems to chomp all of the carriage returns at the end of the lines (&#8221;\n&#8221;).  This is fine you are using the <a href="http://www.w3.org/TR/rdf-sparql-XMLres/">SPARQL-XML-RESULT format</a>, by I am a tad lazy and much prefer working with the <a href="http://en.wikipedia.org/wiki/Delimiter-separated_values">tsv</a> format: tsv requires line breaks.</p>
<p>The git diff of my patch looks like so (and again yes it is a tad dirty) :<br />
<code><br />
diff --git a/src/main/java/uk/co/magus/fourstore/client/Store.java b/src/main/java/uk/co/magus/fourstore/clie<br />
index 6652874..097be43 100644<br />
--- a/src/main/java/uk/co/magus/fourstore/client/Store.java<br />
+++ b/src/main/java/uk/co/magus/fourstore/client/Store.java<br />
@@ -349,7 +349,7 @@ public class Store {<br />
                String response = "";<br />
                String str;<br />
                while (null != ((str = in.readLine()))) {<br />
-                       response += str;<br />
+                       response += str+"\n";<br />
                }<br />
                in.close();<br />
                return response;<br />
~<br />
~<br />
</code></p>
<p>This above <a href="http://mmt.me.uk/examples/4store-java-query-example/patch.txt">patch</a> allows me to make use of the TSV output as needed. The patch can be grabbed from here : <a href="http://mmt.me.uk/examples/4store-java-query-example/patch.txt">http://mmt.me.uk/examples/4store-java-query-example/patch.txt</a>.</p>
<p>Ok, now that I have built the <a href="http://mmt.me.uk/examples/4store-java-query-example/4store-client-1.0.jar">4store-client.jar</a> file with my patch using the instructions in the <a href="http://github.com/danhanley/4store-java-client">git repo</a>. I create an example RDF file, and some example java code which will query the 4store KB. All the files can be found on my site <a href="http://mmt.me.uk/examples/4store-java-query-example/">http://mmt.me.uk/examples/4store-java-query-example/</a>.</p>
<p>These are the steps which I have taken to get this little demo up and running :<br />
<strong>1. Create 4store KB called <em>lame</em> </strong><br />
<code><br />
4s-backend-setup --node 0 --cluster 1 --segments 2 lame<br />
</code></p>
<p><strong>2. Start <em>lame</em>&#8217;s backend (i.e. start the KB)</strong><br />
<code><br />
4s-backend lame<br />
</code></p>
<p><strong>3. Import the <a href="http://mmt.me.uk/examples/4store-java-query-example/example.rdf">example.rdf</a> file into <em>lame</em>&#8217;s backend (i.e. start the KB)</strong><br />
<code><br />
4s-import lame example.rdf<br />
</code></p>
<p><strong>4. Start HTTPD for the KB named <em>lame</em></strong><br />
<code><br />
4s-httpd -s -1 lame<br />
</code></p>
<p><strong>And then I need to compile the <a href="http://mmt.me.uk/examples/4store-java-query-example/exampleQuery.java">exampleQuery</a> code I knocked together</strong><br />
<code><br />
javac -cp 4store-client-1.0.jar exampleQuery.java<br />
</code></p>
<p><strong>Finally, I run the code like so : </strong><br />
<code><br />
java -cp 4store-client-1.0.jar:. exampleQuery<br />
</code></p>
<p><strong>Resulting in the following output: </strong><br />
<code><br />
Am about to query a sparql endpoint<br />
A user name is:"Bob"<br />
A user name is:"Alice"<br />
</code></p>
<p>I hope this helps!</p>
]]></content:encoded>
			<wfw:commentRss>http://mmt.me.uk/blog/2009/12/13/4store-java/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Private Browsing with Safari</title>
		<link>http://mmt.me.uk/blog/2009/11/15/private-browsing-with-safari/</link>
		<comments>http://mmt.me.uk/blog/2009/11/15/private-browsing-with-safari/#comments</comments>
		<pubDate>Sun, 15 Nov 2009 20:38:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[OSX]]></category>
		<category><![CDATA[Privacy]]></category>

		<guid isPermaLink="false">http://mmt.me.uk/blog/?p=122</guid>
		<description><![CDATA[I use firefox as my primary browser, both at home and at work. So I have setup my Safari browser, as my private browser &#8211; that is sans cache, history, cookies or anything of a similar nature. I noticed that the &#8220;Private Browsing&#8221; option in Safari, doesn&#8217;t do that good a job of not leaving [...]]]></description>
			<content:encoded><![CDATA[<p>I use firefox as my primary browser, both at home and at work. So I have setup my Safari browser, as my private browser &#8211; that is sans cache, history, cookies or anything of a similar nature. I noticed that the &#8220;Private Browsing&#8221; option in Safari, doesn&#8217;t do that good a job of not leaving files hanging around in one&#8217;s operating system, furthermore unless your careful, <a href="http://en.wikipedia.org/wiki/Spotlight_%28software%29">Spotlight</a> will eventually end up indexing your browser history, cache, which may be less than ideal. </p>
<p>In order to have a zero cache safari instance on my laptop I have taken the following steps :</p>
<ul>
<li>1: Removed spotlight&#8217;s prying eyes, by excluding the following directories :
<ul>
<li>/Users/&lt;USERDIR&gt;/Library/Caches</li>
<li>/Users/&lt;USERDIR&gt;/Library/Safari</li>
<li>/Library/Caches</li>
</ul>
</li>
<li>2: Setup two cronjobs to constantly delete Safari cache-dir</li>
<p><code>*/10 * * * * find /Users/&lt;USERDIR&gt;/Library/Safari -type f -exec rm {} \; 2&gt;&#038;1 &gt; /dev/null<br />
*/10 * * * * find /Users/&lt;USERDIR&gt;/Library/Caches/Metadata/Safari/ -type f -exec rm {} \; 2&gt;&#038;1 &gt; /dev/null</code>
</ul>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://mmt.me.uk/blog/2009/11/15/private-browsing-with-safari/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FOAF Inverse Functional Properties</title>
		<link>http://mmt.me.uk/blog/2009/09/07/foaf-ifps/</link>
		<comments>http://mmt.me.uk/blog/2009/09/07/foaf-ifps/#comments</comments>
		<pubDate>Mon, 07 Sep 2009 18:37:27 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://mmt.me.uk/blog/?p=115</guid>
		<description><![CDATA[These are the  Inverse Functional Properties of the FOAF ontology, as per 07/09/2009 :

4store&#62;select * where { graph &#60;http://xmlns.com/foaf/0.1/&#62; {?a &#60;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&#62; &#60;http://www.w3.org/2002/07/owl#InverseFunctionalProperty&#62;}}#EOQ


?a
&#60;http://xmlns.com/foaf/0.1/homepage&#62;
&#60;http://xmlns.com/foaf/0.1/mbox_sha1sum&#62;
&#60;http://xmlns.com/foaf/0.1/jabberID&#62;
&#60;http://xmlns.com/foaf/0.1/isPrimaryTopicOf&#62;
&#60;http://xmlns.com/foaf/0.1/icqChatID&#62;
&#60;http://xmlns.com/foaf/0.1/weblog&#62;
&#60;http://xmlns.com/foaf/0.1/mbox&#62;
&#60;http://xmlns.com/foaf/0.1/aimChatID&#62;
&#60;http://xmlns.com/foaf/0.1/msnChatID&#62;
&#60;http://xmlns.com/foaf/0.1/yahooChatID&#62;

I was wondering what happen to foaf:openId ? Does anyone know ?
]]></description>
			<content:encoded><![CDATA[<p>These are the <a href="http://esw.w3.org/topic/InverseFunctionalProperty"> Inverse Functional Properties</a> of the <a href="http://xmlns.com/foaf/0.1/">FOAF ontology</a>, as per 07/09/2009 :<br />
<code><br />
4store&gt;select * where { graph &lt;http://xmlns.com/foaf/0.1/&gt; {?a &lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&gt; &lt;http://www.w3.org/2002/07/owl#InverseFunctionalProperty&gt;}}#EOQ<br />
</code><br />
<code><br />
?a<br />
&lt;http://xmlns.com/foaf/0.1/homepage&gt;<br />
&lt;http://xmlns.com/foaf/0.1/mbox_sha1sum&gt;<br />
&lt;http://xmlns.com/foaf/0.1/jabberID&gt;<br />
&lt;http://xmlns.com/foaf/0.1/isPrimaryTopicOf&gt;<br />
&lt;http://xmlns.com/foaf/0.1/icqChatID&gt;<br />
&lt;http://xmlns.com/foaf/0.1/weblog&gt;<br />
&lt;http://xmlns.com/foaf/0.1/mbox&gt;<br />
&lt;http://xmlns.com/foaf/0.1/aimChatID&gt;<br />
&lt;http://xmlns.com/foaf/0.1/msnChatID&gt;<br />
&lt;http://xmlns.com/foaf/0.1/yahooChatID&gt;<br />
</code><br />
I was wondering what happen to <a href="http://xmlns.com/foaf/0.1/openID">foaf:openId</a> ? Does anyone know ?</p>
]]></content:encoded>
			<wfw:commentRss>http://mmt.me.uk/blog/2009/09/07/foaf-ifps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Personas @ MIT</title>
		<link>http://mmt.me.uk/blog/2009/08/25/personas-mit/</link>
		<comments>http://mmt.me.uk/blog/2009/08/25/personas-mit/#comments</comments>
		<pubDate>Tue, 25 Aug 2009 01:13:29 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[DigitalPersona]]></category>
		<category><![CDATA[FOAF]]></category>

		<guid isPermaLink="false">http://mmt.me.uk/blog/?p=101</guid>
		<description><![CDATA[So, MIT has recently put out a service which via animating some pretty colours presents a user with a pictorial description of their &#8220;online persona&#8221;. The service is called Personas, and my persona can be found below. I like the thought of being aware of your digital persona, due to my interest in the topic [...]]]></description>
			<content:encoded><![CDATA[<p>So, <a href="http://web.mit.edu/">MIT</a> has recently put out a service which via animating some pretty colours presents a user with a pictorial description of their &#8220;online persona&#8221;. The service is called <a href="http://personas.media.mit.edu/">Personas</a>, and <a href="http://mmt.me.uk/blog/wp-content/uploads/2009/08/MIT_Personas_240809.png">my persona</a> can be found below. I like the thought of being aware of your digital persona, due to my interest in the topic during my <a href="http://www.ecs.soton.ac.uk/people/mmt04r/publications">PhD studies</a>, my involvement in the <a href="http://www.memoriesforlife.org/">Memories for Life network</a>, and my current role work at <a href="http://www.garlik.com/">Garlik</a>, I give lots of thought to what it means to capture a snap shot of a someones<em> digital persona </em>or to even attempt to capture it in its entirety. I guess this could have implications to the way we are force fed online advertising, through to the thought of one day having a digital nomenclature, which feeds information about everyone you encounter, letting you judge for yourself&#8230;</p>
<p>Anyways, so I typed in my first and last name into the Personas site, and low and behold, this is result I was shown :</p>
<p style="text-align: center;">
<div id="attachment_102" class="wp-caption aligncenter" style="width: 424px"><a href="http://mmt.me.uk/blog/wp-content/uploads/2009/08/MIT_Personas_240809.png"><img class="size-full wp-image-102   " title="MIT_Personas_240809" src="http://mmt.me.uk/blog/wp-content/uploads/2009/08/MIT_Personas_240809.png" alt="Mischa Tuffield's MIT Personas 24/08/09" width="414" height="102" /></a><p class="wp-caption-text">Mischa Tuffield&#39;s MIT Personas 240809</p></div>
<p style="text-align: left;">Apparently, the three most prominent of my online characteristics are :<em> &#8220;online, sports, illegal&#8221;</em>. Hehe, I guess the online bit makes some sense, and after scratching my head, and re-running the service I think I have sussed it :</p>
<ul>
<li><strong>Online: </strong>yeah well &#8230; </li>
<li><strong>Sports:</strong> I must be due to this article<a href="http://www.telegraph.co.uk/motoring/2754679/Total-recall.html"> I was mentioned in in the Telegraph</a>. It was a feature in a technology section, which a part of motoring technology supplement. So, I guess that makes some sense</li>
<li><strong>Illegal:</strong> Well this one puzzled me for a while, but I think the people at MIT think I am a identity thief, hehe&#8230;</li>
</ul>
<p> Which would definitely not be a good thing given that I am currently working trying to<a href="http://www.garlik.com/products.php"> help people defend themselves from ID Fraud</a>. So why, does Personas come to this conclusion? I think it is down to a <a href="http://tomheath.com/blog/2008/05/garlik-launches-foaf-services/">blog post </a> which a friend of mine <a href="http://tomheath.com/id/me">Tom Heath</a> wrote a while back, where you used the following words &#8220;was trying to steal my identity (presumably because he had a fragment of RDF about me in his FOAF file)&#8221;. This is a perfect example of how natural language processing can fail, and how much more sophisticated metrics must be used if we are to identify accusations, opinions, or any more complex statements from free text. Tom&#8217;s blog post was actually going on about how <a href="http://code.google.com/apis/socialgraph/">Google&#8217;s Social Graph API</a> failed to understand his FOAF file, merging myself and Tom into one person, another technological fail, but I guess they follow on nicely from each other&#8230;</p>
<p>I should note that Google&#8217;s SocialGraph API is doing a better job than when it started, and as far as I am aware it now understands <a href="http://www.w3.org/RDF/">RDF</a> natively, via <a href="http://librdf.org/raptor/"> libraptor</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://mmt.me.uk/blog/2009/08/25/personas-mit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Grabbing LOD clouds</title>
		<link>http://mmt.me.uk/blog/2009/08/18/grabbing-lod-clouds/</link>
		<comments>http://mmt.me.uk/blog/2009/08/18/grabbing-lod-clouds/#comments</comments>
		<pubDate>Tue, 18 Aug 2009 09:57:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[SemanticWeb]]></category>

		<guid isPermaLink="false">http://mmt.me.uk/blog/?p=92</guid>
		<description><![CDATA[I have been looking for a set of links for all of the (Linked Open Data) LOD clouds so that I could have a pictorial description of how the LOD cloud has evolved since it was first assembled. Sadly there are no links to the old LOD clouds on from the LOD cloud&#8217;s home on [...]]]></description>
			<content:encoded><![CDATA[<p>I have been looking for a set of links for all of the (Linked Open Data) LOD clouds so that I could have a pictorial description of how the LOD cloud has evolved since it was first assembled. Sadly there are no links to the old LOD clouds on from the <a href="http://richard.cyganiak.de/2007/10/lod/">LOD cloud&#8217;s home on the web</a>.</p>
<p>So I hacked together a dirty perl script to see if I could guess the URLs for the old clouds, the code looks like so :<br />
<code><br />
#!/usr/bin/perl</code></p>
<p>$rootUrl = &#8216;http://richard.cyganiak.de/2007/10/lod/&#8217;;</p>
<p>#now to brute force the URL mangling to grab all of the pictures</p>
<p>for ($i = 2007 ; $i &lt; 2010; $i++) {<br />
for ($j = 1 ; $j &lt; 13; $j++) {<br />
for ($k = 1; $k &lt; 32; $k++) {<br />
$stringToFetch = $rootUrl.&#8221;lod-datasets_$i-&#8221;.make_big($j).&#8221;-&#8221;.make_big($k).&#8221;.png&#8221;;</p>
<p>`wget $stringToFetch`;</p>
<p>}<br />
}<br />
}</p>
<p>#padding out string &#8230;<br />
sub make_big($) {<br />
my $string = shift;<br />
if (length($string) == 1) {<br />
$string = &#8220;0&#8243;.$string;<br />
}<br />
return $string;<br />
}</p>
<p>After running the script I have found the following old instances of the LOD cloud :</p>
<ul>
<li><a href="http://richard.cyganiak.de/2007/10/lod/lod-datasets_2007-10-08.png">http://richard.cyganiak.de/2007/10/lod/lod-datasets_2007-10-08.png</a></li>
<li><a href="http://richard.cyganiak.de/2007/10/lod/lod-datasets_2007-11-07.png">http://richard.cyganiak.de/2007/10/lod/lod-datasets_2007-11-07.png</a></li>
<li><a href="http://richard.cyganiak.de/2007/10/lod/lod-datasets_2007-11-10.png">http://richard.cyganiak.de/2007/10/lod/lod-datasets_2007-11-10.png</a></li>
<li><a href="http://richard.cyganiak.de/2007/10/lod/lod-datasets_2008-02-28.png">http://richard.cyganiak.de/2007/10/lod/lod-datasets_2008-02-28.png</a></li>
<li><a href="http://richard.cyganiak.de/2007/10/lod/lod-datasets_2008-03-31.png">http://richard.cyganiak.de/2007/10/lod/lod-datasets_2008-03-31.png</a></li>
<li><a href="http://richard.cyganiak.de/2007/10/lod/lod-datasets_2009-07-14.png">http://richard.cyganiak.de/2007/10/lod/lod-datasets_2009-07-14.png</a></li>
</ul>
<p>Finally, I still don&#8217;t think I have the first LOD cloud, would love to know its URL if anyone out there knows it!</p>
]]></content:encoded>
			<wfw:commentRss>http://mmt.me.uk/blog/2009/08/18/grabbing-lod-clouds/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>meh to owl:equivalentClass</title>
		<link>http://mmt.me.uk/blog/2009/08/10/meh-to-owlequivalentclass/</link>
		<comments>http://mmt.me.uk/blog/2009/08/10/meh-to-owlequivalentclass/#comments</comments>
		<pubDate>Mon, 10 Aug 2009 17:26:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[SemanticWeb]]></category>

		<guid isPermaLink="false">http://mmt.me.uk/blog/?p=94</guid>
		<description><![CDATA[Meh, 
So we now have more links from dbpedia to other RDF resources on the web. Dbpedia now links from dbpedia classes to freebase ones, this example SPARQL query gives some examples of the described linkage. None of these make any sense to me. Why have people decided to use owl:equivalentClass and not owl:sameAs (ducks [...]]]></description>
			<content:encoded><![CDATA[<p>Meh, </p>
<p>So we now have more links from dbpedia to other RDF resources on the web. Dbpedia now links from dbpedia classes to freebase ones, <a href="http://dbpedia.org/sparql?default-graph-uri=&#038;query=select+distinct+*+from+%3Chttp%3A%2F%2Fdbpedia.org%2Ffreebase_type_links%23%3E+where+{%3Fs+%3Fp+%3Fo}+limit+10&#038;format=text%2Fhtml&#038;debug=on&#038;timeout=">this example SPARQL query gives some examples of the described linkage</a>. None of these make any sense to me. Why have people decided to use owl:equivalentClass and not owl:sameAs (ducks behind computer screen). Neither of the two seem correct to me, am guessing there is a <a href="http://www.w3.org/TR/2008/WD-skos-reference-20080609/#broader">skos:broader</a> relationship (or something similar) which would be more appropriate, but at least we have come to accept that owl:sameAs tends to get abused, do we really need to loose faith in the semantics of the other OWL classes. Does anyone know why dbpedia decided to go this way?</p>
<p>The <a href="http://www.w3.org/TR/owl-ref/">OWL spec </a>defines owl:equivalentClass to be : </p>
<p>&#8220;A class axiom may contain (multiple) owl:equivalentClass statements. owl:equivalentClass is a built-in property that links a class description to another class description. The meaning of such a class axiom is that the two class descriptions involved have the same class extension (i.e., both class extensions contain exactly the same set of individuals).&#8221;</p>
<p>I really don&#8217;t think these links are suitable for the knowledge at hand. Perhaps even rdfs:subClassOf would be more fitting. </p>
]]></content:encoded>
			<wfw:commentRss>http://mmt.me.uk/blog/2009/08/10/meh-to-owlequivalentclass/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Privacy, Data Mashups, and Practical Obscurity</title>
		<link>http://mmt.me.uk/blog/2009/08/05/privacy-web-practical-obscurity/</link>
		<comments>http://mmt.me.uk/blog/2009/08/05/privacy-web-practical-obscurity/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 15:09:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Privacy]]></category>

		<guid isPermaLink="false">http://mmt.me.uk/blog/?p=87</guid>
		<description><![CDATA[I have long been thinking about how the interweb affects the notion of practical obscurity and how one can no longer expect to be forgiven for a crime after they have served their sentence. 
An example I have used for a while now is the Georgia Sex Offenders mashup 
http://www.georgia-sex-offenders.com/maps/offenders.php
IMHO sites like the above one [...]]]></description>
			<content:encoded><![CDATA[<p>I have long been thinking about how the interweb affects the notion of practical obscurity and how one can no longer expect to be forgiven for a crime after they have served their sentence. </p>
<p>An example I have used for a while now is the Georgia Sex Offenders mashup </p>
<p><a href="http://www.georgia-sex-offenders.com/maps/offenders.php">http://www.georgia-sex-offenders.com/maps/offenders.php</a></p>
<p>IMHO sites like the above one will just end up creating ghettos of sex offenders as real-estate agents start to adopt such online resources to help sell properties to future homeowners. Eventually we will see neighbourhoods of sex offenders as no family would ever choose to live next to a rehabilitated offender. The key word in the previous sentence being &#8220;rehabilitated&#8221;, as they have been released by the judicial system into the community as reformed human beings.</p>
<p>Now one can install an iPhone App, which tells the phone own about sex offenders in their local area, GPS/web magic, note that this only works in the US :</p>
<p><a href="http://www.telegraph.co.uk/technology/apple/5918923/iPhone-app-tracks-sex-offenders.html">http://www.telegraph.co.uk/technology/apple/5918923/iPhone-app-tracks-sex-offenders.html</a></p>
<p>I believe that practical obscurity is a dying concept.<strong> At this point in the post I should stress that I DON&#8217;T classify sex offences are petty crimes</strong>, but I believe that the advent of such data on the web will set a president for other forms of crimes to be being posted to the public domain. I can easily imagine a future where all crimes committed in some US state X are posted to the web.</p>
<p>For example, high-school student Bob gets arrested for shop-lifting and gets a minor punishment that could be community service or something of a similar vain. Alice a classmate of Bob&#8217;s finds this so funny that she posts it to whatever cool social network she is currently a member of, pushing it into the public domain. Now after Bob has served his sentence in pre-interweb days this information would have been practically obscure, it would have been logged in a filing cabinet in some local magistrate court, and unless you had the impetus to seek out this information you would probably never have found out about it. Alice would have been able to communicate the &#8220;funny story&#8221; to her social network, but those conversation&#8217;s would not have been in the public domain. And now they would be.</p>
<p>Well that is all from me, would love to know if people in the US have installed this APP, and wonder how many linch mobs are going to run around US cities taking following their trusty iPhone and taking the law into their own hands. Here is a link to an article which<a href="http://www.wsws.org/articles/2000/aug2000/brit-a12.shtml"> describes some of the vigilantism which occured in the UK after the tabloid new paper &#8220;The News of the World&#8221; published a list of sex offenders in the year 2000</a>. Do excuse the fact that I am pointing to a document on the &#8220;world socialist web site&#8221;, but it seems to report the story well <img src='http://mmt.me.uk/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  </p>
<p>Furthermore,<a href="http://eprints.ecs.soton.ac.uk/17123/"> Kieron O&#8217;Hara, Nigel Shadbolt and I wrote a paper</a> touching on this a while back, it can be downloaded from ECS eprints. </p>
]]></content:encoded>
			<wfw:commentRss>http://mmt.me.uk/blog/2009/08/05/privacy-web-practical-obscurity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>EEEbuntu on a ASUS EEEpc 701</title>
		<link>http://mmt.me.uk/blog/2009/07/09/eeebuntu-on-a-asus-eeepc-701/</link>
		<comments>http://mmt.me.uk/blog/2009/07/09/eeebuntu-on-a-asus-eeepc-701/#comments</comments>
		<pubDate>Thu, 09 Jul 2009 11:18:15 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://mmt.me.uk/blog/?p=82</guid>
		<description><![CDATA[I have recently been given a ASUS EEEpc 701, thanks swh, and have till now found it way too slow and jerky. The 701 I have has got 1G of RAM and 4G of disk space built in, which I added a 16G flash disk too.
Thanks to Seb (old housemate), I have now downgraded the [...]]]></description>
			<content:encoded><![CDATA[<p>I have recently been given a <a href="http://en.wikipedia.org/wiki/ASUS_Eee_PC">ASUS EEEpc 701</a>, thanks <a href="http://plugin.org.uk/swh.xrdf#me">swh</a>, and have till now found it way too slow and jerky. The 701 I have has got 1G of RAM and 4G of disk space built in, which I added a 16G flash disk too.</p>
<p>Thanks to <a href="http://oneshare.ecs.soton.ac.uk/people/">Seb</a> (old housemate), I have now downgraded the graphics driver, and as a result it is now totally usable, yay to small computers!! I followed this <a href="http://digitalpatch.blogspot.com/2009/06/story.html">howto guide</a> when attempting to fix the EeeeeePc.</p>
<p>These are the steps I took : </p>
<p>1. Edited and added the below lines to : /etc/apt/sources.list:<br />
<code><br />
 deb http://ppa.launchpad.net/siretart/ppa/ubuntu jaunty main<br />
 deb-src http://ppa.launchpad.net/siretart/ppa/ubuntu jaunty main<br />
</code></p>
<p>2. Imported the needed key:<br />
<code><br />
 sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xce90d8983e731f79<br />
</code></p>
<p>3. Installed the older driver:<br />
<code><br />
 $ sudo apt-get update<br />
 $ sudo apt-get install xserver-xorg-video-intel-2.4<br />
</code></p>
<p>4. Restarted X.<br />
<code><br />
sudo /etc/init.d/gdm restart<br />
</code></p>
<p>And then, like magic a usable working <a href="http://eeebuntu.org/">EEEbuntu</a> on the 701. Notes that I tend to install <a href="http://fedoraproject.org/">Fedora OSs</a> on my machines, this is the first time I have decided to stick with an Ubuntu flavoured OS.</p>
]]></content:encoded>
			<wfw:commentRss>http://mmt.me.uk/blog/2009/07/09/eeebuntu-on-a-asus-eeepc-701/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Determining the Level of Trust of a Digitally Signed Document</title>
		<link>http://mmt.me.uk/blog/2009/07/08/determining-the-level-of-trust-of-a-digitally-signed-document/</link>
		<comments>http://mmt.me.uk/blog/2009/07/08/determining-the-level-of-trust-of-a-digitally-signed-document/#comments</comments>
		<pubDate>Wed, 08 Jul 2009 16:38:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[SemanticWeb]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://mmt.me.uk/blog/?p=77</guid>
		<description><![CDATA[In order to determine how trustworthy a digital signature of a file is, you need to grab the file, the digital signature, and you will need to import the user&#8217;s public key. This wikipedia fragment describes what is meant by a &#8220;trustworthy signature&#8221; in terms of the Web of Trust.
This is the command I run [...]]]></description>
			<content:encoded><![CDATA[<p>In order to determine how trustworthy a digital signature of a file is, you need to grab the file, the digital signature, and you will need to import the user&#8217;s public key. <a href="http://en.wikipedia.org/wiki/Pretty_Good_Privacy#Web_of_trust">This wikipedia fragment </a>describes what is meant by a &#8220;trustworthy signature&#8221; in terms of the Web of Trust.</p>
<p>This is the command I run to determine the level of trust of my signed foaf file.<br />
<code><br />
gpg --verify --no-tty --status-fd 2 --command-fd 0 foaf.rdf.asc foaf.rdf<br />
</code></p>
<p>Which results in the folowing output :<br />
<code><br />
gpg: Signature made Wed  3 Jun 23:19:52 2009 BST using RSA key ID 51F2F7EF<br />
[GNUPG:] SIG_ID foL1PiWCT+546VnE17UG2QvWJeE 2009-06-03 1244067592<br />
[GNUPG:] GOODSIG 9ED0B04E51F2F7EF Mischa Tuffield (Mischa@Garlik) &lt;mischa.tuffield@garlik.com&gt;<br />
gpg: Good signature from "Mischa Tuffield (Mischa@Garlik) &lt;mischa.tuffield@garlik.com&gt;"<br />
gpg:                 aka "Mischa Tuffield (http://id.ecs.soton.ac.uk/person/6914) &lt;mmt04r@ecs.soton.ac.uk&gt;"<br />
[GNUPG:] VALIDSIG 18A2AF280CA59E77AE512BB39ED0B04E51F2F7EF 2009-06-03 1244067592 0 4 0 1 2 00 18A2AF280CA59E77AE512BB39ED0B04E51F2F7EF<br />
[GNUPG:] TRUST_ULTIMATE<br />
</code></p>
<p>This is an automatic way of evaluating how trust worthy statement at the end of a URI are.</p>
]]></content:encoded>
			<wfw:commentRss>http://mmt.me.uk/blog/2009/07/08/determining-the-level-of-trust-of-a-digitally-signed-document/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
