#95: repository items and sitemaps
-------------------------+--------------------------------------------------
Reporter: tomkralidis | Owner: geonetwork-devel@lists.sourceforge.net
Type: enhancement | Status: new
Priority: major | Milestone:
Component: General | Version:
Keywords: |
-------------------------+--------------------------------------------------
I think it would be valuable to be able to (optionally) expose GN
repository resources with the sitemap.xml format [1]. Something like:
http://host/geonetwork/srv/en/portal.sitemap?format=xml
...where format can control XML (FGDC/ISO/DC/etc.) or HTML output.
...can return a sitemap document which folks can submit to search engine
crawlers.
I implemented this in Python as proof of concept. Basic steps:
* query database with {{{"select id, schemaId, changeDate from Metadata
where isTemplate = 'n'"}}}
Return XML like:
{{{
<urlset
xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:geo="http://www.google.com/geo/schemas/sitemap/1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9
http://www.sitemaps.org/schemas/sitemap/0.
9/sitemap.xsd">
<url>
<loc>http://host/geonetwork/srv/en/fgdc.xml?id=194</loc>
<lastmod>2009-04-09T15:15:04</lastmod>
<geo:geo>
<geo:format>fgdc-std</geo:format>
</geo:geo>
</url>
...
</urlset>
}}}
The value in /urlset/url/loc would be either XML (the process would have
to figure out the schemaId, and then create the URL appropriately), or
HTML (e.g. http://host/geonetwork/srv/en/metadata.show?id=194).
[1] http://www.sitemaps.org/protocol.php
--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/95>
GeoNetwork opensource Developer website <http://trac.osgeo.org/geonetwork>
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.