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>&#xa;</xsl:text>
      <!--
      <xsl:text> </xsl:text>
      <xsl:value-of select="@id"/>
      <xsl:text>&#xa;</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

Odpovedet emailem