Introducing SemantiNet’s API

January 16th, 2011, By eitanb

We’re excited to release an alpha version of our new API. This is the first post in a series of blog posts, describing ways you can rapidly build impressive data intensive applications.
SemantiNet’s new API is designed for easy querying of a selected collection of useful Web Services, Wikipedia, Linked-Data, and the unstructured web. The API also provides a flexible templating language, for easy creation of semantic mashups and data intensive applications, directly from your browser.

To see what we mean – let’s start with a very simple querying of DBPedia (click the link to see this query in the playground):
The API returns a node that represents Bar Refaeli in DBPedia, with some of the data that is connected to this node. Quite simple so far. So, let’s devise a template that takes this node, and present information from this node, as an HTML:
<html>
  <body>
    <!-- label provides a nice representation of the node's name -->
    <h1><%= label%/></h1>
    <!-- personage calculates the age, based on information we have from the birth-date and the current time -->
    Age: <%= personage/round(1)%/><br/>
    <!-- We want a nice representation of the birthPlace, so we take dbpedia-owl:birthPlace/label -->
    Born in: <%= dbpedia-owl:birthPlace/label%/><br/>
    <!-- Take the first image returned from YahooBoss's images search -->
    <img src="<%= yahooboss:images/first%/>" width="100px">
  </body>
</html>
Click here to see it live in the playground


What’s returned from a couple of examples:

Nice. We’ve seen how to query both LinkedData (from DBPedia in this case) and the web (through Yahoo Boss) – to get the picture.
Just to get a feeling of what’s possible, let’s play with these models’ place of birth.
This query, will return the 3 birth places:
/multy('dbpedia:Carolyn_Murphy','dbpedia:Marisa_Miller','dbpedia:Bar_Refaeli')/dbpedia-owl:birthPlace
Using this template – we will take the places, and put them on a map:
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=ABQIAAAAkMzYJpqzT4X0Hj0W-xMFIhTkBdPb1_Y7shJWGA4g7zFU4DbUwRSRxPPUjb7uuS8U3pAZlGMUGn5Vww" type="text/javascript"></script>
  </head>
  <body>
    <div id="mapdivid" style="float: left; height: 100%; width: 100%"></div>
    <script type="text/javascript">
    if (GBrowserIsCompatible()) {
     var map = new GMap2(document.getElementById("mapdivid"));
     map.setCenter(new GLatLng(0, 0), 1);
     <%foreach .[location]%>
       map.addOverlay(new GMarker(new GLatLng(<%= /location/geo:lat%/>, <%= /location/geo:long%/>),{title:"<%= /label%/>"}));
     </%foreach%>
    }
    </script>
  </body>
</html>
Check it out “live” here. In this example, we iterate over the birthplaces, using a ‘foreach’ directive, and for each place – we take the location’s latitude, longtitude and label.

The following query, will return a list of female models, include only those that we have data about their height, and order them by their height:
category:Female_models/deepinstances(3)[dbpedia-owl:height]/orderdesc(dbpedia-owl:height)
To show a table of the tallest 10 models, we’ll use this template:
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <table style="float: left; clear: both">
      <%foreach ./take(10)%>
        <tr>
          <td><img width='100px' src='<%= /yahooboss:images/first/%>'
          onerror='this.onerror = null; this.src="http://static1.headup.com/images/placeholder.jpg"' />
          </td>
          <td><%= /label%/><br/>
          <%= /dbpedia-owl:height%/>
          </td>
        </tr>
      </%foreach%>
    </table>
  </body>
</html>
Check it out in the playground here, or – for a more generic version of this table, check this out:

