<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6531468487316084127</id><updated>2011-04-22T05:51:28.984+12:00</updated><category term='cvcore'/><category term='video'/><category term='glossonomy'/><category term='semweb'/><category term='python'/><category term='patterns'/><category term='identity'/><title type='text'>artisan: musings / mutterings on semweb themes</title><subtitle type='html'>a record of learnings and experiments with semantic web and related technologies - REST RDF OWL microformats.  

Seeking ways  to improve information reuse and quality for e-government.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.artisan.co.nz/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://blog.artisan.co.nz/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Chris Chamberlain</name><uri>http://www.blogger.com/profile/00294249843984687355</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>15</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6531468487316084127.post-4915621907706488093</id><published>2009-04-16T20:36:00.009+12:00</published><updated>2009-04-16T23:41:03.828+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='patterns'/><category scheme='http://www.blogger.com/atom/ns#' term='glossonomy'/><title type='text'>Some Domain-Driven Design in action</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://gloss.io"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 70px; height: 70px;" src="http://gloss.io/img/glossio_logo_2tb_70.png" alt="" border="0"&gt;&lt;/a&gt; I've been working hard on the &lt;a href="http://gloss.io"&gt;preview release of gloss.io&lt;/a&gt; which is now up for public scrutiny. Aloog the way I've been learning more about the problem domain and many of the req's are solidifying nicely. Meanwhile Eric Evans book on &lt;a href="http://books.google.co.nz/books?id=7dlaMs0SECsC&amp;amp;printsec=frontcover&amp;amp;dq=label:%22ea%22"&gt;Domain Driven Design&lt;/a&gt; which:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;has many resonances with my keydrivers for gloss.io  - i.e. developing contextual language as a core part of the solution lifecycle, and&lt;/li&gt;&lt;li&gt;captures many useful design principles in a way that I'm going to explore in the next pyglos release (blue-bottle)&lt;/li&gt;&lt;/ol&gt;I enclose a couple of examples, the first showing an Entity Factory Pattern, using an Interface that specifies the contract which each Entity Factory must fulfil and the key classes that are produced by those factories.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_fFnTa6E3n38/SebxG0t1x0I/AAAAAAAAABA/elXV7Dhzi2s/s1600-h/pygloss+Domain+Entity+Factory.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 241px;" src="http://1.bp.blogspot.com/_fFnTa6E3n38/SebxG0t1x0I/AAAAAAAAABA/elXV7Dhzi2s/s400/pygloss+Domain+Entity+Factory.png" alt="" id="BLOGGER_PHOTO_ID_5325208708944611138" border="0"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;While the following UML Class diagram illustrates the relationship between gloss.io domains for content subscription - such that a dependent domain ( one that reuses content from another domain ) can be notified of changes to the source content.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_fFnTa6E3n38/SebzAGwcrkI/AAAAAAAAABI/Gw9EOGvhE7I/s1600-h/pygloss+0.1.0+Domain+Subscriber+diagram.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 289px;" src="http://1.bp.blogspot.com/_fFnTa6E3n38/SebzAGwcrkI/AAAAAAAAABI/Gw9EOGvhE7I/s400/pygloss+0.1.0+Domain+Subscriber+diagram.png" alt="" id="BLOGGER_PHOTO_ID_5325210792551558722" border="0"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Both these models form part of the design make-over that I'm busy with right now.&lt;br /&gt;&lt;br /&gt;One more thing, I've just found the Google MyLibrary service and have started to capture my &lt;a href="http://books.google.co.nz/books?uid=50923296572238067"&gt;professional library&lt;/a&gt; - this is a lot richer and easier to manage than my old wiki version of the same. Great work Google!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531468487316084127-4915621907706488093?l=blog.artisan.co.nz' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artisan.co.nz/feeds/4915621907706488093/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artisan.co.nz/2009/04/some-domain-driven-design-in-action.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/4915621907706488093'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/4915621907706488093'/><link rel='alternate' type='text/html' href='http://blog.artisan.co.nz/2009/04/some-domain-driven-design-in-action.html' title='Some Domain-Driven Design in action'/><author><name>Chris Chamberlain</name><uri>http://www.blogger.com/profile/00294249843984687355</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_fFnTa6E3n38/SebxG0t1x0I/AAAAAAAAABA/elXV7Dhzi2s/s72-c/pygloss+Domain+Entity+Factory.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6531468487316084127.post-8137540211409738815</id><published>2009-04-16T19:39:00.011+12:00</published><updated>2009-04-16T23:41:47.748+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='semweb'/><category scheme='http://www.blogger.com/atom/ns#' term='glossonomy'/><title type='text'>Glossio preview release</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://gloss.io"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 70px; height: 70px;" src="http://gloss.io/img/glossio_logo_2tb_70.png" alt="" border="0"&gt;&lt;/a&gt;The &lt;a href="http://gloss.io/"&gt;gloss.io&lt;/a&gt; web glossonomy service is now open for public preview. The application reveals some of the basic  principles of the pyglos project - an environment to support the growth of open, community driven concept maps that can be harnessed for domain-specific needs including Glossaries, Thesaurii,  Taxonomies and Topic or Concept Maps - see this &lt;a href="http://blog.artisan.co.nz/2009/02/pygloss-primer.html"&gt;earlier blog for more&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;This first major demonstrates core features for the searching, browsing and visualisation of Concepts identified by Terms. Three taxonomies are loaded : &lt;a href="http://gloss.io/domain/sonz"&gt;SONZ&lt;/a&gt;, &lt;a href="http://gloss.io/domain/fonz"&gt;FONZ&lt;/a&gt; and &lt;a href="http://gloss.io/domain/etnography"&gt;etnography&lt;/a&gt;. In the next release will be member-managed content with many cross-domain, reuse and extension features.&lt;br /&gt;&lt;br /&gt;Related resources for this work can be found here...&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://groups.google.com/group/glossio"&gt;Glossio general discussion &amp;amp; announcements&lt;/a&gt; on Google Groups - I welcome any feedback, ideas or contributions to help me continue with this work.&lt;/li&gt;&lt;li&gt;The Glossio &lt;a href="http://glossio.disqus.com"&gt;content-linked discussion&lt;/a&gt; threads on Disqus are an experimentatl integration of this service within glossio. Please let me know what you think about it!&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Cheers, Chris&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531468487316084127-8137540211409738815?l=blog.artisan.co.nz' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://gloss.io' title='Glossio preview release'/><link rel='replies' type='application/atom+xml' href='http://blog.artisan.co.nz/feeds/8137540211409738815/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artisan.co.nz/2009/04/glossio-preview-release.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/8137540211409738815'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/8137540211409738815'/><link rel='alternate' type='text/html' href='http://blog.artisan.co.nz/2009/04/glossio-preview-release.html' title='Glossio preview release'/><author><name>Chris Chamberlain</name><uri>http://www.blogger.com/profile/00294249843984687355</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6531468487316084127.post-2448413027068928354</id><published>2009-02-23T16:08:00.002+13:00</published><updated>2009-02-23T16:14:45.773+13:00</updated><title type='text'>Transitioning web application frameworks towards the Semantic Web (master thesis progress report)</title><content type='html'>I found the this thesis presentations perpective and the project/apps it covers to be quite informative and a useful checklist of some semweb apps to investigate futher. No mention of the OORT libraries I used in CVCore but there is of the Python RDFLib. &lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Note to self:&lt;/span&gt; I should revisit this (CVCore) work as it seems the approach I took could be more innovative than I've realised. Even though this presentation is 2yrs old :)&lt;br /&gt;&lt;br /&gt;&lt;div style="width:425px;text-align:left" id="__ss_71691"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/metaman/transitioning-web-application-frameworks-towards-the-semantic-web-master-thesis-progress-report?type=presentation" title="Transitioning web application frameworks towards the Semantic Web (master thesis progress report)"&gt;Transitioning web application frameworks towards the Semantic Web (master thesis progress report)&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=transitioning-web-application-frameworks-towards-the-semantic-web-master-thesis-progress-report4039&amp;stripped_title=transitioning-web-application-frameworks-towards-the-semantic-web-master-thesis-progress-report" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slideshare.net/swf/ssplayer2.swf?doc=transitioning-web-application-frameworks-towards-the-semantic-web-master-thesis-progress-report4039&amp;stripped_title=transitioning-web-application-frameworks-towards-the-semantic-web-master-thesis-progress-report" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/metaman"&gt;metaman&lt;/a&gt;. (tags: &lt;a style="text-decoration:underline;" href="http://slideshare.net/tag/patterns"&gt;patterns&lt;/a&gt; &lt;a style="text-decoration:underline;" href="http://slideshare.net/tag/types"&gt;types&lt;/a&gt;)&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531468487316084127-2448413027068928354?l=blog.artisan.co.nz' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artisan.co.nz/feeds/2448413027068928354/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artisan.co.nz/2009/02/transitioning-web-application.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/2448413027068928354'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/2448413027068928354'/><link rel='alternate' type='text/html' href='http://blog.artisan.co.nz/2009/02/transitioning-web-application.html' title='Transitioning web application frameworks towards the Semantic Web (master thesis progress report)'/><author><name>Chris Chamberlain</name><uri>http://www.blogger.com/profile/00294249843984687355</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6531468487316084127.post-9067505099384554982</id><published>2009-02-23T13:40:00.003+13:00</published><updated>2009-02-23T13:54:07.107+13:00</updated><title type='text'>re New Zealand Internet Blackout  - Creative Freedom</title><content type='html'>It's impossible to see how such a law can be enacted without misuse of abuse. Let the legal system work as designed - i.e evidence based and with fair &amp;amp; qualified judgement.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;div class="content"&gt;&lt;p&gt;Join the &lt;a href="http://creativefreedom.org.nz/blackout.html"&gt;New Zealand Internet Blackout&lt;/a&gt; to protest against the Guilt Upon Accusation law 'Section 92A' that calls for internet disconnection based on accusations of copyright infringement without a trial and without any evidence held up to court scrutiny. This is due to come into effect on February 28th unless immediate action is taken by the Government.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;a href="http://creativefreedom.org.nz/blackout.html"&gt;&lt;img src="http://creativefreedom.org.nz/library/black-out/banner-blackout.gif" alt="New Zealand's new Copyright Law presumes 'Guilt Upon Accusation' and will Cut Off Internet Connections without a trial. Join the black out protest against it!" style="border: 1px solid black" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;If you think this sounds daft or unfair then click on the link below and sign the petition.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://creativefreedom.org.nz"&gt;&lt;img src="http://creativefreedom.org.nz/library/offsite/s92a.gif" alt="New Zealand's new Copyright Law presumes 'Guilt Upon Accusation' and will Cut Off Internet Connections without a trial. CreativeFreedom.org.nz is against this unjust law - help us" style="border: 1px solid black" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531468487316084127-9067505099384554982?l=blog.artisan.co.nz' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artisan.co.nz/feeds/9067505099384554982/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artisan.co.nz/2009/02/re-new-zealand-internet-blackout.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/9067505099384554982'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/9067505099384554982'/><link rel='alternate' type='text/html' href='http://blog.artisan.co.nz/2009/02/re-new-zealand-internet-blackout.html' title='re New Zealand Internet Blackout  - Creative Freedom'/><author><name>Chris Chamberlain</name><uri>http://www.blogger.com/profile/00294249843984687355</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6531468487316084127.post-7713467888870883103</id><published>2009-02-13T15:29:00.007+13:00</published><updated>2009-02-13T17:53:37.233+13:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='glossonomy'/><title type='text'>pygloss primer</title><content type='html'>I've been working pretty solidly on my pygloss project: a &lt;span style="font-weight: bold;"&gt;Py&lt;/span&gt;thon &lt;span style="font-weight: bold;"&gt;Gloss&lt;/span&gt;onomy web application. So what's Glossonomy you ask? Well, it's something between &lt;span style="font-weight: bold;"&gt;Glossary&lt;/span&gt; - a list of terms and definitions, and &lt;span style="font-weight: bold;"&gt;Taxonomy -&lt;/span&gt; a controlled vocabulary with relationships between terms (like Narrower/Wider, Container/Part, Related etc. ). Also in this space are &lt;span style="font-weight: bold;"&gt;Ontologies&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;Topic Maps&lt;/span&gt; and &lt;span style="font-weight: bold;"&gt;Concept Maps&lt;/span&gt;.   And since I don't want to be constrained by preconceptions I've coined a new word  - &lt;span style="font-weight: bold;"&gt;Glossonomy&lt;/span&gt;!&lt;br /&gt;&lt;br /&gt;Here are a couple of scenarios that might be familiar...&lt;br /&gt;&lt;blockquote&gt;Two groups of people (communities, departments, agencies) are working in similar spaces and have similar interests. Now they need to collaborate, but they find they're using different terms for the same thing, or the same term meaning different things. It can take months to iron out assumptions and errors caused by simple misconceptions. &lt;/blockquote&gt;&lt;blockquote&gt;A business has invested in defining a formal vocabulary to support its' core processes, and this is published as MS Word document. Because it covers the whole business it's weighty and mind-numbingly boring. People don't really use it as intended. &lt;/blockquote&gt;The tools I mention above all try to address these issues, and so does pygloss, but with some Web 2.0 influences at work. This give use the following characteristics/goals:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;100% web application&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Bundles related &lt;span style="font-weight: bold;"&gt;Terms&lt;/span&gt; and &lt;span style="font-weight: bold;"&gt;Concepts&lt;/span&gt; into &lt;span style="font-weight: bold;"&gt;Domains&lt;/span&gt; which have self-managing user &lt;span style="font-weight: bold;"&gt;Communities&lt;/span&gt;.&lt;/li&gt;&lt;li&gt;Encourages sharing Terms and Concepts across Domains - cross-pollination, reuse and enrichment.&lt;/li&gt;&lt;li&gt;Search and Visualisation tools to explore related concepts.&lt;/li&gt;&lt;li&gt;The URI is important - terms get &lt;span style="font-weight: bold;"&gt;enduring URL&lt;/span&gt;s so they can be referenced from other places reliably.&lt;/li&gt;&lt;li&gt;Support for semantic web standards -  RDF, skos etc&lt;/li&gt;&lt;/ul&gt;Other extended capabilities could include&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Glossary Extraction from parsed documents.&lt;/li&gt;&lt;li&gt;Term, Concept Extraction, based on submitted content (docs, web pages etc) using Natural Language techniques.&lt;/li&gt;&lt;/ul&gt;In future posts I'll cover the following:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;some screen shots and previews of latest pygloss 0.2 featues and the data model.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;relationships to wordnet and other taxonomy tools&lt;/li&gt;&lt;li&gt;Some 'under the hood stuff' - how it hangs together (expect some python, ajax, zodb, xapian learnings here).&lt;/li&gt;&lt;li&gt;how this project relates to my earlier &lt;span style="font-weight: bold;"&gt;cvcore&lt;/span&gt; work.&lt;/li&gt;&lt;/ul&gt;But I'll sign-off now with an appetizer - a some&lt;span style="font-weight: bold;"&gt; visualisations&lt;/span&gt; produced by pygloss 0.1...&lt;br /&gt;&lt;br /&gt;Using the &lt;a href="http://www.graphviz.org/Gallery.php"&gt;&lt;span style="font-weight: bold;"&gt;AT&amp;amp;T dot&lt;/span&gt;&lt;/a&gt; library, automated layouts delivered as SVG, PDF, PNG etc...&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_fFnTa6E3n38/SZT2M0Ds0_I/AAAAAAAAAAU/7eKleRAEk-c/s1600-h/IM.SDR_domain_dotgraph.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; cursor: pointer; width: 400px; height: 283px;" src="http://2.bp.blogspot.com/_fFnTa6E3n38/SZT2M0Ds0_I/AAAAAAAAAAU/7eKleRAEk-c/s400/IM.SDR_domain_dotgraph.png" alt="" id="BLOGGER_PHOTO_ID_5302133361314943986" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And from &lt;a href="http://blog.thejit.org/javascript-information-visualization-toolkit-jit/"&gt;&lt;span style="font-weight: bold;"&gt;thejit&lt;/span&gt;&lt;/a&gt; - interactive visualisations, using client-side javascript...&lt;br /&gt;&lt;br /&gt;A 'hypertree' layout on the central term 'COURSE' and others within  a radius of 2 'hops'&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_fFnTa6E3n38/SZT2NEtCDBI/AAAAAAAAAAk/xIAA_U-S3UU/s1600-h/IM.SDR_COURSE_hypertree.png"&gt;&lt;br /&gt;&lt;img style="margin: 0pt 10px 10px 0pt; cursor: pointer; width: 400px; height: 280px;" src="http://1.bp.blogspot.com/_fFnTa6E3n38/SZT2NEtCDBI/AAAAAAAAAAk/xIAA_U-S3UU/s400/IM.SDR_COURSE_hypertree.png" alt="" id="BLOGGER_PHOTO_ID_5302133365783268370" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And a radial graph layout, composed of all the terms from the domain IM.SDR...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_fFnTa6E3n38/SZT2NF2IYeI/AAAAAAAAAAc/WJXicTypUoY/s1600-h/IM.SDR_domain_rgraph.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 280px;" src="http://3.bp.blogspot.com/_fFnTa6E3n38/SZT2NF2IYeI/AAAAAAAAAAc/WJXicTypUoY/s400/IM.SDR_domain_rgraph.png" alt="" id="BLOGGER_PHOTO_ID_5302133366089867746" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531468487316084127-7713467888870883103?l=blog.artisan.co.nz' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artisan.co.nz/feeds/7713467888870883103/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artisan.co.nz/2009/02/pygloss-primer.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/7713467888870883103'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/7713467888870883103'/><link rel='alternate' type='text/html' href='http://blog.artisan.co.nz/2009/02/pygloss-primer.html' title='pygloss primer'/><author><name>Chris Chamberlain</name><uri>http://www.blogger.com/profile/00294249843984687355</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_fFnTa6E3n38/SZT2M0Ds0_I/AAAAAAAAAAU/7eKleRAEk-c/s72-c/IM.SDR_domain_dotgraph.png' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6531468487316084127.post-3802330933990963942</id><published>2008-05-08T16:45:00.000+12:00</published><updated>2008-05-08T16:45:00.948+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='semweb'/><title type='text'>The Machine is Us/ing Us.</title><content type='html'>A stylish award-winning video from Mike Wesch, exploring how our everyday internet behaviour is building a new semantic-savvy digital world.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;"Web 2.0 in just under 5 minutes. I was inspired to make this video while writing a paper about web 2.0. Struggling to find a way to put it into words, I decided to make this video to show it rather than tell it.... &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://mediatedcultures.net/mediatedculture.htm"&gt;mediatedcultures.net&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/NLlGopyXT_g&amp;hl=en"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/NLlGopyXT_g&amp;hl=en" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531468487316084127-3802330933990963942?l=blog.artisan.co.nz' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/3802330933990963942'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/3802330933990963942'/><link rel='alternate' type='text/html' href='http://blog.artisan.co.nz/2008/05/machine-is-using-us.html' title='The Machine is Us/ing Us.'/><author><name>Chris Chamberlain</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-6531468487316084127.post-1765827336262974357</id><published>2008-05-05T23:49:00.002+12:00</published><updated>2008-05-06T23:19:05.230+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><title type='text'>Update: Identity Conference 2008</title><content type='html'>&lt;a href="http://crazypick.blogspot.com/2008/04/identity-conference-2008.html#links"&gt;Re my earlier post: musings / mutterings on meta^2: Identity Conference 2008&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;&lt;/span&gt;&lt;br /&gt;Courtesy of delicious network (thanks ldodds) I found an interesting wiki-like debating tool (&lt;a href="http://debategraph.org/"&gt;DebateGraph&lt;/a&gt;) which maps/visualises a debate into a specialised ontology. &lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_-dtQES_A8TQ/SCA-Uwir90I/AAAAAAAAABM/Xe-kxjf70xA/s1600-h/Debategraph+viewing+page.png"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://bp0.blogger.com/_-dtQES_A8TQ/SCA-Uwir90I/AAAAAAAAABM/Xe-kxjf70xA/s400/Debategraph+viewing+page.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5197222496334247746" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A good example debate is the current UK national identity system 2008/09 discussion (3rd item in the list of features maps) which includes:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;div align="left"&gt;The Government intends to introduce biometric residence permits for foreign nationals in 2008, with the first ID cards expected to be issued to British citizens in 2009.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div align="left"&gt;All UK residents over the age of 16 will be required to have a unique ID card that will combine the cardholder’s biometric data with checked and confirmed identity details, called a ‘biographical footprint’.&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;This particular debate is quite relevant to much of the conference discussion, which naturally oscillated between the philisophical, the technical and the off-topics ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531468487316084127-1765827336262974357?l=blog.artisan.co.nz' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://crazypick.blogspot.com/2008/04/identity-conference-2008.html#links' title='Update: Identity Conference 2008'/><link rel='replies' type='application/atom+xml' href='http://blog.artisan.co.nz/feeds/1765827336262974357/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artisan.co.nz/2008/05/update-identity-conference-2008.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/1765827336262974357'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/1765827336262974357'/><link rel='alternate' type='text/html' href='http://blog.artisan.co.nz/2008/05/update-identity-conference-2008.html' title='Update: Identity Conference 2008'/><author><name>Chris Chamberlain</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp0.blogger.com/_-dtQES_A8TQ/SCA-Uwir90I/AAAAAAAAABM/Xe-kxjf70xA/s72-c/Debategraph+viewing+page.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6531468487316084127.post-1554716823407339123</id><published>2008-05-05T16:17:00.006+12:00</published><updated>2008-05-06T22:35:30.862+12:00</updated><title type='text'>Am I Linked In?</title><content type='html'>Ok I'm off work crook - bad weather and a really bad chest cold uugh. So I decided to check out &lt;span style="font-weight: bold;"&gt;LinkedIn&lt;/span&gt; an it seems I've got a number of IT colleagues using the  network. Although the UI is quite old-school and unintuitive I'll give it a spin and see how it works out.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.linkedin.com/pub/8/2a3/240"&gt;&lt;img src="http://www.linkedin.com/img/webpromo/btn_linkedin_120x30.gif" alt="View Chris Chamberlain's profile on LinkedIn" border="0" height="30" width="120" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Other webservices and web technologies I use include:&lt;br /&gt;&lt;a href="http://del.icio.us/crazypick"&gt;&lt;br /&gt;&lt;/a&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://del.icio.us/crazypick"&gt;Del.icio.us&lt;/a&gt; - my mainstay social tagging service (Recommended)&lt;/li&gt;&lt;li&gt;&lt;a href="http://moinmoin.wikiwikiweb.de"&gt;MoinMoin wiki&lt;/a&gt; for my &lt;a href="http://www.artisan.co.nz"&gt;Company website&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://python.org"&gt;Python&lt;/a&gt; and the &lt;a href="http://pylonshq.com"&gt;Pylons&lt;/a&gt; webframework&lt;br /&gt;&lt;/li&gt;&lt;li&gt;And experimentally, &lt;a href="http://www.dapper.net/dapp-howto-use.php?dappName=techwatch"&gt;Dapper&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_-dtQES_A8TQ/SCA0LAir9zI/AAAAAAAAABE/YSZxRkHuhy4/s1600-h/techwatch+Dapp.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;" src="http://bp1.blogger.com/_-dtQES_A8TQ/SCA0LAir9zI/AAAAAAAAABE/YSZxRkHuhy4/s400/techwatch+Dapp.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5197211333714245426" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531468487316084127-1554716823407339123?l=blog.artisan.co.nz' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artisan.co.nz/feeds/1554716823407339123/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artisan.co.nz/2008/05/am-i-linked-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/1554716823407339123'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/1554716823407339123'/><link rel='alternate' type='text/html' href='http://blog.artisan.co.nz/2008/05/am-i-linked-in.html' title='Am I Linked In?'/><author><name>Chris Chamberlain</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_-dtQES_A8TQ/SCA0LAir9zI/AAAAAAAAABE/YSZxRkHuhy4/s72-c/techwatch+Dapp.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6531468487316084127.post-7334694780773982120</id><published>2008-04-30T05:40:00.006+12:00</published><updated>2008-05-05T23:43:52.530+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='identity'/><title type='text'>Identity Conference 2008</title><content type='html'>I'm attending this conference (final day today).  A couple of themes fired for me - both from Dick Hardts presentation, - but definitely "under the hood" of several sessions:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;What is Open Data - is it like Eric Schmidt's  &lt;span style="font-style: italic;"&gt;'the data is in the cloud' ?&lt;br /&gt;&lt;/span&gt;I found a few links to the topic of &lt;span style="font-weight: bold;"&gt;Open Government Data&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;What is rel='me' (Dick Hardt mentioned this)? Does this relate to the Semantic Web?&lt;/li&gt;&lt;/ul&gt;I'm hoping to spark some discussion on this today - let's see who's also  into this stuff :).  I've tagged  several relevant sites, see  &lt;a href="http://del.icio.us/crazypick/imconf"&gt;imconf&lt;/a&gt;, &lt;a href="http://del.icio.us/crazypick/opendata"&gt; opendata&lt;/a&gt; and &lt;a href="http://del.icio.us/crazypick/opengovernment"&gt;opengovernment&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531468487316084127-7334694780773982120?l=blog.artisan.co.nz' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.identityconference.victoria.ac.nz/' title='Identity Conference 2008'/><link rel='replies' type='application/atom+xml' href='http://blog.artisan.co.nz/feeds/7334694780773982120/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artisan.co.nz/2008/04/identity-conference-2008.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/7334694780773982120'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/7334694780773982120'/><link rel='alternate' type='text/html' href='http://blog.artisan.co.nz/2008/04/identity-conference-2008.html' title='Identity Conference 2008'/><author><name>Chris Chamberlain</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6531468487316084127.post-3963754774427493739</id><published>2008-04-13T12:16:00.005+12:00</published><updated>2009-02-19T10:02:52.181+13:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='semweb'/><title type='text'>semweb on youtube</title><content type='html'>Here are a couple of introductory vids fom Matt Sporny.&lt;br /&gt;&lt;br /&gt;&lt;object height="255" width="325"&gt;&lt;param value="http://www.youtube.com/v/OGg8A2zfWKg" name="movie"&gt;&lt;param value="transparent" name="wmode"&gt;&lt;embed src="http://www.youtube.com/v/OGg8A2zfWKg" wmode="transparent" type="application/x-shockwave-flash" height="255" width="325"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;object height="255" width="325"&gt;&lt;param value="http://www.youtube.com/v/ldl0m-5zLz4" name="movie"&gt;&lt;param value="transparent" name="wmode"&gt;&lt;embed src="http://www.youtube.com/v/ldl0m-5zLz4" wmode="transparent" type="application/x-shockwave-flash" height="255" width="325"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;p&gt;By Matt Sporny&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531468487316084127-3963754774427493739?l=blog.artisan.co.nz' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/3963754774427493739'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/3963754774427493739'/><link rel='alternate' type='text/html' href='http://blog.artisan.co.nz/2008/04/rdf-id-vs-about-properties.html' title='semweb on youtube'/><author><name>Chris Chamberlain</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-6531468487316084127.post-7825767708992239427</id><published>2008-04-13T12:09:00.003+12:00</published><updated>2008-04-13T12:16:31.670+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>Some 'good oil' on python default arguments</title><content type='html'>Traps and a simple way to avoid-em for python using mutable types as default arguments - well worth a read&lt;br /&gt;&lt;br /&gt;&lt;a href="http://boodebr.org/main/python/tourist/mutable-obj-as-default-arg"&gt;http://boodebr.org/main/python/tourist/mutable-obj-as-default-arg&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;"Many modern languages allow for default function arguments. Default arguments can be a great thing - they allow you to use sensible defaults for the common cases, without taking away the power to add more functionality as needed. You can arbitrarily expand a function definition without breaking existing code by providing sensible defaults for the new parameters.&lt;br /&gt;&lt;br /&gt;Here is a fun example of how Python will bite you if you try to use a mutable object (like a list, dict, or object instance) as a default argument. The following is an example function I'm trying to write ..."&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531468487316084127-7825767708992239427?l=blog.artisan.co.nz' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://boodebr.org/main/python/tourist/mutable-obj-as-default-arg' title='Some &apos;good oil&apos; on python default arguments'/><link rel='replies' type='application/atom+xml' href='http://blog.artisan.co.nz/feeds/7825767708992239427/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artisan.co.nz/2008/04/some-good-oil-on-python-default.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/7825767708992239427'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/7825767708992239427'/><link rel='alternate' type='text/html' href='http://blog.artisan.co.nz/2008/04/some-good-oil-on-python-default.html' title='Some &apos;good oil&apos; on python default arguments'/><author><name>Chris Chamberlain</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6531468487316084127.post-9202845472669493325</id><published>2008-04-03T20:04:00.003+13:00</published><updated>2008-04-03T20:13:35.300+13:00</updated><title type='text'>A metadata registry in action</title><content type='html'>I found this today while exploring &lt;a href="http://www.w3.org/TR/2007/WD-skos-ucr-20070516/"&gt;use cases for the skos ontology&lt;/a&gt; looking for similarities to those for the cvcore.  &lt;a href="http://metadataregistry.org/about.html"&gt;The NSDL Metadata Registry&lt;/a&gt; has some interesting features:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;it's based on skos&lt;/li&gt;&lt;li&gt;it demonstrates a nice simple approach to the slowly-changing-time dimension , using a timeslice mechanism that allows the user to get a point-in time view of a resource.&lt;/li&gt;&lt;li&gt;all resources are viewable as  either HTML or RDF&lt;/li&gt;&lt;li&gt;The  developer blog gives an interesting insight into how the project runs.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Well worth a look for my NZ education sector friends :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531468487316084127-9202845472669493325?l=blog.artisan.co.nz' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artisan.co.nz/feeds/9202845472669493325/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artisan.co.nz/2008/04/metadata-registry-in-action.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/9202845472669493325'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/9202845472669493325'/><link rel='alternate' type='text/html' href='http://blog.artisan.co.nz/2008/04/metadata-registry-in-action.html' title='A metadata registry in action'/><author><name>Chris Chamberlain</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6531468487316084127.post-9101563321617390053</id><published>2008-04-03T11:21:00.007+13:00</published><updated>2008-04-03T20:01:34.573+13:00</updated><title type='text'>Importing FOAF / SKOS ontologies with Protege OWL</title><content type='html'>I''ve been having some tribulations with importing the  well-known ontologies (FOAF and SKOS)  properly in Protege 3.4 (build 108)&lt;br /&gt;&lt;br /&gt;First problem - what to import?&lt;br /&gt;Simple question, but no immediately obvious answer. BTW has something changed here recently - as I seem to remember this being simple in the past??&lt;br /&gt;&lt;br /&gt;I'm now importing OK from...&lt;br /&gt;&lt;ul  style="font-family:courier new;"&gt;&lt;li&gt;SKOS: &lt;span class="fixed_width"&gt;&lt;a target="_blank" rel="nofollow" href="http://www.w3.org/2004/02/skos/core/owl-dl/skos-core-owl-dl.owl"&gt;http://www.w3.org/2004/02/skos/core/owl-dl/skos-core-owl-dl.owl&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;foaf:&lt;br /&gt;&lt;a href="http://xmlns.com/foaf/spec/index.rdf"&gt;http://xmlns.com/foaf/spec/index.rdf&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Second Problem - Protege errors&lt;br /&gt;I wouldn't expect too much drama here as these are  well travelled paths?&lt;br /&gt;&lt;br /&gt;foaf won't import...&lt;br /&gt;&lt;blockquote  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;INFO: Loading triples&lt;br /&gt;INFO: Start processing ontology: http://xmlns.com/foaf/spec/20070524.rdf Time: Thu Apr 03 11:42:43 NZDT 2008&lt;br /&gt;WARNING: [ProtegeOWLParser] Warning: No default namespace found in file.  Will use http://xmlns.com/foaf/spec/20070524.rdf -- DefaultProtegeOWLParserLogger.logWarning()&lt;br /&gt;INFO: [ProtegeOWLParser] Completed triple loading after 646 ms&lt;br /&gt;INFO: [TripleChangePostProcessor] Completed lists after 0 ms&lt;br /&gt;java.lang.ClassCastException: edu.stanford.smi.protegex.owl.model.impl.DefaultRDFSNamedClass&lt;br /&gt;   at edu.stanford.smi.protegex.owl.model.triplestore.impl.OWLAnonymousClassPostProcessor.convertNamedEnumeratedClasses(Unknown Source)&lt;br /&gt;   at edu.stanford.smi.protegex.owl.model.triplestore.impl.OWLAnonymousClassPostProcessor.&lt;init&gt;(Unknown Source)&lt;br /&gt;   at edu.stanford.smi.protegex.owl.model.triplestore.impl.TripleChangePostProcessor.postProcess(Unknown Source)....&lt;br /&gt;...lots more&lt;br /&gt;&lt;br /&gt;&lt;/init&gt;&lt;/span&gt;&lt;/blockquote&gt;Curious that I get different behaviour (on my OSX leopard system) depending on how I start Protege.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;from the &lt;span style="font-weight: bold;"&gt;protege.app &lt;/span&gt;the ontology loads, but the properties tab is broken (red box)&lt;/li&gt;&lt;li&gt;from &lt;span style="font-weight: bold;"&gt;run_protoge.sh&lt;/span&gt; I get the error output above and the ontology doesn't load&lt;/li&gt;&lt;/ul&gt;Ok, I checked the latest build (128) and I get almost the same behaviour.&lt;br /&gt;&lt;br /&gt;And finally protege 4.0 (alpha)  build 61, which Does work - however it's a completely new UI experience.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531468487316084127-9101563321617390053?l=blog.artisan.co.nz' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artisan.co.nz/feeds/9101563321617390053/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artisan.co.nz/2008/04/importing-foaf-skos-ontologies-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/9101563321617390053'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/9101563321617390053'/><link rel='alternate' type='text/html' href='http://blog.artisan.co.nz/2008/04/importing-foaf-skos-ontologies-with.html' title='Importing FOAF / SKOS ontologies with Protege OWL'/><author><name>Chris Chamberlain</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6531468487316084127.post-9098282089445835094</id><published>2008-03-02T17:11:00.011+13:00</published><updated>2008-05-06T23:08:41.001+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cvcore'/><title type='text'>Why is Genericode so Complex?</title><content type='html'>I need to point out the overlapping &lt;a href="http://docs.oasis-open.org/codelist/cd-genericode-1.0/doc/oasis-code-list-representation-requirements-1.0.1.pdf"&gt;requirements for OASIS Genericode &lt;/a&gt;standard ( v1.0, December 2007 ) and those for my work on the OWL Code Value Core Ontology. Basically &lt;strong&gt;they're the same&lt;/strong&gt;. OK, there seem to be a number of needs captured for genericode that are not part of CVCore, but IMO these are the boundary cases - needed in perhaps 1 or 2 percent of cases (a guestimate at this stage - note to self to look into measuring this). CVCore will be extended if needed to support these, or these advanced requirements can be met in specialised ontology(s) that subclass cvcore:CodeValue etc.&lt;br /&gt;&lt;br /&gt;The MAJOR requirement that CVCore is addressing now, and which has been deferred until v2.0 of genericode is &lt;em&gt;mapping between Code Value Items &lt;/em&gt;- which in &lt;strong&gt;CVCore&lt;/strong&gt; is done via the &lt;strong&gt;hasEquivalent&lt;/strong&gt; relation. Genericode 2.0 will support &lt;em&gt;Derived Code Lists&lt;/em&gt; which seem likely to involve some tricky diff management techniques (uugh).&lt;br /&gt;&lt;br /&gt;NB the post title refers to &lt;a href="http://www.genericode.org/2007/presentations/ny-xml-sig/ny-xml-sig-2007-05-why-are-simple-codelists-so-complex.pdf"&gt;this presentation&lt;/a&gt;, published by Tony Coates.  On Page 67  he explains that Genericode 1.0 DOES NOT support derived code lists (although they were part of the ) 0.4 draft.&lt;br /&gt;&lt;br /&gt;Unfortunately the multi-version, equivalence relation is right at the heart of the Code Value problem (ever tried to understand why two systems validations don't line up for the same topic? Maybe they use different code list versions?) . This , coupled with the need for &lt;em&gt;agreement on the Semantics&lt;/em&gt; encourages me that this work is valuable and will help the genericode efforts also.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531468487316084127-9098282089445835094?l=blog.artisan.co.nz' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artisan.co.nz/feeds/9098282089445835094/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artisan.co.nz/2008/03/why-is-genericode-so-complex.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/9098282089445835094'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/9098282089445835094'/><link rel='alternate' type='text/html' href='http://blog.artisan.co.nz/2008/03/why-is-genericode-so-complex.html' title='Why is Genericode so Complex?'/><author><name>Chris Chamberlain</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6531468487316084127.post-6730536079311956408</id><published>2008-02-23T13:39:00.006+13:00</published><updated>2008-05-06T23:09:18.409+12:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cvcore'/><title type='text'>Introducing the Code Value Core</title><content type='html'>And so it begins....&lt;br /&gt;&lt;br /&gt;Since I'm doing a project that has a potentially wide audience (at least in the IT world) it's time to start using this medium to &lt;span style="font-weight: bold;"&gt;shout it out&lt;/span&gt; .&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;The main place to find out about the project is my wiki at &lt;a href="http://www.artisan.co.nz/CodeValueCore"&gt;CodeValueCore&lt;/a&gt;, and there's a lot more material to come - I 'll release it as I find the time.&lt;br /&gt;&lt;br /&gt;Code Value Core (CVC for short) is an OWL ontology. It's purpose it to provide a simple standard for CodeValue publication on the Web. It has similar goals to the OASIS Genericode project, but adds &lt;span style="font-weight: bold;"&gt;longitudinal&lt;/span&gt; and &lt;span style="font-weight: bold;"&gt;vertical&lt;/span&gt; relationships between Code Values. It should be fully &lt;span style="font-weight: bold;"&gt;interoperable with genericode.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531468487316084127-6730536079311956408?l=blog.artisan.co.nz' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.artisan.co.nz/feeds/6730536079311956408/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://blog.artisan.co.nz/2008/02/time-to-start-bloggin.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/6730536079311956408'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531468487316084127/posts/default/6730536079311956408'/><link rel='alternate' type='text/html' href='http://blog.artisan.co.nz/2008/02/time-to-start-bloggin.html' title='Introducing the Code Value Core'/><author><name>Chris Chamberlain</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
