<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>HubLog</title>
    <link rel="alternate" type="text/html" href="http://hublog.hubmed.org/" />
    <link rel="self" type="application/atom+xml" href="http://hublog.hubmed.org/atom.xml" />
    <id>tag:hublog.hubmed.org,2008://2</id>
    <updated>2008-10-09T00:51:14Z</updated>
    <subtitle>DROP ALL DATABASES;</subtitle>
    <author>
        <name>Alf Eaton</name>
        <email>alf@hubmed.org</email>
    </author>
    
    <entry>
      <title>Second Life: &quot;Teleport to Camera Position&quot;</title>
      <link rel="alternate" type="text/html" href="http://hublog.hubmed.org/archives/001759.html" />
      <id>tag:hublog.hubmed.org,2008://2.1759</id>
      <published>2008-10-09T00:06:38Z</published>
      <updated>2008-10-09T00:51:14Z</updated>
      <summary>I wrote a script that, attached to a HUD object in Second Life, lets you teleport to the current camera position. This is useful in combination with a couple of options in the Advanced menu (Ctrl-Option-D to enable): &quot;Limit Select Distance&quot; (disable this to select objects far away), and &quot;Disable Camera Constraints&quot; (enable this to let the camera move independently of the avatar). Turn &quot;Draw Distance&quot; up to full in the Graphics preferences, and you&apos;ll be able to zoom the camera around the landscape easily. Once you&apos;ve found a good location, this HUD script will teleport your avatar there. I...</summary>
      
      <category term="secondlife" label="second life" scheme="http://www.sixapart.com/ns/types#tag" />
      
      <content type="html" xml:lang="en" xml:base="http://hublog.hubmed.org/">
          <![CDATA[<p>I wrote a script that, attached to a HUD object in Second Life, lets you teleport to the current camera position.

<p>This is useful in combination with a couple of options in the Advanced menu (Ctrl-Option-D to enable):
<ul>
<li>"Limit Select Distance" (disable this to select objects far away), and 
<li>"Disable Camera Constraints" (enable this to let the camera move independently of the avatar).
</ul>

<p>Turn "Draw Distance" up to full in the Graphics preferences, and you'll be able to zoom the camera around the landscape easily. Once you've found a good location, this HUD script will teleport your avatar there.

<p>I made a little screencast (no audio) with <a href="http://live.gnome.org/Istanbul">Istanbul</a> to demostrate, but it's hard to see at this size. Here's <a href="http://blog.wikimedia.org/2008/07/31/firefox-31-to-support-open-video-and-audio/">an embedded <tt>video</tt> tag for Firefox 3.1</a> anyway:
<video src="/files/camoport4.ogg"/>
or <a href="/files/camoport4.ogg">download the video file directly</a>.

<p>Send me an email if you'd like a copy of the HUD object with the script attached. It looks like some existing HUD objects&mdash;the <a href="http://www.xstreetsl.com/modules.php?name=Marketplace&file=item&ItemID=690284">DynaCam</a> and <a href="http://www.xstreetsl.com/modules.php?name=Marketplace&file=item&ItemID=908233">HUD Warp</a>&mdash;might also do this (and more).]]>
          
      </content>
    </entry>
    
    <entry>
      <title>Video Encoding Recommendations</title>
      <link rel="alternate" type="text/html" href="http://hublog.hubmed.org/archives/001758.html" />
      <id>tag:hublog.hubmed.org,2008://2.1758</id>
      <published>2008-10-02T13:09:30Z</published>
      <updated>2008-10-02T15:48:04Z</updated>
      <summary>Using 16:9, MPEG4, H.264 video, AAC audio for everything (except FLV for the low resolution Flash). iTunes HD (download) - 720p No data limit. Video: 1280x720, 25fps, High profile. Audio: 128kbps. iTunes SD (download, podcast, bundled with HD) - 480p 1.5Mbps total. iPod preset: 640x360, 25fps, Basic profile. Progressive download (Flash player (high resolution), Second Life, QuickTime player) 512kbps total. Video: 448kpbs, 25fps. 480x272, or letterboxed 480x320 for compatibility. Basic profile. High quality, multi-pass, optimised for download (variable bitrate; optimise for streaming only if using RTSP and need to enforce a steady bitrate), automatic keyframes, Fast Start for internet streaming....</summary>
      
      <category term="video" label="video" scheme="http://www.sixapart.com/ns/types#tag" />
      
      <content type="html" xml:lang="en" xml:base="http://hublog.hubmed.org/">
          <![CDATA[<p>Using 16:9, MPEG4, H.264 video, AAC audio for everything (except FLV for the low resolution Flash).

<h3>iTunes HD (download) - <a href="http://en.wikipedia.org/wiki/720p">720p</a></h3>
No data limit.<br>
Video: 1280x720, 25fps, High profile.<br>
Audio: 128kbps.

<h3>iTunes SD (download, podcast, bundled with HD) - <a href="http://en.wikipedia.org/wiki/480p">480p</a></h3>
1.5Mbps total.<br>
iPod preset: 640x360, 25fps, Basic profile.

<h3>Progressive download (Flash player (high resolution), Second Life, QuickTime player)</h3>
512kbps total.<br>
Video: 448kpbs, 25fps. 480x272, or letterboxed 480x320 for compatibility. Basic profile. High quality, multi-pass, optimised for download (variable bitrate; optimise for streaming only if using RTSP and need to enforce a steady bitrate), automatic keyframes, Fast Start for internet streaming.<br>
Audio: 64kbps. Mono where possible, otherwise stereo.

<h3>Live streaming (Second Life, etc)</h3>
256kbps total.<br>
Video: 192kbps, 320x240 (this is 4:3, for streaming from a webcam/camcorder), 15fps.<br>
Audio: 64kbps, mono.

<h3>FLV (Flash Player (low resolution))</h3>
On2 VP6 encoder?

<hr/>
<p>I'd be very interested in knowing if anyone has improvements to these settings.
]]>
          
      </content>
    </entry>
    
    <entry>
      <title>Maximise OS X windows with a keyboard shortcut</title>
      <link rel="alternate" type="text/html" href="http://hublog.hubmed.org/archives/001757.html" />
      <id>tag:hublog.hubmed.org,2008://2.1757</id>
      <published>2008-09-26T11:30:42Z</published>
      <updated>2008-09-26T13:04:26Z</updated>
      <summary>Save this Applescript in ~/Library/Scripts, assign a keyboard shortcut to it with Quicksilver (Triggers) and hey presto: set resolution to words of (do shell script &quot;/usr/sbin/system_profiler SPDisplaysDataType | grep Resolution&quot;) set {width, height} to {item 2, item 4} of resolution tell application (path to frontmost application as string) set bounds of front window to {0, 22, width, height} end tell Doesn&apos;t seem to work in all applications though... Update: Sven&apos;s solution should work in all applications, even those that don&apos;t support Applescript: set resolution to words of (do shell script &quot;/usr/sbin/system_profiler SPDisplaysDataType | grep Resolution&quot;) set {width, height} to {item...</summary>
      
      
      <content type="html" xml:lang="en" xml:base="http://hublog.hubmed.org/">
          <![CDATA[Save this Applescript in ~/Library/Scripts, assign a keyboard shortcut to it with Quicksilver (<a href="http://docs.blacktree.com/quicksilver/triggers">Triggers</a>) and hey presto:
<pre><code>
set resolution to words of (do shell script "/usr/sbin/system_profiler SPDisplaysDataType | grep Resolution")
set {width, height} to {item 2, item 4} of resolution

tell application (path to frontmost application as string)
  set bounds of front window to {0, 22, width, height}
end tell
</code></pre>

<p>Doesn't seem to work in all applications though...

<p>Update: <a href="http://earthlingsoft.net/ssp/blog/">Sven</a>'s solution should work in all applications, even those that don't support Applescript:
<pre><code>
set resolution to words of (do shell script "/usr/sbin/system_profiler SPDisplaysDataType | grep Resolution")
set {width, height} to {item 2, item 4} of resolution

tell application "System Events"
  tell (first process whose frontmost is true)
    set position of first window to {0, 22}
    set size of first window to {width, height}
  end tell
end tell
</code></pre>]]>
          
      </content>
    </entry>
    
    <entry>
      <title>Query Parameters in URIs</title>
      <link rel="alternate" type="text/html" href="http://hublog.hubmed.org/archives/001756.html" />
      <id>tag:hublog.hubmed.org,2008://2.1756</id>
      <published>2008-09-26T10:04:04Z</published>
      <updated>2008-09-26T10:04:59Z</updated>
      <summary>Does this (slightly bizarre) post on the Google Webmaster Central Blog, about dynamic vs static URLs, mean that Google can parse query parameters and decide that http://example.com/?x=foo&amp;y=bar is the same as http://example.com/?y=bar&amp;x=foo or is it just detecting session IDs? Are those two URIs actually the same?...</summary>
      
      
      <content type="html" xml:lang="en" xml:base="http://hublog.hubmed.org/">
          <![CDATA[Does <a href="http://googlewebmastercentral.blogspot.com/2008/09/dynamic-urls-vs-static-urls.html">this (slightly bizarre) post on the Google Webmaster Central Blog</a>, about dynamic vs static URLs, mean that Google can parse query parameters and decide that
<pre><code>http://example.com/?x=foo&y=bar</code></pre>
is the same as
<pre><code>http://example.com/?y=bar&x=foo</code></pre>
or is it just detecting session IDs?

<p>Are those two URIs actually the same?]]>
          
      </content>
    </entry>
    
    <entry>
      <title>Logout/Login CSRF</title>
      <link rel="alternate" type="text/html" href="http://hublog.hubmed.org/archives/001755.html" />
      <id>tag:hublog.hubmed.org,2008://2.1755</id>
      <published>2008-09-24T12:28:41Z</published>
      <updated>2008-09-24T12:33:37Z</updated>
      <summary>Simon Willison points to a report that discusses &quot;login CSRF&quot; attacks, where &quot;an attacker uses CSRF to log a user in to a site (eg PayPal) using the attackers credentials, then waits for them to submit sensitive information&quot;. I wrote an email about this to Google&apos;s security address a few weeks ago (not having seen this existing discussion) and they never replied, so I guess they don&apos;t think of it as serious (and in fact there&apos;s not much they could do about it anyway - they already display the logged-in account name prominently at the top of the page, which...</summary>
      
      
      <content type="html" xml:lang="en" xml:base="http://hublog.hubmed.org/">
          <![CDATA[<p><a href="http://simonwillison.net/2008/Sep/24/robust/">Simon Willison points to</a> a <a href="http://www.adambarth.com/papers/2008/barth-jackson-mitchell-b.pdf">report that discusses "login CSRF" attacks</a>, where "an attacker uses CSRF to log a user in to a site (eg PayPal) using the attackers credentials, then waits for them to submit sensitive information".</p>

<p>I wrote an email about this to Google's security address a few weeks ago (not having seen this existing discussion) and they never replied, so I guess they don't think of it as serious (and in fact there's not much they could do about it anyway - they already display the logged-in account name prominently at the top of the page, which is all they can really do).</p>

<p><a href="http://alf.hubmed.org/logout.html">Here's an example page</a> which will log a visitor out of their Google account (not sure if this step is even necessary) then log them back in to an account I created, which has Web History enabled. Any subsequent Google searches, if the person doesn't notice that the account they're logged in as has changed, will be visible to anyone who has the password to the false account.</p>

<p>If there was a requirement that a browser is logged out of an account before it can be logged in to a different account on the same site, then you could use security tokens to protect against the 'logout' action, the same as for any other CSRF, but that wouldn't protect anyone who's using the site anonymously (so wouldn't be logged in in the first place). It's more of an annoyance at the moment: for example, if you can get &lt;img src="/logout"&gt; onto a Drupal site, perhaps through a post picked up by the aggregator, then anyone looking at that page will be logged out of the site. Again, the Drupal security team doesn't view this as a problem&hellip;</p>]]>
          
      </content>
    </entry>
    
    <entry>
      <title>Pure Data</title>
      <link rel="alternate" type="text/html" href="http://hublog.hubmed.org/archives/001754.html" />
      <id>tag:hublog.hubmed.org,2008://2.1754</id>
      <published>2008-09-22T20:31:07Z</published>
      <updated>2008-09-24T08:16:23Z</updated>
      <summary>Every year I seem to pick up Pure Data, get a bit further (understand abstractions; right-clicking on an object is a good way to get to the documentation; etc), get frustrated with the interface (it really is horrible) then give up again. This time it was mostly inspired by RjDj (aka Reality Jockey): Pure Data running on the iPhone that takes samples or audio input from the microphone and manipulates them, sometimes using physical feedback. I was interested in reading more background discussion to work out why things are the way they are in Pure Data, so asked the MarkMail...</summary>
      
      <category term="audio" label="audio" scheme="http://www.sixapart.com/ns/types#tag" />
      <category term="puredata" label="puredata" scheme="http://www.sixapart.com/ns/types#tag" />
      
      <content type="html" xml:lang="en" xml:base="http://hublog.hubmed.org/">
          <![CDATA[<p>Every year I seem to pick up <a href="http://puredata.info/">Pure Data</a>, get a bit further (understand abstractions; right-clicking on an object is a good way to get to the documentation; etc), get frustrated with the interface (it really is horrible) then give up again. This time it was mostly inspired by <a href="http://www.rjdj.me/">RjDj</a> (aka Reality Jockey): Pure Data running on the iPhone that takes samples or audio input from the microphone and manipulates them, sometimes using physical feedback.</p>

<p>I was interested in reading more background discussion to work out why things are the way they are in Pure Data, so asked the MarkMail people if they wouldn't mind importing the Pure Data lists, and <a href="http://markmail.org/search/list:at.iem.pd-list list:at.iem.pd-dev">they obliged</a>, so now it's possible to see <a href="http://markmail.org/search/list:at.iem.pd-dev list:at.iem.pd-list from:%22Miller%20Puckette%22%20order:date-backward">all the emails by certain people</a> and get a better idea of the discussions.</p>

<p>Some of the messages are from <a href="http://obiwannabe.co.uk/">Andy Farnell</a>, who's writing a book on Sound Synthesis that sounds like it should be very interesting, when it's finished.</p>

<p>The collaborative <a href="http://en.flossmanuals.net/PureData">Pure Data manual on FLOSS Manuals</a> is really good too.</p>]]>
          
      </content>
    </entry>
    
    <entry>
      <title>Playlist Builder using Freebase Suggest</title>
      <link rel="alternate" type="text/html" href="http://hublog.hubmed.org/archives/001752.html" />
      <id>tag:hublog.hubmed.org,2008://2.1752</id>
      <published>2008-09-22T20:16:52Z</published>
      <updated>2008-09-22T21:26:26Z</updated>
      <summary>One of the most immediate uses of a structured database such as Freebase is as a service that helps with autocompletion while adding structured metadata in the background. Here&apos;s an example: say someone at a radio station or podcast needs to type out a playlist for a recent show. Given a simple form, they can type in the information and, as they do so, Freebase Suggest looks up the prefixes in Freebase and returns suggestions. When one of those entities is selected, its identifier and other metadata are stored. If the entity is an artist, it can then be used...</summary>
      
      <category term="freebase" label="freebase" scheme="http://www.sixapart.com/ns/types#tag" />
      <category term="metadata" label="metadata" scheme="http://www.sixapart.com/ns/types#tag" />
      
      <content type="html" xml:lang="en" xml:base="http://hublog.hubmed.org/">
          <![CDATA[<p>One of the most immediate uses of a structured database such as <a href="http://www.freebase.com/">Freebase</a> is as a service that helps with autocompletion while adding structured metadata in the background.</p>

<p>Here's an example: say someone at a radio station or podcast needs to type out a playlist for a recent show. <a href="http://alf.hubmed.org/playlist-builder/">Given a simple form</a>, they can type in the information and, as they do so, <a href="http://code.google.com/p/freebase-suggest/">Freebase Suggest</a> looks up the prefixes in Freebase and returns suggestions. When one of those entities is selected, its identifier and other metadata are stored.</p>

<p>If the entity is an artist, it can then be used to limit the scope of the autocompletion query for the album name, and the album can then be used to limit the scope of the track name. At the end you can gather all the saved information together and use it to tie those identifiers&mdash;and hence the playlist&mdash;together with the rest of the web (display album covers, similar artists, etc).</p>

<p><a href="http://alf.hubmed.org/playlist-builder/">The playlist builder example given above</a> is currently a bit limited in that it's only using the artist or album name to limit subsequent queries as a "surrounds" parameter (as this is what Freebase Suggest supports, using the <a href="http://www.freebase.com/view/guid/9202a8c04000641f8000000006ad84c9">search API</a>), but <a href="http://lists.freebase.com/pipermail/developers/2008-September/002139.html">in theory</a> it should be straightforward to take the identifiers and do <a href="http://www.freebase.com/tools/queryeditor">a proper MQL query</a>.</p>

<p>I think Freebase regularly imports information from MusicBrainz, but you could also perform the prefix query on the <a href="http://wiki.musicbrainz.org/XMLWebService">MusicBrainz web service</a> itself, via <a href="http://pipes.yahoo.com/hubpipes/mbprefix">a JSON-ifying Pipe</a>. There's no way to limit subsequent queries using MusicBrainz, but it's still useful for autocompletion.</p>]]>
          
      </content>
    </entry>
    
    <entry>
      <title>Web Playlist Tool</title>
      <link rel="alternate" type="text/html" href="http://hublog.hubmed.org/archives/001751.html" />
      <id>tag:hublog.hubmed.org,2008://2.1751</id>
      <published>2008-09-22T19:35:41Z</published>
      <updated>2008-09-22T19:50:51Z</updated>
      <summary>At the Google Developer Day in Wembley Stadium the other day, I found out that the Google Visualisation API contains functions for parsing data returned from the Spreadsheets API, which is really awkward to parse by hand. I also got the callback working which catches notifications when an embedded YouTube video has finished playing. Combining these with a form for submitting rows to a spreadsheet, and you get the beginnings of a collaborative web playlist maker/player. It only really works properly with YouTube videos so far, as they start playing automatically and send notifications when they&apos;re finished, but in theory...</summary>
      
      <category term="media" label="media" scheme="http://www.sixapart.com/ns/types#tag" />
      <category term="playlists" label="playlists" scheme="http://www.sixapart.com/ns/types#tag" />
      
      <content type="html" xml:lang="en" xml:base="http://hublog.hubmed.org/">
          <![CDATA[<p><img src="/files/2008-09-22-web-playlist-form.png" align="right">At the <a href="http://code.google.com/intl/en_uk/events/developerday/2008/home.html">Google Developer Day</a> in Wembley Stadium the other day, I found out that the <a href="http://code.google.com/apis/visualization/">Google Visualisation API</a> contains functions for parsing data returned from the <a href="http://code.google.com/apis/spreadsheets/">Spreadsheets API</a>, which is really awkward to parse by hand. I also got <a href="http://code.google.com/apis/youtube/js_api_reference.html">the callback</a> working which catches notifications when an embedded YouTube video has finished playing. Combining these with a form for submitting rows to <a href="http://spreadsheets.google.com/pub?key=p-hC6jVAyS8myQxCTaZjlFg">a spreadsheet</a>, and you get the beginnings of <a href="http://alf.hubmed.org/webplayer/">a collaborative web playlist maker/player</a>.</p>

<p>It only really works properly with YouTube videos so far, as they start playing automatically and send notifications when they're finished, but in theory any kind of embedded media could receive and send the same signals using <a href="http://developer.mozilla.org/En/DOM/Window.postMessage">window.postMessage</a>.</p>]]>
          
      </content>
    </entry>
    
    <entry>
      <title>Preprints and Categorisation</title>
      <link rel="alternate" type="text/html" href="http://hublog.hubmed.org/archives/001750.html" />
      <id>tag:hublog.hubmed.org,2008://2.1750</id>
      <published>2008-09-18T20:22:46Z</published>
      <updated>2008-09-18T20:17:53Z</updated>
      <summary>A couple of tools cross-posted from Nascent: This tool takes some text (in theory the abstract of a paper you&apos;re thinking of posting as a preprint), sends the text to JANE which recommends journals that publish similar content, then looks up each of those publishers in ROMEO to find out their preprint policies. Those publishers which are happy to accept papers already available as preprints will show up in green. This tool performs a comparison of the semi-automated/semi-manual matching of MeSH terms to papers in PubMed (I believe they&apos;re suggested by UMLSKS then manually curated) with the similarly auto-manual detection...</summary>
      
      
      <content type="html" xml:lang="en" xml:base="http://hublog.hubmed.org/">
          <![CDATA[A couple of tools cross-posted from <a href="http://blogs.nature.com/wp/nascent/2008/09/a_bundle_of_web_tools.html">Nascent</a>:

<ul>
<li><a href="http://alf.hubmed.org/preprints/">This tool</a> takes some text (in theory the abstract of a paper you're thinking of posting as a preprint), sends the text to <a href="http://www.biosemantics.org/jane/">JANE</a> which recommends journals that publish similar content, then looks up each of those publishers in <a href="http://www.sherpa.ac.uk/romeo/">ROMEO</a> to find out their preprint policies. Those publishers which are happy to accept papers already available as preprints will show up in green.

<li><a href="http://alf.hubmed.org/categorise/">This tool</a> performs a comparison of the semi-automated/semi-manual matching of MeSH terms to papers in PubMed (I believe they're suggested by <a href="http://umlsks.nlm.nih.gov/">UMLSKS</a> then manually curated) with the similarly auto-manual detection of Wikipedia terms in abstracts by <a href="http://gopubmed.org/">GoPubMed</a> and the corresponding categories applied to those papers in Wikipedia. <a href="http://muddyboots.rattleresearch.com/">Rattle Research</a> and <a href="http://www.bbc.co.uk/blogs/radiolabs/2008/06/wikipedia_plus_lucene_morelikethis.shtml">Chris Sizemore</a> at the BBC have done lots of interesting work on this kind of thing with news articles.
</ul>]]>
          
      </content>
    </entry>
    
    <entry>
      <title>Creating a Freebase data view</title>
      <link rel="alternate" type="text/html" href="http://hublog.hubmed.org/archives/001749.html" />
      <id>tag:hublog.hubmed.org,2008://2.1749</id>
      <published>2008-09-18T19:31:27Z</published>
      <updated>2008-09-19T01:14:40Z</updated>
      <summary>Task: Create an ordered list of the highest pubs in England. First, on the Freebase Type page for architecture/building, I selected &apos;Add new building&apos; and entered the name &apos;Tan Hill Inn&apos;, which created a Topic page for that building. I filled in the description (adapted from a Wikipedia page), then selected &apos;Add a type&apos;, chose &apos;Building&apos; (in Architecture), then added &apos;Public house&apos; as its &apos;Building function&apos;. This action also automatically added &apos;Public house&apos;, previously only known as a &apos;Book subject&apos;, to the list of topics known as &apos;Building function&apos;. Then I selected &apos;Add a Type&apos; again, chose &apos;Location&apos; and filled...</summary>
      
      <category term="data" label="data" scheme="http://www.sixapart.com/ns/types#tag" />
      <category term="freebase" label="freebase" scheme="http://www.sixapart.com/ns/types#tag" />
      
      <content type="html" xml:lang="en" xml:base="http://hublog.hubmed.org/">
          <![CDATA[<p>Task: Create <a href="http://www.freebase.com/view/user/freebass/default_domain/views/the_highest_pubs_in_england">an ordered list of the highest pubs in England</a>.</p>

<p>First, <a href="http://www.freebase.com/view/architecture/building">on the Freebase Type page for architecture/building</a>, I selected 'Add new building' and entered the name 'Tan Hill Inn', which created <a href="http://www.freebase.com/view/guid/9202a8c04000641f800000000919d05d">a Topic page for that building</a>.</p>

<p>I filled in the description (adapted from a Wikipedia page), then selected 'Add a type', chose 'Building' (in Architecture), then added 'Public house' as its 'Building function'. This action also automatically added 'Public house', previously only known as a 'Book subject', to <a href="http://www.freebase.com/view/architecture/building_function">the list of topics known as 'Building function'</a>.</p>

<p>Then I selected 'Add a Type' again, chose 'Location' and filled in the 'latitude' and 'longitude' properties of the 'Geolocation' field using data from <a href="http://www.getlatlon.com/">Get Lat Lon</a>.</p>

<p><a href="http://hublog.hubmed.org/files/Get Lat Lon_1221746151607.png"><img src="http://hublog.hubmed.org/files/Get Lat Lon_1221746151607-tm.jpg" width="600" height="702" alt="Get Lat Lon" /></a></p>

<p>I also filled in 'elevation' with data from Wikipedia (in metres) and set the 'Contained by' field to 'England' (the country).</p>

<p><a href="http://hublog.hubmed.org/files/Tan Hill Inn : Freebase_1221746105014.png"><img src="http://hublog.hubmed.org/files/Tan Hill Inn : Freebase_1221746105014-tm.jpg" width="600" height="293" alt="Tan Hill Inn" /></a></p>

<p>Now all the information about this pub was filled in and its location was showing on the map, I did the same for a second building.</p>

<p>At this point, it was time to go back to <a href="http://www.freebase.com/view/architecture/building">the architecture/building page</a> and start filtering. I added filters for 'Building function = Public house', 'Contained by = England' and 'Geolocation/Elevation is not empty', then added 'Contained by' and 'Geolocation/Elevation' columns to the table.</p>

<p><a href="http://hublog.hubmed.org/files/Building : Freebase_1221746726515.png"><img src="http://hublog.hubmed.org/files/Building : Freebase_1221746726515-tm.jpg" width="600" height="369" alt="Building : Freebase" /></a></p>

<p>Finally I sorted the results by 'Elevation', descending, and <a href="http://www.freebase.com/view/user/freebass/default_domain/views/the_highest_pubs_in_england">saved this view under my Freebase domain</a>.</p>

<p><a href="http://hublog.hubmed.org/files/The Highest Pubs in England : Freebase_1221747204694.png"><img src="http://hublog.hubmed.org/files/The Highest Pubs in England : Freebase_1221747204694-tm.jpg" width="600" height="332" alt="The Highest Pubs in England : Freebase" /></a></p>

<p>What I like about the saved view is that anyone can come along and add a missing item to the view, and all the filter fields will be automatically filled in - they'll just have to add the name and the elevation.</p>]]>
          
      </content>
    </entry>
    
</feed>
