OSM 0.1 → 0.2
raw patch · 18 files changed
+35/−45 lines, 18 filesdep +hxt-extrasPVP ok
version bump matches the API change (PVP)
Dependencies added: hxt-extras
API changes (from Hackage documentation)
- Geo.OSM.Util: showPickled :: (XmlPickler a) => Attributes -> a -> String
Files
- Example.hs +0/−17
- Geo/OSM/Bound.hs +1/−1
- Geo/OSM/Bounds.hs +1/−1
- Geo/OSM/Member.hs +1/−1
- Geo/OSM/MemberType.hs +1/−1
- Geo/OSM/NWRCommon.hs +1/−1
- Geo/OSM/Nd.hs +1/−1
- Geo/OSM/Node.hs +1/−1
- Geo/OSM/NodeWayRelation.hs +1/−1
- Geo/OSM/OSM.hs +1/−1
- Geo/OSM/Relation.hs +1/−1
- Geo/OSM/Tag.hs +1/−1
- Geo/OSM/Util.hs +0/−10
- Geo/OSM/Way.hs +1/−1
- MountBarney.osm too large to diff
- OSM.cabal +6/−6
- etc/Example.hs +17/−0
- etc/MountBarney.osm too large to diff
− Example.hs
@@ -1,17 +0,0 @@-import Geo.OSM---- Return all nodes tagged as camp-sites (tourism=camp_site) in the give OSM file.-campSites :: FilePath -> IO [Node]-campSites f = let p = filter ("tourism" `hasTagValue` "camp_site") . (nodes =<<)- in fmap p (runX (xunpickleDocument (xpickle :: PU OSM) [(a_remove_whitespace, v_1)] f))----{----*Main> campSites "MountBarney.osm"-[<node lat="-28.309999" lon="152.460006" id="316587114" changeset="108027" user="Spindoc Bob" uid="11037" timestamp="2008-12-04T11:00:06Z"><tag k="name" v="Koreelah Creek Campground - Koreelah NP"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.2131914" lon="152.4264518" id="596132847" changeset="3406101" user="Tony Morris" uid="66376" timestamp="2009-12-19T11:19:14Z"><tag k="name" v="Emu Creek"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.389999" lon="152.61" id="316587113" changeset="108027" user="Spindoc Bob" uid="11037" timestamp="2008-12-04T11:00:05Z"><tag k="name" v="Woodenbong Campground"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.2819309" lon="152.690921" id="440615858" changeset="3405819" user="Tony Morris" uid="66376" timestamp="2009-12-19T10:37:58Z"><tag k="name" v="Rum Jungle"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.2812388" lon="152.6916212" id="596096271" changeset="3405991" user="Tony Morris" uid="66376" timestamp="2009-12-19T11:02:19Z"><tag k="name" v="Old Hut Site"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.2961173" lon="152.7150912" id="596098699" changeset="3405772" user="Tony Morris" uid="66376" timestamp="2009-12-19T10:31:22Z"><tag k="name" v="Site 10"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.299066" lon="152.7198659" id="596098700" changeset="3405772" user="Tony Morris" uid="66376" timestamp="2009-12-19T10:31:22Z"><tag k="name" v="Site 9"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.2056648" lon="152.6679486" id="442564691" changeset="1844269" user="Tony Morris" uid="66376" timestamp="2009-07-16T12:44:51Z"><tag k="tourism" v="camp_site"/></node>,<node lat="-28.219999" lon="152.86" id="316607159" changeset="108027" user="Spindoc Bob" uid="11037" timestamp="2008-12-04T11:57:12Z"><tag k="name" v="EM Tilley Park"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.209999" lon="152.770004" id="316607169" changeset="1824310" user="Tony Morris" uid="66376" timestamp="2009-07-14T08:21:51Z"><tag k="name" v="Flanagan Reserve"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.2" lon="152.779998" id="316607407" changeset="108027" user="Spindoc Bob" uid="11037" timestamp="2008-12-04T11:57:28Z"><tag k="name" v="Bigriggen Park Reserve"/><tag k="tourism" v="camp_site"/></node>]----}
Geo/OSM/Bound.hs view
@@ -5,7 +5,7 @@ ) where import Text.XML.HXT.Arrow-import Geo.OSM.Util+import Text.XML.HXT.Extras import Geo.OSM.Accessor.Box import Geo.OSM.Accessor.Origin
Geo/OSM/Bounds.hs view
@@ -5,7 +5,7 @@ ) where import Text.XML.HXT.Arrow-import Geo.OSM.Util+import Text.XML.HXT.Extras import Geo.OSM.Accessor.Minlat import Geo.OSM.Accessor.Maxlat import Geo.OSM.Accessor.Minlon
Geo/OSM/Member.hs view
@@ -5,8 +5,8 @@ ) where import Text.XML.HXT.Arrow+import Text.XML.HXT.Extras import Geo.OSM.MemberType-import Geo.OSM.Util import Geo.OSM.Accessor.Mtype import Geo.OSM.Accessor.Ref import Geo.OSM.Accessor.Role
Geo/OSM/MemberType.hs view
@@ -8,9 +8,9 @@ ) where import Text.XML.HXT.Arrow+import Text.XML.HXT.Extras import Control.Applicative import Data.Char-import Geo.OSM.Util -- | The @type@ attribute of a @member@ element of a OSM file. data MemberType = WayType | NodeType | RelationType
Geo/OSM/NWRCommon.hs view
@@ -5,10 +5,10 @@ ) where import Text.XML.HXT.Arrow+import Text.XML.HXT.Extras import Control.Applicative import Data.Char import Geo.OSM.Tag-import Geo.OSM.Util import Geo.OSM.Accessor.Id import Geo.OSM.Accessor.Tags import Geo.OSM.Accessor.Changeset
Geo/OSM/Nd.hs view
@@ -5,7 +5,7 @@ ) where import Text.XML.HXT.Arrow-import Geo.OSM.Util+import Text.XML.HXT.Extras import Geo.OSM.Accessor.Ref -- | The @nd@ element of a OSM file.
Geo/OSM/Node.hs view
@@ -5,8 +5,8 @@ ) where import Text.XML.HXT.Arrow+import Text.XML.HXT.Extras import Geo.OSM.NWRCommon-import Geo.OSM.Util import Geo.OSM.Tag import Geo.OSM.Accessor.Id import Geo.OSM.Accessor.Tags
Geo/OSM/NodeWayRelation.hs view
@@ -11,10 +11,10 @@ ) where import Text.XML.HXT.Arrow+import Text.XML.HXT.Extras import Geo.OSM.Node import Geo.OSM.Way import Geo.OSM.Relation-import Geo.OSM.Util -- | The @node@, @way@, or @relation@ element of a OSM file. data NodeWayRelation = N Node | W Way | R Relation
Geo/OSM/OSM.hs view
@@ -5,10 +5,10 @@ ) where import Text.XML.HXT.Arrow+import Text.XML.HXT.Extras import Geo.OSM.NodeWayRelation import Geo.OSM.Bound import Geo.OSM.Bounds-import Geo.OSM.Util import Geo.OSM.Accessor.Version import Geo.OSM.Accessor.Generator import Geo.OSM.Accessor.BoundOrs
Geo/OSM/Relation.hs view
@@ -5,9 +5,9 @@ ) where import Text.XML.HXT.Arrow+import Text.XML.HXT.Extras import Geo.OSM.Member import Geo.OSM.NWRCommon-import Geo.OSM.Util import Geo.OSM.Tag import Geo.OSM.Accessor.Id import Geo.OSM.Accessor.Tags
Geo/OSM/Tag.hs view
@@ -5,7 +5,7 @@ ) where import Text.XML.HXT.Arrow-import Geo.OSM.Util+import Text.XML.HXT.Extras import Geo.OSM.Accessor.K import Geo.OSM.Accessor.V
− Geo/OSM/Util.hs
@@ -1,10 +0,0 @@--- | Utilities for parsing OSM files.-module Geo.OSM.Util(- showPickled- ) where--import Text.XML.HXT.Arrow---- | Pickles a value then writes the document to a string.-showPickled :: (XmlPickler a) => Attributes -> a -> String-showPickled a = concat . (pickleDoc xpickle >>> runLA (writeDocumentToString a))
Geo/OSM/Way.hs view
@@ -5,9 +5,9 @@ ) where import Text.XML.HXT.Arrow+import Text.XML.HXT.Extras import Geo.OSM.Nd import Geo.OSM.NWRCommon-import Geo.OSM.Util import Geo.OSM.Tag import Geo.OSM.Accessor.Id import Geo.OSM.Accessor.Tags
− MountBarney.osm
file too large to diff
OSM.cabal view
@@ -1,26 +1,27 @@ Name: OSM-Version: 0.1+Version: 0.2 License: BSD3 License-File: LICENSE Synopsis: Parse OpenStreetMap files Description: Parse OpenStreetMap http:\/\/osm.org/ files using HXT into data structures. The Geo.OSM module is the core module that exports all others.+Homepage: http://code.google.com/p/geo-osm/ Category: Utils Author: Tony Morris-Maintainer: tmorris@tmorris.net+Maintainer: code@tmorris.net Copyright: 2009 Tony Morris build-type: Simple cabal-version: >= 1.2-extra-source-files: Example.hs, MountBarney.osm+extra-source-files: etc/Example.hs, etc/MountBarney.osm Flag small_base Description: Choose the new, split-up base package. Library if flag(small_base)- Build-Depends: base < 4 && >= 3, hxt, containers+ Build-Depends: base < 4 && >= 3, hxt, hxt-extras, containers else- Build-Depends: base < 3, hxt, containers+ Build-Depends: base < 3, hxt, hxt-extras, containers GHC-Options: -Wall Exposed-Modules: Geo.OSM@@ -36,7 +37,6 @@ Geo.OSM.Bound Geo.OSM.NodeWayRelation Geo.OSM.OSM- Geo.OSM.Util Geo.OSM.Accessor.K Geo.OSM.Accessor.V Geo.OSM.Accessor.Ref
+ etc/Example.hs view
@@ -0,0 +1,17 @@+import Geo.OSM++-- Return all nodes tagged as camp-sites (tourism=camp_site) in the given OSM file.+campSites :: FilePath -> IO [Node]+campSites f = let p = filter ("tourism" `hasTagValue` "camp_site") . (nodes =<<)+ in fmap p (runX (xunpickleDocument (xpickle :: PU OSM) [(a_remove_whitespace, v_1)] f))++++{-+++*Main> campSites "MountBarney.osm"+[<node lat="-28.309999" lon="152.460006" id="316587114" changeset="108027" user="Spindoc Bob" uid="11037" timestamp="2008-12-04T11:00:06Z"><tag k="name" v="Koreelah Creek Campground - Koreelah NP"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.2131914" lon="152.4264518" id="596132847" changeset="3406101" user="Tony Morris" uid="66376" timestamp="2009-12-19T11:19:14Z"><tag k="name" v="Emu Creek"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.389999" lon="152.61" id="316587113" changeset="108027" user="Spindoc Bob" uid="11037" timestamp="2008-12-04T11:00:05Z"><tag k="name" v="Woodenbong Campground"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.2819309" lon="152.690921" id="440615858" changeset="3405819" user="Tony Morris" uid="66376" timestamp="2009-12-19T10:37:58Z"><tag k="name" v="Rum Jungle"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.2812388" lon="152.6916212" id="596096271" changeset="3405991" user="Tony Morris" uid="66376" timestamp="2009-12-19T11:02:19Z"><tag k="name" v="Old Hut Site"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.2961173" lon="152.7150912" id="596098699" changeset="3405772" user="Tony Morris" uid="66376" timestamp="2009-12-19T10:31:22Z"><tag k="name" v="Site 10"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.299066" lon="152.7198659" id="596098700" changeset="3405772" user="Tony Morris" uid="66376" timestamp="2009-12-19T10:31:22Z"><tag k="name" v="Site 9"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.2056648" lon="152.6679486" id="442564691" changeset="1844269" user="Tony Morris" uid="66376" timestamp="2009-07-16T12:44:51Z"><tag k="tourism" v="camp_site"/></node>,<node lat="-28.219999" lon="152.86" id="316607159" changeset="108027" user="Spindoc Bob" uid="11037" timestamp="2008-12-04T11:57:12Z"><tag k="name" v="EM Tilley Park"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.209999" lon="152.770004" id="316607169" changeset="1824310" user="Tony Morris" uid="66376" timestamp="2009-07-14T08:21:51Z"><tag k="name" v="Flanagan Reserve"/><tag k="tourism" v="camp_site"/></node>,<node lat="-28.2" lon="152.779998" id="316607407" changeset="108027" user="Spindoc Bob" uid="11037" timestamp="2008-12-04T11:57:28Z"><tag k="name" v="Bigriggen Park Reserve"/><tag k="tourism" v="camp_site"/></node>]+++-}
+ etc/MountBarney.osm view
file too large to diff