<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://www.jenitennison.com/blog" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>web</title>
 <link>http://www.jenitennison.com/blog/taxonomy/term/12</link>
 <description>The taxonomy view with a depth of 0.</description>
 <language>en</language>
<item>
 <title>The Distributed Web</title>
 <link>http://www.jenitennison.com/blog/node/90</link>
 <description>&lt;p&gt;XTech was subtitled &amp;#8220;the mobile web&amp;#8221;, but one of the major themes for me was that of &lt;strong&gt;the distributed web&lt;/strong&gt;. The &lt;a href=&quot;http://assets.expectnation.com/15/event/3/Why%20%22open%22%20matters%20—%20from%20innovation%20to%20commoditisation%20Paper%201.pdf&quot; title=&quot;XTech 2008: Why &amp;quot;open&amp;quot; matters — from innovation to commoditisation&quot;&gt;first keynote&lt;/a&gt;, by &lt;a href=&quot;http://www.gardeviance.org/about-me&quot; title=&quot;Simon Wardley&quot;&gt;Simon Wardley&lt;/a&gt;, gave a vision of a future in which hardware, frameworks and applications are services in the cloud rather than products on machines we own: where we use &lt;a href=&quot;http://www.flickr.com/&quot; title=&quot;flickr&quot;&gt;flickr&lt;/a&gt; to store our photographs, &lt;a href=&quot;http://code.google.com/appengine/&quot; title=&quot;Google App Engine&quot;&gt;Google App Engine&lt;/a&gt; to host our applications, and &lt;a href=&quot;http://www.amazon.com/gp/browse.html?node=16427261&quot; title=&quot;Amazon Simple Storage Service&quot;&gt;Amazon S3&lt;/a&gt; to store our data. In &lt;a href=&quot;http://www.davidrecordon.com/&quot; title=&quot;David Recordon&quot;&gt;David Recordon&lt;/a&gt;&amp;#8217;s keynote (&lt;a href=&quot;http://adactio.com/journal/1461/&quot; title=&quot;Adactio: David Recordon’s XTech keynote&quot;&gt;written up by Jeremy Keith&lt;/a&gt;), he talked about small, specific services provided by sites that aren&amp;#8217;t &amp;#8220;destination sites&amp;#8221;. The same picture was painted by &lt;a href=&quot;http://morethanseven.net/&quot; title=&quot;Gareth Rushgrove&quot;&gt;Gareth Rushgrove&lt;/a&gt; in his talk on &lt;a href=&quot;http://2008.xtech.org/public/schedule/detail/549&quot; title=&quot;XTech 2008: Design Strategies for a Distributed Web&quot;&gt;Design Strategies for a Distributed Web&lt;/a&gt;.&lt;/p&gt;

&lt;!--break--&gt;

&lt;p&gt;So I was surprised at how contentious &lt;a href=&quot;http://www.cwi.nl/~steven/&quot; title=&quot;Steven Pemberton&quot;&gt;Steven Pemberton&lt;/a&gt;&amp;#8217;s talk on &lt;a href=&quot;http://2008.xtech.org/public/schedule/detail/545&quot; title=&quot;XTech 2008: Why you should have a Website&quot;&gt;Why you should have a Website&lt;/a&gt; (thankfully again &lt;a href=&quot;http://adactio.com/journal/1468/&quot; title=&quot;Adactio: Why you should have a Website&quot;&gt;documented by Jeremy Keith&lt;/a&gt;) proved to be. Because to me it seemed to be the logical extension to the distribution of hardware, frameworks and application: the distribution of data. In fact, I&amp;#8217;ve &lt;a href=&quot;http://www.jenitennison.com/blog/node/60&quot; title=&quot;Jeni&#039;s Musings: A sketch: personal APP servers and feed-based web apps&quot;&gt;written about the same idea myself&lt;/a&gt;, &lt;a href=&quot;http://www.ldodds.com/blog/archives/000330.html&quot; title=&quot;Lost Boy: Google AppEngine for Personal Web Presence?&quot;&gt;as has Leigh Dodds&lt;/a&gt;, more recently.&lt;/p&gt;

&lt;p&gt;From the session, the main question seems to be &amp;#8220;how could we do flickr without them holding our data?&amp;#8221; I don&amp;#8217;t want to particularly pick on flickr, especially because it&amp;#8217;s not one of the worst offenders, but the problem of serving and sharing images does illustrate a whole range of issues, so I will use it as an example. I could just as easily be talking about ancestry.com. The way I see it, you need three levels:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;providers&lt;/strong&gt; which make information available in known formats&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;user interfaces&lt;/strong&gt; which provide the end-user with a way to access and manipulate the information&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;brokers&lt;/strong&gt; which locate information on the web and provide an aggregated interface&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(It occurs to me that this is similar to a model/view/controller architecture: the providers give the model, the user interfaces give the views and the brokers control the flow between the two.)&lt;/p&gt;

&lt;p&gt;Where flickr is at the moment is a conglomeration of the three: to have your photo appear on flickr, and to gain the advantages that it gives you in terms of tag-based aggregations and social networking, you have to upload it. They are then the provider of the image+metadata (perhaps the only place it is located on the web), the user interface on the image+metadata (the interface through which the image is annotated), and the broker (they provide keyword-based retrieval, for example).&lt;/p&gt;

&lt;p&gt;What would it look like to separate those functions?&lt;/p&gt;

