I have some information I'd like to serve via a RESTful web service,
and after a bunch of reading I think it would be really cool to make a
machine-readable web service and a human-readable web site that are one
and the same, using XHTML + Microformats.
<br><br>Not surprisingly, there does not appear to be a microformat
that fully captures the information I want to serve. hAtom might be
usable for the timestamped-item nature of it (I haven't looked it over
yet) and geo is a start, but I will have to build upon geo.
<br><br>I could go and write my own, and describe it using XMDP. In fact, I probably will.<br><br>But
before going off and doing that, I wanted to share my need with the
microformats community and ask if anyone else has needs along these
lines. If there is interest, maybe we could design a new microformat.
If not, maybe somebody can at least help or give advice?
<br><br>Essentially, I want to publish geographic point locations that
have associated uncertainty information. geo has no notion of
uncertainty. It doesn't even have altitude, but I noticed there is a
proposed extension to add altitude, so maybe I can use that.
<br><br>There are, of course, many ways one might wish to express
uncertainty. You could attach an "uncertainty" property to the latitude
value and another to the longitude value, to represent absolute floor
and ceiling values. Or you could attach a specific "floor" and
"ceiling" property to each. Or you could attach similar values to
define a 1-sigma probability region.
<br><br>So far, that makes for a pretty simple idea for a microformat
- adding uncertainty to any kind of numerical value. Unfortunately, my
needs are a little more complex than that.<br><br>For a geospatial point (lat, lon, alt), I want to define an uncertainty
<span style="font-style: italic;">region</span>. This means I can't
treat each numerical value separately. What I actually have for each
point is a covariance matrix - a 3x3 symmetric matrix (it has 6 unique
values, but is commonly displayed as a 3x3 square with nine elements).
<br><br>The
eigenvectors of this matrix give the axes of an ellipsoid in space, and
the eigenvalues give unit lengths for their respective eigenvectors.
The one-sigma probability region for a point is centered at the
latitude, longitude and altitude given for that point, with the
orientations of the axes given by the eigenvectors and the
half-axis-lengths given by the eigenvalues. Also, given the covariance
matrix, a user can construct a probability region to any sigma (or %
confidence, to put it another way) by choosing a scaling factor to
apply to the eigenvalues.
<br><br>So in other words, we're talking about uncertainty in more than one dimension, as expressed by a covariance matrix.<br><br>Does
anyone know of work along these lines in the microformats world? Would
it be better to try to generalize this concept to apply uncertainty to
a range of other microformats? Or would it be better to stick to the
case of geographic locations?
<br><br>In the geographic case, I've figured out how to construct KML
that draws the error region I described above in Google Earth as a
translucent bubble, so that is already one cool application of it.<br><br>Thanks for reading. I would love to hear people's thoughts on how to design such a format!
<br><span class="sg"><br>Charlie</span>