= Blueprint for GIS Import/Export = We need to be able to Import & Export these XML formats to/from the Database: * GeoRSS (URL fetch/publish) * GPX (File upload/download) * KML (File upload/download & URL fetch/publish) * OSM (File upload/download) * GML (? Low priority, not used much in real world) Other formats which may be useful are Shapefiles, PostGIS & JSON. These should be representations added to the [wiki:BluePrintREST RESTlike controller]. Rather than reinventing the wheel, we could consider wrapping [http://featureserver.org FeatureServer] to do a lot of this work for us (like Web2Py uses !CherryPy) since it is WSGI-based.[[BR]] Alternatively we could look to borrow code from it. The XML conversion is probably best-done using an XSD parser: * [http://georss.org GeoRSS] * http://georss.org/xml/1.1/georss.xsd * http://georss.org/xml/1.1/gmlgeorss.xsd * GPX * http://www.topografix.com/gpx/1/1/gpx.xsd * GML * http://schemas.opengis.net/gml/3.2.1/ * KML * http://schemas.opengis.net/kml/2.2.0/ogckml22.xsd * OSM * http://dev.openstreetmap.org/~kleptog/osm-0.5.dtd Many options available for XML Import/Export, e.g.: * PyRXP: http://www.reportlab.org/pyrxp.html * Faster & optionally validating (DTD, XSD?), but requires compiling into Python so less portable (unless using pyexpat wrapper) * PyRXP_Documentation.pdf * XSD->DTD conversion (our schema are in XSD format) * http://crism.maden.org/consulting/pub/xsl/xsd2dtd.xsl * http://weblogs.asp.net/rchartier/archive/2006/03/21/440782.aspx * http://lists.xml.org/archives/xml-dev/200504/msg00757.html * http://bytes.com/groups/xml/85935-converting-xsd-into-dtd * cElementTree - included in Python 2.5, strict & fast: http://effbot.org/zone/celementtree.htm * sgmlop (supported by xmlrpclib): http://effbot.org/zone/sgmlop-index.htm * pyexpat (non-validating & slower, but built-in to Python 2) * http://docs.python.org/library/pyexpat.html This is another option for Import (via Python structures): * http://www.rexx.com/~dkuhlman/generateDS.html XML links: * http://www.w3schools.com/Schema/schema_intro.asp * http://diveintopython.org/xml_processing/index.html * http://www.xml.com/pub/a/2002/09/18/py.html * http://www.xml.com/pub/a/2003/09/10/py.html ---- [wiki:BluePrintGeographicInformationSystems GIS BluePrints]