On Tue, 04 Jan 2011 11:29:54 +0100, hanoj <[email protected]> wrote:
kdybych to chtěl udělat rychle a jednoduše tak bych z Wikipedie udělal
čistý
seznam (číslo, jméno na každém řádku) zastávek, a to samé se pokusil
vygenerovat z OSM XML (pomocí XSLT, nebo SEDu, případně by to možná šlo
v
textovém editoru jen pomocí funkcí nahrazování).
*** to bych si dokazal predstavit, mas na neco takoveho mustr?
Jo, něco mám. Posílám XSLT, které používám ke kontrole duplicit mezi
cyklotrasami - vygeneruje seznam "ref" cyklistických tras. Neměl by to být
problém upravit:
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" indent="no"/>
<xsl:template match="/osm">
<xsl:apply-templates select="relation">
<xsl:sort select="@id" data-type="number"/>
</xsl:apply-templates>
</xsl:template>
<xsl:template match="relation[tag/@v = 'bicycle']">
<xsl:value-of select="t...@k = 'ref']/@v"/>
<xsl:text>
</xsl:text>
<!--
<xsl:text> </xsl:text>
<xsl:value-of select="@id"/>
<xsl:text>
</xsl:text>
-->
</xsl:template>
<xsl:template match="*">
</xsl:template>
</xsl:stylesheet>
Potom už stačí použít sort
(nebo seřazení v tabulkovém procesoru) a diff (vimdiff).
*** ale jak efektivne tento vysledek tj. diff nebo upravenou tabulku
vratit do vychoziho zdroje? Do wiki je to snadne, ale do OSM XML?
Asi by neměl být problém vygenerovat seznam zastávek, které mají stejné
číslo, ale jmenují se jinak (nebo naopak stejná jména a jiná čísla).
Případně zastávek, které v jednom ze seznamů chybí. Nebo také seznam
zastávek u kterých v OSM chybí číslo, ale dají se najít ve Wiki podle
jména.
Neznám lepší způsob, než potom z daného seznamu vygenerovat OSM XML s
danými změnami, nejlépe asi pomocí XSLT.
diky
hanoj
_______________________________________________
Talk-cz mailing list
[email protected]
http://lists.openstreetmap.org/listinfo/talk-cz
--
Petr Dlouhý
_______________________________________________
Talk-cz mailing list
[email protected]
http://lists.openstreetmap.org/listinfo/talk-cz