Scraping pages from accross the web – is quite sweet as well. Let’s do a call to this page:
http://sportsillustrated.cnn.com/2010_swimsuit/models/
And now, let’s scrape the images from this page, using SemantiNet’s API:
/fetch('http://sportsillustrated.cnn.com/2010_swimsuit/models/')/htmlxpath('//div[@class="cnnIndexList"]//img/@src')/*
This gets us a list of photos. And if we put them in this template:
<%foreach .%>
  <img src='<%= .%/>'/>
</%foreach%>
What this query results is a scraping of the site’s images:


In the following blogposts we’ll write about more characteristics of the SemantiNet’s API and language:

  • Extensible – anyone can easily extend this language (we internally call it CSlang), building on top of existing predicates
  • A rich NLP library for Entity extraction, contextual disambiguation, access to WordNet
  • Powerful first-class-citizens of the language – graph querying primitives, lambda calculus
  • Very short development feedback loop
  • Piping
  • Fuzzy ontology support – freeform queries allow quick trials and discovery
  • Inference rules one-liners
  • Enrich the ontholgy based on web-links
  • Data mining primitives – map-reduce, grouping, histograms, order-by, max on lists

Want to get started? Take a spin in the playground, and check out our wiki: http://wiki.headup.com/index.php?title=Knowledge_Graph_API

Headup v1.10 – The Beta: New widgets, Topic Pages & Usage Analytics

March 24th, 2010, By talk

During my time here at Headup I’ve come to realize one of the things that characterizes our progress as a startup company, is that it isn’t linear.

In other words, similar spans of time don’t necessarily manifest comparable progress.

Whereas for certain periods the work we invest is manifested in minor evolutions, other times our toil manifests itself as a major revolution.

Today marks the fruition of such a period, & what a revolution it is…

Headup – The News

I’m happy to announce the release of Headup v 1.10 which marks the launch of our official Beta & introduces the following improvements & features:

  1. Headup Snippet – The new slim Headup widget.
  2. Headup Topic Pages – Topic Pages you can customize to display your content & match your design.
  3. Analytics –  Now you can follow exactly how your widget is performing & what are the most popular topics on your site.

Please note this is a Beta, which means we’re still tweaking and testing these features. We’d love for you to try them out, and would appreciate any, and every feedback you have for us. If you run across something you feel is broken or silly, please let us know, so we can fix it.

Thanks!

Headup Snippet – A New Widget is Born

The new Headup “Snippet” is a lightweight widget that displays a short summary & related articles from your site for the topics it identifies in your content. It’s the default widget on this blog & it looks like this:

Headup Snippets - Introducing the Diet Widget

Headup Snippets - Introducing the Diet Widget

To activate Snippet widgets instead of your default Tabbed widget enter your dashboard & select “Snippet” from “Widget Mode” options in the new “General Settings” box:

Want Snippets? Choose your widget type

Want Snippets? Set your Widget Mode to "Snippet"

Snippet widgets are linked to Headup Topic Pages via the “View Topic” button

Headup Topic Pages – All the Freshest Content about your Topics in 1 place

Headup Topics Pages show in-depth dynamic coverage for your topics & offer related activities & topic-to-topic browsing. They can be accessed via Snippet widgets or directly by setting your “Widget Mode” to “Link”.

All the Freshest Content about your Topics in 1 place

All the Freshest Content about your Topics in 1 place

Topic & Usage Analytics

By popular demand we’ve added a brand new “Analytics” tab to the publisher dashboard. Use it to learn how many times your visitors use Headup, for how long, & which topics are the most popular on your site.

Topic & Usage Analytics

Topic & Usage Analytics

A Word of Thanks

As you can see over these past few months we’ve been working intensively on improving Headup & developing exciting new features for your enjoyment, however hadn’t it not been for a wonderful & select group of supportive bloggers, some of which you’ve met here in our weekly blogger interviews, we wouldn’t have had the opportunity to check these new features &test their value.

Before I sign off I’d like to take the opportunity to say a heartfelt “Thank You” to Dave, David & Ruhani for all their support. Thanks guys! We couldn’t have pulled this one off & launched our Beta without you…

Headup Topic Pages – A new & exciting way to surface the topics you blog about

February 25th, 2010, By talk

It’s been a big week here at Headup. At long last, after months of hard work, we’ve finally unveiled our Headup “Topic Pages“.

What are Headup topic pages?

Headup topic pages are a new and exciting way to help your audience explore the topics you cover on your blog.

How are they generated?

Like the Tabbed widgets you’re familiar with, the new Topic Pages are generated automatically for each of  the topics Headup identifies in your content. They include all the data you’re familiar with from the Tabbed widgets, and much much more.

How are they displayed?

Headup Topic Pages can be linked and launched directly from your content, or connected via a “Snippet” widget, like the one we’ve installed on this blog (mouse-over the annotations in the demo text below to launch a Snippet).

“…For those of you who simply can’t get enough of Tim Burton, we have another treat from Alice in Wonderland for you. We’ve been given some new images which show, process by process how a piece of imagery goes from being filmed to being put onto a finished piece of film. To help demonstrate this, we’ve got progression art for The Knave of Hearts, The White Rabbit and the Red Queen. Alice in Wonderland is to be released by Disney 5th March and the global premier is set to take place in London with The Prince of Wales in attendance…” (Source: heyuguys.co.uk)

To access a Topic Page click the “More” link at the end of the summary in the snippet widget:

Clicking "More" launches a Topic Page

Clicking "More" launches a Topic Page

How can they be customized?

Headup Topic Pages can be customized to match your blog’s branding and show your blog’s articles as “Related Articles”.

The Headup publishers’ dashboard enables you to configure your Topic Pages to show your blog’s logo and coloring in the Topic Page header and display your own posts, or posts from any domain you choose, in the Related Articles section:

Topic Pages can be customized to match your branding & show your related posts (click to view full size)

We’d love to hear your feedback!

Initially available only to a select group of Alpha testers, we intend to release this new feature as an option for all Headup users VERY soon, and are eager to hear your feedback so give us a shout out @headup on Twitter, or leave a comment below and tell us what you think…

Major Music Update! Headup version 1.04 release notes

July 9th, 2009, By talk

Organize your music and create playlists NOW with the new ‘Headup Music’!

The Headup Music Player

The Headup Music Player

This new release of Headup was dedicated mostly to improving Headup’s included music player.

Get your update now

Besides giving the player a shiny new skin we’ve improved functionality so that now it enables you to organize your music and create playlists
…oh, and we did some with bug fixes too… ; )

ROCK ON!

Release notes

  • Compatible with the new Mozilla Firefox 3.5.
  • You can now customize the design for highlighted terms.
  • Enhanced special highlights.

New Site

Headup has a brand new website that’s been live for just under two weeks.
Check it out ! We’d love to hear your feedback

Older Posts »