&lt;p&gt;First, you, as the owner of the image+metadata, could put your data anywhere: on a home wireless network box, on a webserver hosted by an ISP of your choice, on a site specifically designed for hosting photos. Your data is exposed to the larger web through a standard read/write protocol (I&amp;#8217;m betting on &lt;a href=&quot;http://tools.ietf.org/html/rfc5023&quot; title=&quot;RFC 5023: The Atom Publishing Protocol&quot;&gt;AtomPub&lt;/a&gt;) that allows you to provide metadata both about resources and the links between resources. The point of it being read/write is that it allows other people to add metadata to or links from your resource to others, such as adding a comment on your image.&lt;/p&gt;

&lt;p&gt;Second, an information broker would locate your photos by crawling for them (or perhaps by you submitting the URL somewhere, but mostly that shouldn&amp;#8217;t be necessary). There are already information brokers around: Google provides a &lt;a href=&quot;http://code.google.com/apis/ajaxsearch/documentation/#fonje&quot; title=&quot;Google AJAX Search API&quot;&gt;RESTful API for general search results&lt;/a&gt;, &lt;a href=&quot;http://developer.yahoo.com/search/&quot; title=&quot;Yahoo Search Web Services&quot;&gt;as does Yahoo!&lt;/a&gt;; at XTech, &lt;a href=&quot;http://dowhatimean.net/&quot; title=&quot;Richard Cyganiak&quot;&gt;Richard Cyganiak&lt;/a&gt; talked about &lt;a href=&quot;http://sindice.com/&quot; title=&quot;Sindice&quot;&gt;Sindice&lt;/a&gt;, and &lt;a href=&quot;http://sw.deri.org/~aidanh/&quot; title=&quot;Aidan Hogan&quot;&gt;Aidan Hogan&lt;/a&gt; about the &lt;a href=&quot;http://www.swse.org/&quot; title=&quot;Semantic Web Search Engine&quot;&gt;Semantic Web Search Engine&lt;/a&gt;, both of which crawl for RDF triples and provide an API for querying the results. In an AtomPub-based environment, you&amp;#8217;d want an information broker that located Atom feeds and resources, indexed them, and provided an AtomPub-based API for publishers to use.&lt;/p&gt;

&lt;p&gt;Third, a user interface would provide an attractive and usable front-end that brought together many different sets of information. For example, flickr might combine your friends feed with an image search to provide a view of images recently made available by your friends. There&amp;#8217;s no requirement for your friends to use flickr for this to work: flickr queries a broker for a list of your friends, then queries a broker for images by a particular person, the broker searches its index and points the application to the original resources that are provided by your friends.&lt;/p&gt;

&lt;p&gt;A user interface has another role, though: to add to the web. Flickr wants to make it easy to add tags to photos, to create sets and collections that help you navigate your photos, for others to add comments and so on and on. And that&amp;#8217;s fine, because AtomPub is a read/write API. To add a tag to a photo, flickr simply edits the resource with PUT. To add a comment, it locates the comment feed (which would be referenced from the entry for the particular image) and POSTs to create a new resource. And everyone can see those changes &amp;#8212; the added value that you get from a social network.&lt;/p&gt;

&lt;p&gt;None of this is to say that a single application can&amp;#8217;t act as provider, broker and publisher at the same time, but I&amp;#8217;m certain that users will favour those applications that do &lt;em&gt;all&lt;/em&gt; of each role: provide to the whole web, broker the whole web, provide a user interface to the whole web. Flickr is almost there, but it doesn&amp;#8217;t do the whole brokering job because it only brokers the data it provides, and therefore it doesn&amp;#8217;t provide the whole user interface job.&lt;/p&gt;

&lt;p&gt;This distributed web is a clear win, particularly for users, over walled gardens. They can switch from user interface to user interface, even use more than one at a time (perhaps one application is good for browsing while another is good for categorising), without any cost. They can choose who to use to serve their information on the basis of things that matter when you&amp;#8217;re serving information (low downtime, backups, security, etc.) rather than on how pretty an interface looks or how much functionality it gives you. On the other side of the equation, applications get to do one thing and do it well.&lt;/p&gt;

&lt;p&gt;It seems to me that this is simply how the web works, and the questions we should be asking are about privacy and trust and licensing and revenue models and standards development.&lt;/p&gt;
</description>
 <comments>http://www.jenitennison.com/blog/node/90#comments</comments>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/18">atom</category>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/12">web</category>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/39">xtech2008</category>
 <pubDate>Sun, 11 May 2008 22:07:29 +0100</pubDate>
 <dc:creator>Jeni</dc:creator>
 <guid isPermaLink="false">90 at http://www.jenitennison.com/blog</guid>
</item>
<item>
 <title>XTech 2008</title>
 <link>http://www.jenitennison.com/blog/node/89</link>
 <description>&lt;p&gt;I finally have some time to write about &lt;a href=&quot;http://2008.xtech.org/&quot; title=&quot;XTech 2008&quot;&gt;XTech&lt;/a&gt;. What a great conference! I know that &lt;a href=&quot;http://times.usefulinc.com/&quot; title=&quot;Edd Dumbill&#039;s blog&quot;&gt;Edd&lt;/a&gt; would like it bigger, but its modest size gives it a family feel. Like a family gathering, there are pontificating oldsters whose wisdom goes largely unappreciated by young upstarts who themselves bring energy and innovation to the crowd. And a bunch in the middle trying to translate across the gap: to explain the vision to the old and the reality to the new.&lt;/p&gt;

&lt;!--break--&gt;

&lt;p&gt;Another way of putting it is the divide between the XML crowd and the Web 2.0 crowd. In &lt;a href=&quot;http://seanmcgrath.blogspot.com/&quot; title=&quot;Sean McGrath&#039;s blog&quot;&gt;Sean McGrath&lt;/a&gt;&amp;#8217;s &lt;a href=&quot;http://2008.xtech.org/public/schedule/detail/647&quot; title=&quot;Orangutans, Oxen and Ogham stones. Mulling the movable Web&quot;&gt;closing keynote&lt;/a&gt;, thankfully &lt;a href=&quot;http://adactio.com/journal/1469/&quot; title=&quot;Adactio: Orangutans, Oxen and Ogham stones&quot;&gt;written up by Jeremy Keith&lt;/a&gt;, he talked about navigating the path between the document web and the programmable web, and the danger of tipping the balance too much in either one way or the other. XTech provides a great service in providing that balance, and of giving those of us with feet in both camps a home.&lt;/p&gt;

&lt;p&gt;Particularly encouraging for me was to see some of the principles of the programmable web filtering into sites such as the &lt;a href=&quot;http://2008.xtech.org/public/schedule/detail/577&quot; title=&quot;XTech 2008: Rebuilding guardian.co.uk&quot;&gt;Guardian&lt;/a&gt; and the &lt;a href=&quot;http://2008.xtech.org/public/schedule/detail/536&quot; title=&quot;XTech 2008: Here&#039;s one I prepared earlier: the BBC&#039;s Tech Refresh project&quot;&gt;BBC&lt;/a&gt; which aren&amp;#8217;t part of the Web 2.0 vowel-deprived clique. It gives me hope for the &lt;a href=&quot;http://www.opsi.gov.uk/&quot; title=&quot;Office of Public Sector Information&quot;&gt;public information sector&lt;/a&gt;, in which I happily find myself.&lt;/p&gt;

&lt;p&gt;So many many thanks to Edd and to everyone who supplied me with alcohol, deprived me of sleep, and talked to me about tech. I can&amp;#8217;t wait until next year.&lt;/p&gt;
</description>
 <comments>http://www.jenitennison.com/blog/node/89#comments</comments>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/12">web</category>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/39">xtech2008</category>
 <pubDate>Sun, 11 May 2008 11:25:40 +0100</pubDate>
 <dc:creator>Jeni</dc:creator>
 <guid isPermaLink="false">89 at http://www.jenitennison.com/blog</guid>
</item>
<item>
 <title>APECKS, ten years on</title>
 <link>http://www.jenitennison.com/blog/node/86</link>
 <description>&lt;p&gt;Roughly ten years ago, I was attending &lt;a href=&quot;http://ksi.cpsc.ucalgary.ca/KAW/KAW98/KAW98Proc.html&quot; title=&quot;Proceedings of KAW&#039;98&quot;&gt;KAW&amp;#8217;98&lt;/a&gt;. I remember that conference as one of the best weeks of my life. I had &lt;a href=&quot;http://users.ecs.soton.ac.uk/nrs/&quot; title=&quot;University of Southampton: Nigel Shadbolt&quot;&gt;great&lt;/a&gt; &lt;a href=&quot;http://www.louisecrow.com/blog/&quot; title=&quot;Louise Crow&quot;&gt;company&lt;/a&gt;. I saw &lt;a href=&quot;http://en.wikipedia.org/wiki/Lake_Louise,_Alberta&quot; title=&quot;Lake Louise&quot;&gt;scenery like I&amp;#8217;d never seen before&lt;/a&gt;. I presented &lt;a href=&quot;http://ksi.cpsc.ucalgary.ca/KAW/KAW98/tennison/&quot; title=&quot;KAW&#039;98: APECKS: A Tool to Support Living Ontologies&quot;&gt;my PhD work&lt;/a&gt; for the first time to people who were (at least politely) interested in it. And I learned a lot, both from the presentations and less formal discussions.&lt;/p&gt;

&lt;p&gt;(I remember driving back to Nottingham when we returned; a rainbow appeared in front of us, seeming to arch over our destination in a perfect finale.)&lt;/p&gt;

&lt;p&gt;Looking back at that paper is like looking at my past generally is: much of it makes me cringe, but parts of it are surprisingly good. What&amp;#8217;s interesting is that if you swap a few terms for modern buzzwords, it&amp;#8217;s still a pretty neat idea. It&amp;#8217;s also amazing how far we&amp;#8217;ve come &amp;#8212; how much has become common-place &amp;#8212; in just ten years.&lt;/p&gt;

&lt;!--break--&gt;

&lt;p&gt;In modern terms, what I did was develop web-based &lt;a href=&quot;http://en.wikipedia.org/wiki/Social_software&quot; title=&quot;Wikipedia: Social software&quot;&gt;social software&lt;/a&gt;, called &lt;acronym title=&quot;Adaptive Presentation Environment for Collaborative Knowledge Structuring&quot;&gt;APECKS&lt;/acronym&gt;, for ontology creation. The idea was that people would create their own ontologies (either from scratch or based on others), and the system would find similarities and differences between them, with the aim of starting conversations about and sharing knowledge.&lt;/p&gt;

&lt;p&gt;APECKS was built on top of a &lt;a href=&quot;http://en.wikipedia.org/wiki/Web_application_framework&quot; title=&quot;Wikipedia: Web application framework&quot;&gt;web application framework&lt;/a&gt; written in a &lt;a href=&quot;http://en.wikipedia.org/wiki/Dynamic_programming_language&quot; title=&quot;Wikipedia: Dynamic programming language&quot;&gt;dynamic programming language&lt;/a&gt;. We didn&amp;#8217;t have &lt;a href=&quot;http://en.wikipedia.org/wiki/Ruby_on_Rails&quot; title=&quot;Wikipedia: Ruby on Rails&quot;&gt;Ruby on Rails&lt;/a&gt; in those days: I turned a MOO (a text-based virtual reality) into a HTTP server (with caching and everything!) and that formed the basis of the application.&lt;/p&gt;

&lt;p&gt;APECKS was designed to use (lowercase) web services. It used &lt;a href=&quot;http://tiger.cpsc.ucalgary.ca/&quot; title=&quot;WebGrid III&quot;&gt;one&lt;/a&gt; for some of the complex ontology comparison that it needed to do. &lt;a href=&quot;http://www.w3.org/TR/1998/WD-rdf-syntax-19980216/&quot; title=&quot;W3C: RDF Working Draft from February 1998&quot;&gt;RDF was nowhere near done&lt;/a&gt;; OWL not even in a twinkle in its parents&amp;#8217; eyes: nowadays, you&amp;#8217;d build around those formats, which fit fairly well onto the &lt;a href=&quot;http://en.wikipedia.org/wiki/Knowledge_Interchange_Format&quot; title=&quot;Wikipedia: Knowledge Interchange Format&quot;&gt;KIF&lt;/a&gt;-based formalism that APECKS used. (The lack of a standard way to make the captured knowledge available was one of the reasons I got interested in XML &amp;#8212; we&amp;#8217;ve just celebrated &lt;em&gt;that&lt;/em&gt; 10-year anniversary too.)&lt;/p&gt;

&lt;p&gt;APECKS captured change history and design rationale as well as supporting unstructured communication between users. It didn&amp;#8217;t provide feeds because, guess what, &lt;a href=&quot;http://en.wikipedia.org/wiki/RSS_(file_format)&quot; title=&quot;Wikipedia: RSS&quot;&gt;feeds hadn&amp;#8217;t been invented yet&lt;/a&gt;. If I were doing it today, they would be a major feature.&lt;/p&gt;

&lt;p&gt;APECKS didn&amp;#8217;t do &lt;a href=&quot;http://en.wikipedia.org/wiki/Representational_State_Transfer&quot; title=&quot;Wikipedia: Representation State Transfer&quot;&gt;REST&lt;/a&gt; properly, but that concept wasn&amp;#8217;t around either! APECKS was also rather formal and uninventive in getting knowledge out of people (although it did use those knowledge-acquisition techniques that are automatable, such as card sorts). Now, you could make the interface so much better, because now we have &lt;a href=&quot;http://en.wikipedia.org/wiki/AJAX&quot; title=&quot;Wikipedia: AJAX&quot;&gt;AJAX&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Part of me wants to update it. The semantic web is going to happen, and we&amp;#8217;re going to need tools that help people share and link together the ontologies that they create. Tools that help people create ontologies without being semantic-web experts. &lt;/p&gt;

&lt;p&gt;But I&amp;#8217;ve been there, and done that, and anyway I&amp;#8217;m sure that today&amp;#8217;s students are creating applications that are much more innovative.&lt;/p&gt;
</description>
 <comments>http://www.jenitennison.com/blog/node/86#comments</comments>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/20">ontologies</category>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/12">web</category>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/27">life</category>
 <pubDate>Wed, 16 Apr 2008 21:34:43 +0100</pubDate>
 <dc:creator>Jeni</dc:creator>
 <guid isPermaLink="false">86 at http://www.jenitennison.com/blog</guid>
</item>
<item>
 <title>PRESTO and the limits of XPath-based URLs</title>
 <link>http://www.jenitennison.com/blog/node/80</link>
 <description>&lt;p&gt;Rick Jelliffe has been writing recently about &lt;a href=&quot;http://www.oreillynet.com/xml/blog/2008/02/presto_a_www_information_archi.html&quot; title=&quot;PRESTO - A WWW Information Architecture for Legislation and Public Information systems&quot;&gt;PRESTO&lt;/a&gt;, most recently about the &lt;a href=&quot;http://www.oreillynet.com/xml/blog/2008/03/presto_urls_as_xpaths_to_views.html&quot; title=&quot;PRESTO: URLs as XPaths to views of information&quot;&gt;design of URLs&lt;/a&gt; based on the PRESTO system. In his latest post, Rick talks about using XPath as the basis of a URL scheme:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;The Xpath for accessing a particular part’s title would be /law/part[2]/title so the PRESTO URLs would need some kind of convention.&lt;/p&gt;
  
  &lt;p&gt;[snip]&lt;/p&gt;
  
  &lt;p&gt;Now, I am not sure I understand the issues well enough to say which system for indexing is absolutely best. But I think the advantage of &lt;code&gt;http://www.eg.com/law/part2/title&lt;/code&gt; over  &lt;code&gt;http://www.eg.com/law/part2/title&lt;/code&gt; is that it is probably a more common case that your system is interested in &lt;code&gt;/law/part[2]/title&lt;/code&gt; rather than all titles of parts &lt;code&gt;/law/part/title&lt;/code&gt;. But it is a matter of the particular use case and the consequent virtual schema.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;!--break--&gt;

&lt;p&gt;This has particular interest to me because I&amp;#8217;ve recently been involved in putting some of the &lt;a href=&quot;http://www.opsi.gov.uk/legislation/about_legislation.htm&quot; title=&quot;OPSI: Legislation&quot;&gt;UK&amp;#8217;s legislation online&lt;/a&gt;. We don&amp;#8217;t expose the parts/sections and so on as individual documents at the moment (although this &lt;em&gt;is&lt;/em&gt; something that you get with the &lt;a href=&quot;http://www.statutelaw.gov.uk/&quot; title=&quot;The Statute Law Database&quot;&gt;Statute Law Database&lt;/a&gt;, albeit with an awful URL scheme).&lt;/p&gt;

&lt;p&gt;Anyway, we do have &lt;em&gt;anchors&lt;/em&gt; for parts/sections within the main legislation which follow a similar scheme to the one that Rick suggests here. But they have a drawback: at least for consolidated legislation (which reflects the &amp;#8220;current state&amp;#8221; of legislation that has been amended by later legislation), the anchors don&amp;#8217;t reflect the semantics of the numbering scheme used by the document. For example, see &lt;a href=&quot;http://www.opsi.gov.uk/RevisedStatutes/Acts/ukpga/1977/cukpga_19770042_en_2#pt1-pb2-l1g6&quot; title=&quot;OPSI: Legislation: Revised: Rent Act 1977: Section 5A&quot;&gt;Section 5A of the Rent Act 1977&lt;/a&gt;, whose URL is:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;http://www.opsi.gov.uk/RevisedStatutes/Acts/ukpga/1977/cukpga_19770042_en_2#pt1-pb2-l1g6
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;As you can see, the URL ends in a 6 rather than 5A because it&amp;#8217;s the 6th Section that appears in the document.&lt;/p&gt;

&lt;p&gt;The thing is that generic, position-based XPaths into content are seldom the ones that make most sense semantically. A friendly XPath to Section 5A would look like:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/part[1]/group[2]/section[3]
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;and even if you just counted sections it would be:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;//section[6]
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;when what you really want is the equivalent of:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;//section[number = &#039;5A&#039;]
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Given this, I wonder if a &amp;#8220;striped&amp;#8221; URL scheme would be better, by which I mean something that follows the general pattern &lt;code&gt;/name/identifier/name/identifier&lt;/code&gt;. For example:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/part/I/section/5A
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;There are several advantages to this. The resulting URLs are more semantically meaningful than those based on positions. They are more robust to changes in the document (which naturally happen with consolidated legislation). They also provide a neat method of returning &lt;em&gt;all&lt;/em&gt; the sections in a particular part, such as:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;/part/I/section
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;(though you could get this advantage with a position-based scheme as well, depending on how you map from XPath to URL).&lt;/p&gt;

&lt;p&gt;The main disadvantage is that you have to provide a custom mapping from XPath to URL, because it&amp;#8217;s not immediately obvious what identifier to use for a given element: it might be a &lt;code&gt;&amp;lt;number&amp;gt;&lt;/code&gt; element child for one kind of element, but an &lt;code&gt;id&lt;/code&gt; attribute for another element, and the position of the child for some other element. Of course you could add annotations to your schema to indicate what acts as the identifier for that particular element type, but it does raise the implementation barrier.&lt;/p&gt;
</description>
 <comments>http://www.jenitennison.com/blog/node/80#comments</comments>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/12">web</category>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/36">xpath</category>
 <pubDate>Thu, 13 Mar 2008 20:18:56 +0000</pubDate>
 <dc:creator>Jeni</dc:creator>
 <guid isPermaLink="false">80 at http://www.jenitennison.com/blog</guid>
</item>
<item>
 <title>Web 2.0 project: privacy in genealogy</title>
 <link>http://www.jenitennison.com/blog/node/69</link>
 <description>&lt;p&gt;There were a couple of comments on my previous post about &lt;a href=&quot;http://www.jenitennison.com/blog/node/67&quot; title=&quot;Jeni&#039;s Musings: Web 2.0 project: RDF and uncertainty&quot;&gt;RDF and uncertainty in our Web 2.0 genealogy project&lt;/a&gt; concerning the problems of privacy in a genealogy app. My ideas about this aren&amp;#8217;t fully thought-through, let alone implemented, but I thought I&amp;#8217;d share them anyway.&lt;/p&gt;

&lt;p&gt;First, the things we could restrict access to are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;sources of information (eg birth records)&lt;/li&gt;
&lt;li&gt;personas (eg Charles Darwin) and assertions about them&lt;/li&gt;
&lt;li&gt;events (eg the Beagle Voyage) and assertions about them&lt;/li&gt;
&lt;li&gt;groups (eg the Royal Society) and assertions about them&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There are different kinds of things you might do to the resources:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;who can know it &lt;em&gt;exists&lt;/em&gt;?&lt;/li&gt;
&lt;li&gt;who can &lt;em&gt;read&lt;/em&gt; it?&lt;/li&gt;
&lt;li&gt;who can &lt;em&gt;change&lt;/em&gt; it?&lt;/li&gt;
&lt;li&gt;who can &lt;em&gt;delete&lt;/em&gt; it?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;and different levels of access for each of those things:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;global (public)&lt;/li&gt;
&lt;li&gt;group (restricted)&lt;/li&gt;
&lt;li&gt;user (private)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I imagine that at any point, a user will have a default set of permissions in play. For example, they might be generating information that anyone can know exists and can read, but only a restricted set of people can change, and only the user themselves can delete.&lt;/p&gt;

&lt;h2&gt;Searchability&lt;/h2&gt;

&lt;p&gt;I&amp;#8217;m going to side-track for a second here to explain why I&amp;#8217;ve separated out &amp;#8220;knowing something exists&amp;#8221; from &amp;#8220;readable&amp;#8221;.&lt;/p&gt;

&lt;p&gt;Our genealogy application is evidence-based, which means that to say that someone exists you must have a source for that information, be it a birth certificate or a picture or the transcription of an interview. The &lt;em&gt;persona&lt;/em&gt; that you believe to exist on the basis of one source may or may not be the same persona that you believe to exist on the basis of a different source. A separate step is required to link the two personas together.&lt;/p&gt;

&lt;p&gt;The intention is that our application will help you link personas (and events, groups and anything else that might be quoted in more than one piece of evidence) together through searching through other personas (etc) to find those that are similar. They might have similar names, but most of the evidence for similarity will come from similar assertions having been made about them.&lt;/p&gt;

&lt;p&gt;Now say that I have some evidence about Charles Darwin and enter it into the system, and you similarly have some evidence about Charles Darwin that you enter into the system. We both create &amp;#8220;Charles Darwin&amp;#8221; personas based on our evidence. I&amp;#8217;d like it to be the case that, even if we don&amp;#8217;t want the information we&amp;#8217;ve captured about Charles Darwin to be readable by others, we can still make it searchable so that others can find out we&amp;#8217;re working on that person too so that (after some interpersonal negotiation) the two sets of information can be brought together.&lt;/p&gt;

&lt;p&gt;So the &amp;#8220;who can know it exists?&amp;#8221; access is about making your information searchable, even if the details aren&amp;#8217;t readable.&lt;/p&gt;

&lt;h2&gt;Default access&lt;/h2&gt;

&lt;p&gt;As I understand it, in genealogy circles it would be bad form to make any information about living people publicly available. Some would argue that any information that is currently publicly available (on the web, or even off it, in electoral rolls, phone books, wherever) is fair game: if it&amp;#8217;s already &amp;#8220;out there&amp;#8221; then you can use it. But I don&amp;#8217;t agree with that. There&amp;#8217;s a big difference between there being multiple disparate, human-readable sources of information about an individual &amp;#8220;out there somewhere&amp;#8221; and providing a single aggregated public source for all this data in a computer-readable format. In short, I agree with Jeff &amp;#8220;Coding Horror&amp;#8221; Atwood&amp;#8217;s recent post on privacy in which he characterises &lt;a href=&quot;http://www.codinghorror.com/blog/archives/001027.html&quot; title=&quot;Coding Horror: An Inalienable Right to Privacy&quot;&gt;privacy as an inalienable right&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Also, some people make money from doing genealogical research, and it would be short-sighted to prevent people from using the application if they simply wanted to keep what they were doing private for their own reasons.&lt;/p&gt;

&lt;p&gt;So there must be a setting such that information can be kept entirely private, to the extent that only the person who constructed it knows that it exists.&lt;/p&gt;

&lt;p&gt;On the other hand, many of the benefits of Web 2.0 applications come from integrating your own material with other people&amp;#8217;s. Genealogy is a good example of this, because there&amp;#8217;s a distinct thrill in hooking into other people&amp;#8217;s research and discovering other branches of the family.&lt;/p&gt;

&lt;p&gt;So there must be a setting such that information can be made globally available to all and sundry, even to the extent of others changing and deleting it.&lt;/p&gt;

&lt;p&gt;I think the default has to be that the information you enter is completely private. I&amp;#8217;d like to encourage people to share their information, but I think that the way to do that is through social mechanisms (eg the more useful information you share, the more kudos you get) rather than technological ones.&lt;/p&gt;

&lt;h2&gt;User Groups&lt;/h2&gt;

&lt;p&gt;Public and private access aside, there&amp;#8217;s a huge middle ground of access that&amp;#8217;s somehow restricted to a subset of users. I don&amp;#8217;t think I&amp;#8217;m being particularly radical if I say that the current state of the art of social software access control isn&amp;#8217;t great, that the &amp;#8220;restricted&amp;#8221; subset is usually to &amp;#8220;my friends&amp;#8221;, but people don&amp;#8217;t have one social circle: they operate in different spheres, and have a different set of friends/colleagues in each.&lt;/p&gt;

&lt;p&gt;The same is true in our genealogy app. A given user might be working (collaboratively) on several projects, with different teams. For example, I might work on a family tree with my mother for her side of the family and my father for his, with no need for either of them to be aware of the other (unless they overlap, in which case &amp;#8220;searchability&amp;#8221; comes into play).&lt;/p&gt;

&lt;p&gt;So I think it makes sense to use the familiar notion from *nix of &amp;#8220;user groups&amp;#8221;, and assign each item (sources/people/events/groups) to one or more user groups. User groups will probably mostly arise from those working on particular projects, but could be more arbitrary. I&amp;#8217;m thinking:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;moderated (by-invitation) and open (by-subscription) user groups&lt;/li&gt;
&lt;li&gt;private, public and restricted permissions on the user groups&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The other thing I was considering here was having a notion of &amp;#8220;degrees of separation&amp;#8221;. If I entered details about our daughters into a family tree, I might be happy for immediate family, and their immediate family, to see them: a separation of two. I don&amp;#8217;t know whether this kind of network-based user group would be useful or a pain to manage, or even implementable; it&amp;#8217;s just an idea I had.&lt;/p&gt;
</description>
 <comments>http://www.jenitennison.com/blog/node/69#comments</comments>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/34">genealogy</category>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/12">web</category>
 <pubDate>Thu, 17 Jan 2008 21:48:58 +0000</pubDate>
 <dc:creator>Jeni</dc:creator>
 <guid isPermaLink="false">69 at http://www.jenitennison.com/blog</guid>
</item>
<item>
 <title>I am not a number!</title>
 <link>http://www.jenitennison.com/blog/node/65</link>
 <description>&lt;p&gt;Questions of identity and privacy are rather topical at the moment, especially here in Britain where last week a database dump including the names, addresses, bank details of half the country, along with our children&amp;#8217;s names and dates of birth, got &amp;#8220;&lt;a href=&quot;http://www.guardian.co.uk/uk_news/story/0,,2214110,00.html&quot; title=&quot;The Guardian: Personal details of every child in UK lost by Revenue &amp;amp; Customs&quot;&gt;lost in the post&lt;/a&gt;&amp;#8221;.&lt;/p&gt;

&lt;p&gt;So what better time to announce a new online identity metric? My PhD supervisor, &lt;a href=&quot;http://users.ecs.soton.ac.uk/nrs/&quot; title=&quot;Nigel Shadbolt at University of Southampton&quot;&gt;Nigel Shadbolt&lt;/a&gt; is the CTO of &lt;a href=&quot;http://www.garlik.com/&quot; title=&quot;Garlik&quot;&gt;Garlik&lt;/a&gt;, so earlier in the week I got an invite to the launch of &lt;a href=&quot;http://www.qdos.com/&quot; title=&quot;QDOS&quot;&gt;QDOS&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Like the &lt;a href=&quot;http://www.careerdistinction.com/onlineid/step1.html&quot; title=&quot;Career Distinction: Online Identity Calculator&quot;&gt;online identity calculator&lt;/a&gt; that I &lt;a href=&quot;http://www.jenitennison.com/blog/node/38&quot; title=&quot;Claiming your online identity&quot;&gt;wrote about before&lt;/a&gt;, QDOS gives you a score based on your online presence. However, this score isn&amp;#8217;t just based on a Google search. It has four components (which are each represented by a different colour, and are combined to give a very pretty pictorial &amp;#8220;fingerprint&amp;#8221;; check out &lt;a href=&quot;http://qdos.com/celeb/2ff3668e49590f7f8429ff7316c76bb8&quot; title=&quot;QDOS: Tim Berners-Lee&quot;&gt;Tim Berners-Lee&amp;#8217;s QDOS&lt;/a&gt;, for example).&lt;/p&gt;

&lt;!--break--&gt;

&lt;p&gt;The four components are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;popularity&lt;/strong&gt;: &amp;#8220;They say that it’s not what you do that counts, but who you know. It’s the same online – your digital profile is affected by the number of friends and contacts you have.  So the more friends you have on social or business networking sites, the higher your popularity score.&amp;#8221;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;impact&lt;/strong&gt;: &amp;#8220;Your online impact is manifested by your credibility and influence across the web.  If your name is widely referenced, or if what you have to say – whether through quotes or a personal blog – is read by a large group of people, then your impact score will be higher.&amp;#8221;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;activity&lt;/strong&gt;: &amp;#8220;Activity quantifies what you do online – how long you spend there, how many sites you visit, how often you buy and sell things and so on. The more you do, the higher your activity score will be.&amp;#8221;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;individuality&lt;/strong&gt;: &amp;#8220;In DNA terms we may be individual, but online it’s not so easy. Your individuality depends on the uniqueness of your name and other aspects of your identity.  John Smith, civil servant, living in London, would have a low score because there may be a number of them in the city.  But Xavier du Plessis, tightrope walker, living in Hartlepool, would be more unique and therefore more likely to score higher.&amp;#8221;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;From the descriptions of these facets, you can guess some of what they&amp;#8217;re searching: friends lists on Facebook, MySpace, LinkedIn; Google searches and feed statistics; electoral rolls; companies house. The activity metric is probably the most perturbing; like the &lt;a href=&quot;http://norman.walsh.name/2007/11/27/facebook&quot; title=&quot;Norm Walsh: Goodbye, Facebook&quot;&gt;Facebook dispossessed&lt;/a&gt;, I don&amp;#8217;t really want my online sales and purchases to be monitored, and it&amp;#8217;s not immediately apparent how they could get hold of that information &amp;#8212; even eBay identifiers are supposed to be &lt;a href=&quot;http://pages.ebay.co.uk/help/newtoebay/resolving-concerns.html#protectingprivacy&quot; title=&quot;eBay: Trust and Safety: Protecting Privacy&quot;&gt;unrelatable to your personal identity&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;But it&amp;#8217;s all powered by the magic of Semantic Web Technology, so I guess I shouldn&amp;#8217;t be surprised by anything.&lt;/p&gt;

&lt;p&gt;As usual, I found it hard to work out which one of my identities I should use. If you enter &amp;#8220;Jeni Tennison&amp;#8221; in the search box, you&amp;#8217;re told that there&amp;#8217;s one Jeni Tennison with a QDOS score and then get shown the QDOS score of the Coronation Street actor Jane Danson (Q3009). I suppose &amp;#8220;Jeni Tennison&amp;#8221; &lt;em&gt;sounds&lt;/em&gt; similar to &amp;#8220;Jane Danson&amp;#8221; and I&amp;#8217;m sure Jane Danson is more well-known than me &amp;#8212; she has her own Wikipedia page, after all. Perhaps Semantic Web Technologies suffer from foibles we usually associate with slightly deaf elderly relatives.&lt;/p&gt;

&lt;p&gt;My &amp;#8220;Jenifer Tennison&amp;#8221; identity gets translated as &amp;#8220;Jennifer Tennison&amp;#8221; (Q443), who I suppose could be a mis-spelled me, but who knows? There are no automatic links to pages that would help identify the person with that name, so it&amp;#8217;s very hard to work out who it means. It looks like it&amp;#8217;s pretty easy to add links for people, but to do that you have to be sure who the person is, and for most people a name isn&amp;#8217;t going to be enough.&lt;/p&gt;

&lt;p&gt;Of course, adding a postcode should help, but which one to use? We&amp;#8217;ve moved house twice in the past two years, and I imagine a fair amount of data about me is still associated with one or other of my old addresses. Whichever postcode I use, with whichever name I use, I get the same message:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Results for: Jeni Tennison (&lt;em&gt;postcode elided&lt;/em&gt;)&lt;/p&gt;
  
  &lt;p&gt;We have calculated your QDOS based on your name and postcode. To calculate a more accurate QDOS, click on &amp;#8216;Claim your QDOS&amp;#8217; now.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The QDOS score that&amp;#8217;s shown at this point seems to be a semi-random number around the 700-900 mark. My children have roughly the same level of QDOS scores as me. I know the almost-four-year-old spends a lot of time on &lt;a href=&quot;http://www.bbc.co.uk/cbeebies&quot; title=&quot;CBeebies&quot;&gt;CBeebies&lt;/a&gt;, but I think I have a little more online popularity, impact, activity and individuality than her (but maybe that&amp;#8217;s just wishful thinking).&lt;/p&gt;

&lt;p&gt;I did try to claim my QDOS, but:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;We are currently in beta testing phase. If you would like to become one of our first users please leave us your email address and we will send you an invite as soon as we have space available.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;and I haven&amp;#8217;t heard anything in the last 24 hours, so I guess there&amp;#8217;s no space.&lt;/p&gt;

&lt;p&gt;The founders of Garlik (Mike Harris, Tom Ilube and Nigel Shadbolt) can all be found with a simple search. Mike Harris and Nigel Shadbolt have two entries a piece, which implies that the problem of multiple identities isn&amp;#8217;t limited to those of us who commonly abbreviate our True Names. Tom Ilube and Nigel Shadbolt&amp;#8217;s entries are private, which means you can&amp;#8217;t tunnel down into their individual scores (or see any links that would confirm that they were the Tom Ilube or Nigel Shadbolt you were looking for).&lt;/p&gt;

&lt;p&gt;The name &amp;#8220;QDOS&amp;#8221; reminded me of the concept of kudos as described in &lt;a href=&quot;http://www.amazon.co.uk/Algebraist-Iain-M-Banks/dp/1841492299&quot; title=&quot;Amazon: Iain M. Banks: The Algebraist&quot;&gt;Iain M. Banks&amp;#8217; The Algebraist&lt;/a&gt;, where it&amp;#8217;s used as a kind of currency amongst the Dwellers. But unsurprisingly, Garlik aren&amp;#8217;t claiming your QDOS score actually means anything. Rather, they&amp;#8217;re aiming to get people to think about managing their online identity (so they will pay for their online identity management product).&lt;/p&gt;

&lt;p&gt;And I&amp;#8217;m left once again questioning who I really am. Am I Dr Jenifer Tennison the knowledge engineer, or Jeni Tennison the XSLT expert, or Jane Danson the Coronation Street actor? (The latter had actually never occurred to me before, but that&amp;#8217;s the power of QDOS!)&lt;/p&gt;
</description>
 <comments>http://www.jenitennison.com/blog/node/65#comments</comments>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/12">web</category>
 <pubDate>Fri, 30 Nov 2007 23:06:52 +0000</pubDate>
 <dc:creator>Jeni</dc:creator>
 <guid isPermaLink="false">65 at http://www.jenitennison.com/blog</guid>
</item>
<item>
 <title>A sketch: personal APP servers and feed-based web apps</title>
 <link>http://www.jenitennison.com/blog/node/60</link>
 <description>&lt;p&gt;OK, so I can&amp;#8217;t remain a Luddite for long. What&amp;#8217;s a technological solution to the &lt;a href=&quot;http://www.jenitennison.com/blog/node/59&quot; title=&quot;Jeni&#039;s Musings: Posterity&quot;&gt;posterity problem&lt;/a&gt;, in particular in regard to web applications that tuck away all your data in their databases, just waiting to be forgotten?&lt;/p&gt;

&lt;p&gt;Well, what if web applications accepted information as feeds rather than through forms? The original data would be distributed rather than centralised. Web applications would use the web as more than a distribution medium: they would be &lt;a href=&quot;http://www.25hoursaday.com/weblog/2007/10/20/IfYouFightTheWebYouWillLose.aspx&quot; title=&quot;Dare Obasanjo: If You Fight the Web You Will Lose&quot;&gt;&lt;em&gt;of&lt;/em&gt; the web rather than simply &lt;em&gt;on&lt;/em&gt; the web&lt;/a&gt;.&lt;/p&gt;

&lt;!--break--&gt;

&lt;p&gt;How it would work:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Keep your data on your computer (in XML where possible). Use whatever tool you like to create and edit it (by hand, using a dedicated standalone application, using a browser-based application in the manner of &lt;a href=&quot;http://www.tiddlywiki.com/&quot; title=&quot;TiddlyWiki&quot;&gt;TiddlyWiki&lt;/a&gt;, or however), in some common markup language.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Serve your data through a web server that supports &lt;a href=&quot;http://www.ietf.org/rfc/rfc5023.txt&quot; title=&quot;The Atom Publishing Protocol&quot;&gt;APP&lt;/a&gt;, and provide a feed that exposes the data. I&amp;#8217;m not saying that this is easy for &lt;a href=&quot;http://en.wikipedia.org/wiki/Placeholder_name#People&quot; title=&quot;Wikipedia: Placeholder names for people&quot;&gt;Joe Bloggs&lt;/a&gt; to do now, but if we&amp;#8217;re talking about having &lt;a href=&quot;http://dubinko.info/blog/2006/06/04/would-you-run-a-web-server-on-your-phone/&quot; title=&quot;Micah Dubinko:  Would you run a web server on your phone?&quot;&gt;web servers on mobile phones&lt;/a&gt; then surely it&amp;#8217;s not long before having a personal web server is a matter of course, and why not with APP support? Feeds could be generated based on directory structures, or simply created as the main file format for a particular application.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Visit the web application that you want to use and point them at your data feed. They access, store and index your data, and relate it to the other data that they have stored from other people&amp;#8217;s feeds. It&amp;#8217;s their responsibility to keep their database up to date by doing a regular crawl of the feeds they know about; they don&amp;#8217;t have to store &lt;em&gt;all&lt;/em&gt; your data, just the bits that enable them to do their job.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Edit your data through the web application&amp;#8217;s interface; it can update your data for you using APP. (The web application is a APP &lt;em&gt;client&lt;/em&gt;, and you host an APP &lt;em&gt;server&lt;/em&gt;.) That can include adding comments or whatever other community-level annotations you might expect.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Why bother?&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;You have all your data locally (although it might be mirrored elsewhere).&lt;/li&gt;
&lt;li&gt;You can edit your data in whatever tool you want to use, but still use a funky &amp;#8220;rich internet application&amp;#8221; to view it and share it.&lt;/li&gt;
&lt;li&gt;You can provide the same data feed to any number of web applications; you&amp;#8217;re not locked in.&lt;/li&gt;
&lt;li&gt;Because it&amp;#8217;s stored locally, your data is available for viewing and editing even when you&amp;#8217;re offline.&lt;/li&gt;
&lt;li&gt;Because the important parts are cached by a web application, your data is available for viewing and editing even when you&amp;#8217;re away from your normal computer.&lt;/li&gt;
&lt;li&gt;Your friends can access your data directly in a peer-to-peer network.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The obvious problems:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Setup: Web servers aren&amp;#8217;t that easy to set up and maintain at the moment, because they&amp;#8217;re designed for the use of sysadmins who are quite happy hacking text-based configuration files. That could change (look at WiFi router setup nowadays compared to how it was a few years ago).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Security: you might not want everyone to be able to access the data you keep on your personal web server. So you&amp;#8217;ll need a way of assigning user names and passwords to feeds, and only handing those over to web applications that you trust.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Server load: it&amp;#8217;s not so much DoS attacks (which tend to have big juicy targets), but the fact you&amp;#8217;re more likely to experience large volumes of requests if, say, a picture you host suddenly gets popular, and might not be able to respond to them, or might have to start paying heavily for the bandwidth. So sites that offer hosting will still be really useful, particularly for media that&amp;#8217;s (a) large and (b) likely to be embedded in other people&amp;#8217;s pages.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Schemas: you can&amp;#8217;t split creation of XML from processing of XML unless you have some kind of mutual understanding about the markup language that&amp;#8217;s used. This used to seem like a major stumbling block to me, but in fact people seem to be sensible enough to use standards where there are standards, write stylesheets to convert between languages, extend what exists with what they need in more-or-less acceptable ways and generally muddle through without spending years in meetings thrashing out a single consensual model. And Atom and APP are pretty good at supporting extensions and so on that would make that work.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;My hope is that we&amp;#8217;ll get round to trying some of these ideas out in our &lt;a href=&quot;http://www.jenitennison.com/blog/node/54&quot; title=&quot;Jeni&#039;s Musings: Web 2.0 Project&quot;&gt;genealogy-based Web 2.0 project&lt;/a&gt;.&lt;/p&gt;
</description>
 <comments>http://www.jenitennison.com/blog/node/60#comments</comments>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/18">atom</category>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/12">web</category>
 <pubDate>Fri, 19 Oct 2007 22:27:58 +0100</pubDate>
 <dc:creator>Jeni</dc:creator>
 <guid isPermaLink="false">60 at http://www.jenitennison.com/blog</guid>
</item>
<item>
 <title>Posterity</title>
 <link>http://www.jenitennison.com/blog/node/59</link>
 <description>&lt;p&gt;We just had photos taken of the children, and it&amp;#8217;s put me in a reflective mood. &lt;a href=&quot;http://norman.walsh.name/2007/10/15/ajax&quot; title=&quot;Norm Walsh: A little bit of Ajax&quot;&gt;Norm posted&lt;/a&gt; the other day about his experience with information/task management products:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Then it hit me.&lt;/p&gt;
  
  &lt;p&gt;None of them, with the notable exception of Tinderbox, seem to store the data in any open format. I was seriously considering one of these commercial black boxes for an important chunk of the data that drives my day-to-day life. The little voice in my head reacted viscerally when the observation was made: “What the hell you thinking, man! Stop that!”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;!--break--&gt;

&lt;p&gt;I&amp;#8217;ve been experimenting a bit with &lt;a href=&quot;http://en.wikipedia.org/wiki/Getting_Things_Done&quot; title=&quot;Wikipedia: Getting Things Done&quot;&gt;GTD&lt;/a&gt; applications recently, and have the same reaction as Norm. The two tools that I&amp;#8217;ve tried, &lt;a href=&quot;http://www.thinkingrock.com.au/&quot; title=&quot;ThinkingRock: Free GTD software&quot;&gt;ThinkingRock&lt;/a&gt; and &lt;a href=&quot;http://freemind.sourceforge.net/wiki/index.php/Main_Page&quot; title=&quot;FreeMind: free mind-mapping software&quot;&gt;FreeMind&lt;/a&gt;, can both export to an XML format (and import too), which is great, no doubt about it, but you&amp;#8217;ve got to remember to do the exporting to take advantage of it. I know me: I just won&amp;#8217;t do it (even with my GTD tool to remind me to). What I really want is an application that &lt;em&gt;natively&lt;/em&gt; stores its data as XML, preferably in some nicely structured, standard format. So even after I&amp;#8217;ve wiped the original application off my computer, or moved the file from one computer to another, I can still read that file and (with a little XSLT magic) load it into something else.&lt;/p&gt;

&lt;p&gt;This is possibly the biggest thing that bugs me about most of the Web 2.0 applications out there. Of course I&amp;#8217;ve got to be connected to the &amp;#8216;net to use them, and I&amp;#8217;m not all the time (most particularly at tech conferences, it seems). But more important, they&amp;#8217;ve got my data tucked away in their databases, out of reach. Some of them will let me export it, or get at it through an API, but that isn&amp;#8217;t enough for me. I want it here, so that even if the company folds or I forget my login and password, or the key I used to encrypt my personal data from potentially prying eyes&amp;#8230; even &lt;em&gt;years&lt;/em&gt; later, I can still read that file. It&amp;#8217;s part of my history, but I won&amp;#8217;t remember to keep it until it&amp;#8217;s gone.&lt;/p&gt;

&lt;p&gt;I&amp;#8217;m thinking, you see, about some of the things I did on computers years ago. A half-finished book I wrote when I was about 18. The code I wrote for my PhD. Letters from my university days. These aren&amp;#8217;t from &lt;em&gt;that&lt;/em&gt; long ago, but now here I am using radically different software, in a completely different world, and these pieces from my past are lost, irretrievable because of the formats used to save them (as well as the hardware on which they&amp;#8217;re saved: it&amp;#8217;s getting harder to read a floppy nowadays).&lt;/p&gt;

&lt;p&gt;I read &lt;a href=&quot;http://www.amazon.com/Glasshouse-Charles-Stross/dp/0441015085&quot; title=&quot;Amazon: Glasshouse by Charles Stross&quot;&gt;Glasshouse by Charles Stross&lt;/a&gt; a couple of months ago (well worth the read). It&amp;#8217;s set in the far future, and contains the following passage:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&amp;#8220;We know why the dark age happened,&amp;#8221; Fiore continues. &amp;#8220;Our ancestors allowed their storage and processing architectures to proliferate uncontrollably, and they tended to throw away old technologies instead of virtualizing them. For reasons of commercial advantage, some of their largest entities deliberately created incompatible information formats and locked up huge quantities of useful material in them, so that when new architectures replaced old, the data became inaccessible.&lt;/p&gt;
  
  &lt;p&gt;&amp;#8220;This particularly affected our records of personal and household activities during the latter half of the dark age. Early on, for example, we have a lot of &lt;em&gt;film&lt;/em&gt; data captured by amateurs and home enthusiasts. They used a thing called a cine camera, which captured images on a photochemical medium. You could actually decode it with your eyeball. But a third of the way into the dark age, they switched to using magnetic storage tape, which degrades rapidly, then to digital storage, which was even worse because for no obvious reason they encrypted everything. The same sort of things happened to their audio recordings, and to text. Ironically, we know a lot more about their culture around the beginning of the dark age, around old-style year 1950, than about the end of the dark age, around 2040.&amp;#8221;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I&amp;#8217;m looking forward to the end of the dark age. In the meantime, the photos of the children will be hardcopies in the shoebox at the bottom of the wardrobe. And I think I might try the &lt;a href=&quot;http://www.flickr.com/photos/jazzmasterson/sets/48077/&quot; title=&quot;Flickr photoset: Getting Things Done with Index Cards&quot;&gt;index card version&lt;/a&gt; of GTD.&lt;/p&gt;
</description>
 <comments>http://www.jenitennison.com/blog/node/59#comments</comments>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/14">xml</category>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/33">gtd</category>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/12">web</category>
 <pubDate>Wed, 17 Oct 2007 23:08:29 +0100</pubDate>
 <dc:creator>Jeni</dc:creator>
 <guid isPermaLink="false">59 at http://www.jenitennison.com/blog</guid>
</item>
<item>
 <title>Claiming your online identity</title>
 <link>http://www.jenitennison.com/blog/node/38</link>
 <description>&lt;p&gt;I (&amp;#8220;Jeni Tennison&amp;#8221;) manage to score 10/10 on the &lt;a href=&quot;http://www.careerdistinction.com/onlineid/step1.html&quot; title=&quot;Career Distinction: Online Identity Calculator&quot;&gt;online identity calculator&lt;/a&gt;, thanks to having a pretty rare name and there being multiple archives of &lt;a href=&quot;http://www.mulberrytech.com/xsl/xsl-list&quot; title=&quot;XSL-List: Mailing list for XSL&quot;&gt;XSL-List&lt;/a&gt;, to which I was a prolific contributor in my early XML days. (I think I can also claim to be &amp;#8220;Jenni Tennison&amp;#8221;, &amp;#8220;Jenny Tennison&amp;#8221; less so, &amp;#8220;Jenifer Tennison&amp;#8221; is obviously the pre-XML me, and &amp;#8220;Jennifer Tennison&amp;#8221; not me at all, and quite rightly so.)&lt;/p&gt;

&lt;p&gt;Anyway, I&amp;#8217;ve just registered with &lt;a href=&quot;http://claimid.com/&quot; title=&quot;claimID.com&quot;&gt;claimID&lt;/a&gt; to get myself an &lt;a href=&quot;http://openid.net/&quot; title=&quot;OpenID&quot;&gt;OpenID&lt;/a&gt;, to lower the barrier to accessing certain sites. As well as getting a claimID URL (eg &lt;code&gt;http://claimid.com/jenitennison&lt;/code&gt;) to use as an OpenID, you can also use the URL of your own web page as your OpenID identity URL which delegates to the claimID identity URL, by adding links to the claimID server in the head of the web page. (View the source of &lt;a href=&quot;http://www.jenitennison.com/&quot; title=&quot;Jeni&#039;s XML Pages&quot;&gt;my home page&lt;/a&gt; to see what this looks like.) This provides some flexibility in the event that claimID stops functioning: I can move to another OpenID provider without changing my OpenID.&lt;/p&gt;

&lt;!--break--&gt;

&lt;p&gt;ClaimID uses &lt;a href=&quot;http://www.microid.org/&quot; title=&quot;microID&quot;&gt;microID&lt;/a&gt; to verify that the pages that you say you own are really pages that you own. A microID is a hash of your email address and the URI of the page, placed in a &lt;code&gt;&amp;lt;meta&amp;gt;&lt;/code&gt; element in the head of the HTML page (or in the &lt;code&gt;class&lt;/code&gt; attribute of a section of a page). It bothered me for a bit that other people could easily create this hash and put it on their own pages, claiming that I&amp;#8217;d created them. Then I realised that microID&amp;#8217;s for confirming your claim that you own a page, not for discovering who owns a page (the hashing algorithm is non-reversible), and the only person who can claim a given page (at least on any reputable site) using the email &lt;code&gt;jeni@jenitennison.com&lt;/code&gt; is me.&lt;/p&gt;

&lt;p&gt;So now I have to work out how to get Drupal to add the hash into the head of my blog pages, and to enable OpenID and microID for people who post comments.&lt;/p&gt;
</description>
 <comments>http://www.jenitennison.com/blog/node/38#comments</comments>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/12">web</category>
 <pubDate>Wed, 11 Jul 2007 13:24:00 +0100</pubDate>
 <dc:creator>Jeni</dc:creator>
 <guid isPermaLink="false">38 at http://www.jenitennison.com/blog</guid>
</item>
<item>
 <title>Dopplred</title>
 <link>http://www.jenitennison.com/blog/node/31</link>
 <description>&lt;p&gt;&lt;a href=&quot;http://norman.walsh.name/&quot; title=&quot;Norm&#039;s blog&quot;&gt;Norm Walsh&lt;/a&gt; invited me onto &lt;a href=&quot;http://www.dopplr.com/&quot; title=&quot;Dopplr&quot;&gt;Dopplr&lt;/a&gt;, and like a fool I joined. Why, oh why, did I bother? I never leave home. All my &amp;#8220;fellow travellers&amp;#8221; know where I am. And it just makes me jealous knowing they&amp;#8217;re jetting off to&amp;#8230; let&amp;#8217;s see&amp;#8230; Montreal, Sebastapol, San Francisco, Redmond, Barcelona, Amsterdam, Limoges, San Jose, Toulouse, Berlin, Seattle, Monterey, Lahaina, Tokyo, Geneva, Naples, Prague, and so on.&lt;/p&gt;

&lt;p&gt;Maybe I&amp;#8217;ll pretend my immobility is a principled stance against superfluous air travel.&lt;/p&gt;

&lt;!--break--&gt;
</description>
 <comments>http://www.jenitennison.com/blog/node/31#comments</comments>
 <category domain="http://www.jenitennison.com/blog/taxonomy/term/12">web</category>
 <pubDate>Mon, 18 Jun 2007 22:34:19 +0100</pubDate>
 <dc:creator>Jeni</dc:creator>
 <guid isPermaLink="false">31 at http://www.jenitennison.com/blog</guid>
</item>
</channel>
</rss>
