The GeoOnion ("go:") RDF/XML vocabulary provides a number of properties which relate spatial things together based on their distance in metres.

For example, two things are go:within_3_power_7_metres of each other if the distance between them is 2187 Metres or less ( (3^7 = 2187, ie. 3*3*3*3*3*3*3).

See also: RestaurantReviews, RdfCalendar, GeoInfo for related work.

These properties can be used, for example, to note that a restaurant is go:within_3_power_5_metres (ie. 243 M) of some point specified with lat/long/alt properties.

The table reproduced below shows a summary of the main proposed content of the GeoOnion vocabulary, ie. 19 circles based on powers of three. Other scales could be added if useful.

See the powers of 10 site for a more visual exploration of similar ideas. 10 didn't quite work for us; the steps were too large.

As Isaac Asimov found when he wrote The Measure of the Universe; instead he used powers of the square root of 10, rounded to 3 significant figures -- 1 m, 3.16 m, 10 m, 31.6 m, etc. (These are half-powers of ten.) --deltab

I like deltab's suggestion, as the circles sync up with powers of 10 every other step. If more precision is wanted, 1/3 powers of ten might be good (1, 2.15, 4.64, 10, 21.5, 46.4, 100). It's similar to the coinage scale, also. In suppor t of the coinage scale, human glosses might be nickel, dime, etc, although it's true that international issues arise. --bryce

The challenge was to come up with an appropriate scale. The current proposal is to use powers of three. In 19 circles we can get from the space of interpersonal interactions to the interplanetary (if you count the moon as a planet). So the scale is socially rather an interesting one, giving several measures that correspond to different travel-able distances.

Context and notes :

I think the levels should be more descriptively named, eg go:town, go:country, go:pace, go:walking_distance, etc. I know these are a vague, but we're talking about an order of magnitude. guest

The GeoOnion proposal: Powers of three

name

circle

Metres

Kilometres

Miles

go:within_3_power_0_metres

0

1

0.001

0.001

go:within_3_power_1_metres

1

3

0.003

0.002

go:within_3_power_2_metres

2

9

0.009

0.006

go:within_3_power_3_metres

3

27

0.027

0.017

go:within_3_power_4_metres

4

81

0.081

0.05

go:within_3_power_5_metres

5

243

0.243

0.151

go:within_3_power_6_metres

6

729

0.729

0.453

go:within_3_power_7_metres

7

2187

2.187

1.358

go:within_3_power_8_metres

8

6561

6.561

4.074

go:within_3_power_9_metres

9

19683

19.683

12.223

go:within_3_power_10_metres

10

59049

59.049

36.669

go:within_3_power_11_metres

11

177147

177.147

110.008

go:within_3_power_12_metres

12

531441

531.441

330.025

go:within_3_power_13_metres

13

1594323

1594.323

990.075

go:within_3_power_14_metres

14

4782969

4782.969

2970.224

go:within_3_power_15_metres

15

14348907

14348.907

8910.671

go:within_3_power_16_metres

16

43046721

43046.721

26732.014

go:within_3_power_17_metres

17

129140163

129140.163

80196.041

go:within_3_power_18_metres

18

387420489

387420.489

240588.124

An example in RDF/XML (hmm what properties to use):

This says, "There is an image diner.jpg that is a depiction of a restaurant that is within 9 (ie. 3^2) metres of (some point specified precisely with lat/long/alt)."

<rdf:RDF  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
          xmlns:wn="http://xmlns.com/wordnet/1.6/"
          xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
          xmlns="http://xmlns.com/foaf/0.1/"
          xmlns:go="http://www.w3.org/2003/01/geo/go#">
  <Image rdf:about="diner.jpg">
    <depicts> 
      <wn:Restaurant>
        <name>Jon's Diner</name>
        <go:within_3_power_2_metres> <!-- 3^2=9 -->
          <geo:Point geo:lat="39.2524" geo:long="-76.7113" geo:alt="0"/> 
          <!-- try to map it using http://www.mapquest.com/maps/latlong.adp -->
        </go:within_3_power_2_metres>
      </wn:Restaurant>
    </depicts>
  </Image>
</rdf:RDF>

An example usage in N3/RDF syntax (c.f. ShorthandRDF):

<DanC> how about writing some examples?
<DanC>  :hotelWhereImStaying :within100metersOf :sandwichShop . # walking distance

More use cases:

Todo list:

Quick Comment - how about more increments, but keeping it logarithmic, maybe 1, 2, 5, 10, 20, 50 etc.. like the UK's coinage system? - Jim Hughes I tried that originally Jim, but was concerned that there'd be a need to memorise the increments and they might be counter-intuitive in countries where they didn't shadow a currency scale. --DanBri

This series comes from the powers of ten, with half of and twice each power too: 0.5, 1, 2; 5, 10, 20; 50, 100, 200; etc. (The UK's decimal currency system originally also included a half penny.) I think the series may have used with the early metric system. --deltab

Quick Comment 2: I think that using powers of 3 is a bit bizarre. It lies between the aesthetically pleasing but very non-decimal use of e (2.718281828459045...) which has masses of precedent, to the more pragmatic use of 3,10,30,100 or 10,20,50,100, etc . I note that e3 is about 20. The great advantage of anything which has 103 or 210 in it is the availability of the k, M, G, T suffixes, as in "within 30km of". -- TimBernersLee

A contextual scale makes more sense... how rich is the data density in my surroundings? how much is there to see in my immediate environment? Am I in lower manhattan or baja calfornia? an arbitrary scale like google pagerank is allowed to sort out a sensible exponentiation on the fly. the human visual environment and spatial sense of proximity is different. you can look at http://www.godseye.com/ and zoom from city height down to the front of my former house pretty comfortably (no, sorry, you can't zoom closer..) but as per powersof10, space totally sucks at a 4x interval, at least as we're able to view it. --doppelganger

Previous notes etc left here for now, maybe could lose later...? --DanBri

First draft of onion scale:

No decimetre? --deltab

GeoOnion (last edited 2006-07-12 19:13:28 by TimBernersLee)