GeoOnion
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 :
- the equator is 40,075.16 km.
- the moon is 384,400 km away from Earth (from centre or surface?)
- each GeoOnion property is an owl:SymmetricProperty, since "P(x,y) iff P(y,x)" holds.
- each property is a sub-property of all the larger GeoOnion properties, since if something is within (inside, no further than, less than...) 100 metres of something else, it is also within 10, 1 etc.
- is this more confusing than it need be? I found I kept thinking about it backwards. would different wording help? --DanBri
- should we name the properties 'within_3_power_n_metres', or similar: 'below_3_pwr_n_metres', etc.?
- The namespace URI will be http://www.w3.org/2003/01/geo/go# (schema needs autogenerating)
- How high is the sky?
- use of the geo: vocab often neglects the altitude measure. Is this going to cause problems?
- utilities: DanBri's onion.rb script is used to generate the scales and conversions (and eventually, a schema).
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 |
go:within_3_power_0_metres | 0 | 1 | 0.001 |
go:within_3_power_1_metres | 1 | 3 | 0.003 |
go:within_3_power_2_metres | 2 | 9 | 0.009 |
go:within_3_power_3_metres | 3 | 27 | 0.027 |
go:within_3_power_4_metres | 4 | 81 | 0.081 |
go:within_3_power_5_metres | 5 | 243 | 0.243 |
go:within_3_power_6_metres | 6 | 729 | 0.729 |
go:within_3_power_7_metres | 7 | 2187 | 2.187 |
go:within_3_power_8_metres | 8 | 6561 | 6.561 |
go:within_3_power_9_metres | 9 | 19683 | 19.683 |
go:within_3_power_10_metres | 10 | 59049 | 59.049 |
go:within_3_power_11_metres | 11 | 177147 | 177.147 |
go:within_3_power_12_metres | 12 | 531441 | 531.441 |
go:within_3_power_13_metres | 13 | 1594323 | 1594.323 |
go:within_3_power_14_metres | 14 | 4782969 | 4782.969 |
go:within_3_power_15_metres | 15 | 14348907 | 14348.907 |
go:within_3_power_16_metres | 16 | 43046721 | 43046.721 |
go:within_3_power_17_metres | 17 | 129140163 | 129140.163 |
go:within_3_power_18_metres | 18 | 387420489 | 387420.489 |
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:
- FoafMobile apps, doubtless including dating etc.
- drop down forms on web sites (useful to save typing, eg. on mobile devices).
Todo list:
- find out if Americans spell Metre wrong (you can count on it. --bryce)
- svg / graphical representation on a map would be cool - Have a look @ http://mk.mphase.net/www/knowhow/SVG/PHP/map.php?lat=52.54&lon=13.135&onion=10 it works fine for onions from 7 to 14, but only in the northern/eastern hemisphere for now... --Mike)
- human-friendly gloss for each (personal space / room / building / street / neighbourhood / city / etc?)
- some sample data (w/ GPS etc)
- try it w/ the wireless ontology? (@ref?)
- look on daml.org for other, doubtless fancier, ways of expressing the same thing
- can we thinking of interesting, plausible etc names for each of the 3^n circles? (colours? other UI conventions?)
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:
- 1mm
- 1cm
- 1m
- 10m
- 100m
- 1000m (1km)
- 10000m (10km)
- 100,000m (100km)
- 1,000,000m (1000km)
- 10,000,000m (10,000km)
No decimetre? --deltab