Dobrý den, bojuji se skriptem, který by mě měl na radu našeho kolegy převést xml z overpass-turbo.eu do zjednodušeného formátu xml pro aplikaci Dot Walker (pro nevidomé). Nemám Linux a tak jsem se rozhodl stáhnout si CygWin, který umožňuje spouštět linuxové skripty, doplnil ho knihovnou pro xlstproc, ale jak do skriptu mám přidat informaci, z kterého xml souboru má provést konverzi? Kam ho umístit nebo jak k němu skript navést, aby ho načetl? Pro přiblížení - návod, který jsem zde získal: Pokud jste dostali data ve formátu XML, budete je muset transformovat na vámi požadovaný formát. K tomu můžete použít různé nástroje nebo skripty. Jeden z jednoduchých způsobů je použití XSLT (Extensible Stylesheet Language Transformations). Zde je jednoduchý XSLT skript, který by mohl provést transformaci: ```xml <xsl:stylesheet version="1.0" xmlns:xsl=" http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> <xsl:template match="/osm"> <Route> <xsl:for-each select="node[@k='highway' and @v='bus_stop']"> <Point> <Title><xsl:value-of select="@name"/></Title> <Lat><xsl:value-of select="@lat"/></Lat> <Lng><xsl:value-of select="@lon"/></Lng> <Description>stanice</Description> </Point> </xsl:for-each> </Route> </xsl:template> </xsl:stylesheet> ``` Po Entru tedy spuštění skriptu to napíše: -bash: xml: command not found -bash: command substitution: line 2: syntax error near unexpected token `newline' -bash: command substitution: line 2: ` <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">' -bash: $'~\E[200~': command not found Můžete tento skript použít s jakýmkoli nástrojem, který podporuje XSLT, například s `xsltproc` v příkazovém řádku. Ještě se potýkám také s tím, že vyexportovaný např. kml z overpass-turbo.eu má v sobě celou tabulku tagů - některým ani příliš nerozumím, i když jsem se díval na Wikipedii co znamenají - konkrétně traffic_signals:direction - jde o křižovatku, semafor a signál určující směr - možná to platí pro nějakou situaci v zahraničí, ale u nás jsou přece světelné semafory do obou směrů? Děkuji za pomoc. Miloš _______________________________________________ talk-cz mailing list talk-cz na openstreetmap.org https://lists.openstreetmap.org/listinfo/talk-cz https://openstreetmap.cz/talkcz
To je semafor pro auta, nebo? Dne ne 5. 11. 2023 9:43 uživatel Miloš Šmíd <smid.milos na gmail.com> napsal:Dobrý den, bojuji se skriptem, který by mě měl na radu našeho kolegy převést xml z overpass-turbo.eu do zjednodušeného formátu xml pro aplikaci Dot Walker (pro nevidomé). Nemám Linux a tak jsem se rozhodl stáhnout si CygWin, který umožňuje spouštět linuxové skripty, doplnil ho knihovnou pro xlstproc, ale jak do skriptu mám přidat informaci, z kterého xml souboru má provést konverzi? Kam ho umístit nebo jak k němu skript navést, aby ho načetl? Pro přiblížení - návod, který jsem zde získal: Pokud jste dostali data ve formátu XML, budete je muset transformovat na vámi požadovaný formát. K tomu můžete použít různé nástroje nebo skripty. Jeden z jednoduchých způsobů je použití XSLT (Extensible Stylesheet Language Transformations). Zde je jednoduchý XSLT skript, který by mohl provést transformaci: ```xml <xsl:stylesheet version="1.0" xmlns:xsl=" http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> <xsl:template match="/osm"> <Route> <xsl:for-each select="node[@k='highway' and @v='bus_stop']"> <Point> <Title><xsl:value-of select="@name"/></Title> <Lat><xsl:value-of select="@lat"/></Lat> <Lng><xsl:value-of select="@lon"/></Lng> <Description>stanice</Description> </Point> </xsl:for-each> </Route> </xsl:template> </xsl:stylesheet> ``` Po Entru tedy spuštění skriptu to napíše: -bash: xml: command not found -bash: command substitution: line 2: syntax error near unexpected token `newline' -bash: command substitution: line 2: ` <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">' -bash: $'~\E[200~': command not found Můžete tento skript použít s jakýmkoli nástrojem, který podporuje XSLT, například s `xsltproc` v příkazovém řádku. Ještě se potýkám také s tím, že vyexportovaný např. kml z overpass-turbo.eu má v sobě celou tabulku tagů - některým ani příliš nerozumím, i když jsem se díval na Wikipedii co znamenají - konkrétně traffic_signals:direction - jde o křižovatku, semafor a signál určující směr - možná to platí pro nějakou situaci v zahraničí, ale u nás jsou přece světelné semafory do obou směrů? Děkuji za pomoc. Miloš _______________________________________________ talk-cz mailing list talk-cz na openstreetmap.org https://lists.openstreetmap.org/listinfo/talk-cz https://openstreetmap.cz/talkcz_______________________________________________ talk-cz mailing list talk-cz na openstreetmap.org https://lists.openstreetmap.org/listinfo/talk-cz https://openstreetmap.cz/talkcz
Mým cílem jsou přechody pro chodce, ale může to být světelný směr pro auta, ale ani tak tomu moc nerozumím. Dne ne 5. 11. 2023 12:56 uživatel Jozef Matejička <matejickaj na gmail.com> napsal:To je semafor pro auta, nebo? Dne ne 5. 11. 2023 9:43 uživatel Miloš Šmíd <smid.milos na gmail.com> napsal:Dobrý den, bojuji se skriptem, který by mě měl na radu našeho kolegy převést xml z overpass-turbo.eu do zjednodušeného formátu xml pro aplikaci Dot Walker (pro nevidomé). Nemám Linux a tak jsem se rozhodl stáhnout si CygWin, který umožňuje spouštět linuxové skripty, doplnil ho knihovnou pro xlstproc, ale jak do skriptu mám přidat informaci, z kterého xml souboru má provést konverzi? Kam ho umístit nebo jak k němu skript navést, aby ho načetl? Pro přiblížení - návod, který jsem zde získal: Pokud jste dostali data ve formátu XML, budete je muset transformovat na vámi požadovaný formát. K tomu můžete použít různé nástroje nebo skripty. Jeden z jednoduchých způsobů je použití XSLT (Extensible Stylesheet Language Transformations). Zde je jednoduchý XSLT skript, který by mohl provést transformaci: ```xml <xsl:stylesheet version="1.0" xmlns:xsl=" http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> <xsl:template match="/osm"> <Route> <xsl:for-each select="node[@k='highway' and @v='bus_stop']"> <Point> <Title><xsl:value-of select="@name"/></Title> <Lat><xsl:value-of select="@lat"/></Lat> <Lng><xsl:value-of select="@lon"/></Lng> <Description>stanice</Description> </Point> </xsl:for-each> </Route> </xsl:template> </xsl:stylesheet> ``` Po Entru tedy spuštění skriptu to napíše: -bash: xml: command not found -bash: command substitution: line 2: syntax error near unexpected token `newline' -bash: command substitution: line 2: ` <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">' -bash: $'~\E[200~': command not found Můžete tento skript použít s jakýmkoli nástrojem, který podporuje XSLT, například s `xsltproc` v příkazovém řádku. Ještě se potýkám také s tím, že vyexportovaný např. kml z overpass-turbo.eu má v sobě celou tabulku tagů - některým ani příliš nerozumím, i když jsem se díval na Wikipedii co znamenají - konkrétně traffic_signals:direction - jde o křižovatku, semafor a signál určující směr - možná to platí pro nějakou situaci v zahraničí, ale u nás jsou přece světelné semafory do obou směrů? Děkuji za pomoc. Miloš _______________________________________________ talk-cz mailing list talk-cz na openstreetmap.org https://lists.openstreetmap.org/listinfo/talk-cz https://openstreetmap.cz/talkcz_______________________________________________ talk-cz mailing list talk-cz na openstreetmap.org https://lists.openstreetmap.org/listinfo/talk-cz https://openstreetmap.cz/talkcz_______________________________________________ talk-cz mailing list talk-cz na openstreetmap.org https://lists.openstreetmap.org/listinfo/talk-cz https://openstreetmap.cz/talkcz
Pošlete, prosím, místo, kde ten semafor je? Dne ne 5. 11. 2023 15:09 uživatel Miloš Šmíd <smid.milos na gmail.com> napsal:Mým cílem jsou přechody pro chodce, ale může to být světelný směr pro auta, ale ani tak tomu moc nerozumím. Dne ne 5. 11. 2023 12:56 uživatel Jozef Matejička <matejickaj na gmail.com> napsal:To je semafor pro auta, nebo? Dne ne 5. 11. 2023 9:43 uživatel Miloš Šmíd <smid.milos na gmail.com> napsal:Dobrý den, bojuji se skriptem, který by mě měl na radu našeho kolegy převést xml z overpass-turbo.eu do zjednodušeného formátu xml pro aplikaci Dot Walker (pro nevidomé). Nemám Linux a tak jsem se rozhodl stáhnout si CygWin, který umožňuje spouštět linuxové skripty, doplnil ho knihovnou pro xlstproc, ale jak do skriptu mám přidat informaci, z kterého xml souboru má provést konverzi? Kam ho umístit nebo jak k němu skript navést, aby ho načetl? Pro přiblížení - návod, který jsem zde získal: Pokud jste dostali data ve formátu XML, budete je muset transformovat na vámi požadovaný formát. K tomu můžete použít různé nástroje nebo skripty. Jeden z jednoduchých způsobů je použití XSLT (Extensible Stylesheet Language Transformations). Zde je jednoduchý XSLT skript, který by mohl provést transformaci: ```xml <xsl:stylesheet version="1.0" xmlns:xsl=" http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> <xsl:template match="/osm"> <Route> <xsl:for-each select="node[@k='highway' and @v='bus_stop']"> <Point> <Title><xsl:value-of select="@name"/></Title> <Lat><xsl:value-of select="@lat"/></Lat> <Lng><xsl:value-of select="@lon"/></Lng> <Description>stanice</Description> </Point> </xsl:for-each> </Route> </xsl:template> </xsl:stylesheet> ``` Po Entru tedy spuštění skriptu to napíše: -bash: xml: command not found -bash: command substitution: line 2: syntax error near unexpected token `newline' -bash: command substitution: line 2: ` <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">' -bash: $'~\E[200~': command not found Můžete tento skript použít s jakýmkoli nástrojem, který podporuje XSLT, například s `xsltproc` v příkazovém řádku. Ještě se potýkám také s tím, že vyexportovaný např. kml z overpass-turbo.eu má v sobě celou tabulku tagů - některým ani příliš nerozumím, i když jsem se díval na Wikipedii co znamenají - konkrétně traffic_signals:direction - jde o křižovatku, semafor a signál určující směr - možná to platí pro nějakou situaci v zahraničí, ale u nás jsou přece světelné semafory do obou směrů? Děkuji za pomoc. Miloš _______________________________________________ talk-cz mailing list talk-cz na openstreetmap.org https://lists.openstreetmap.org/listinfo/talk-cz https://openstreetmap.cz/talkcz_______________________________________________ talk-cz mailing list talk-cz na openstreetmap.org https://lists.openstreetmap.org/listinfo/talk-cz https://openstreetmap.cz/talkcz_______________________________________________ talk-cz mailing list talk-cz na openstreetmap.org https://lists.openstreetmap.org/listinfo/talk-cz https://openstreetmap.cz/talkcz_______________________________________________ talk-cz mailing list talk-cz na openstreetmap.org https://lists.openstreetmap.org/listinfo/talk-cz https://openstreetmap.cz/talkcz
Dobrý den, bojuji se skriptem, který by mě měl na radu našeho kolegy převést xml z overpass-turbo.eu do zjednodušeného formátu xml pro aplikaci Dot Walker (pro nevidomé). Nemám Linux a tak jsem se rozhodl stáhnout si CygWin, který umožňuje spouštět linuxové skripty, doplnil ho knihovnou pro xlstproc, ale jak do skriptu mám přidat informaci, z kterého xml souboru má provést konverzi? Kam ho umístit nebo jak k němu skript navést, aby ho načetl? Pro přiblížení - návod, který jsem zde získal: Pokud jste dostali data ve formátu XML, budete je muset transformovat na vámi požadovaný formát. K tomu můžete použít různé nástroje nebo skripty. Jeden z jednoduchých způsobů je použití XSLT (Extensible Stylesheet Language Transformations). Zde je jednoduchý XSLT skript, který by mohl provést transformaci: ```xml <xsl:stylesheet version="1.0" xmlns:xsl=" http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> <xsl:template match="/osm"> <Route> <xsl:for-each select="node[@k='highway' and @v='bus_stop']"> <Point> <Title><xsl:value-of select="@name"/></Title> <Lat><xsl:value-of select="@lat"/></Lat> <Lng><xsl:value-of select="@lon"/></Lng> <Description>stanice</Description> </Point> </xsl:for-each> </Route> </xsl:template> </xsl:stylesheet> ``` Po Entru tedy spuštění skriptu to napíše: -bash: xml: command not found -bash: command substitution: line 2: syntax error near unexpected token `newline' -bash: command substitution: line 2: ` <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">' -bash: $'~\E[200~': command not found Můžete tento skript použít s jakýmkoli nástrojem, který podporuje XSLT, například s `xsltproc` v příkazovém řádku. Ještě se potýkám také s tím, že vyexportovaný např. kml z overpass-turbo.eu má v sobě celou tabulku tagů - některým ani příliš nerozumím, i když jsem se díval na Wikipedii co znamenají - konkrétně traffic_signals:direction - jde o křižovatku, semafor a signál určující směr - možná to platí pro nějakou situaci v zahraničí, ale u nás jsou přece světelné semafory do obou směrů? Děkuji za pomoc. Miloš _______________________________________________ talk-cz mailing list talk-cz na openstreetmap.org https://lists.openstreetmap.org/listinfo/talk-cz https://openstreetmap.cz/talkcz
Bash nepozná xslt skript, ale len bash skript. Na prácu s xstl a xml používam príkaz xmlstarlet, ale isto poslúži aj xsltproc. On Sun, Nov 5, 2023 at 9:43?AM Miloš Šmíd <smid.milos na gmail.com> wrote:Dobrý den, bojuji se skriptem, který by mě měl na radu našeho kolegy převést xml z overpass-turbo.eu do zjednodušeného formátu xml pro aplikaci Dot Walker (pro nevidomé). Nemám Linux a tak jsem se rozhodl stáhnout si CygWin, který umožňuje spouštět linuxové skripty, doplnil ho knihovnou pro xlstproc, ale jak do skriptu mám přidat informaci, z kterého xml souboru má provést konverzi? Kam ho umístit nebo jak k němu skript navést, aby ho načetl? Pro přiblížení - návod, který jsem zde získal: Pokud jste dostali data ve formátu XML, budete je muset transformovat na vámi požadovaný formát. K tomu můžete použít různé nástroje nebo skripty. Jeden z jednoduchých způsobů je použití XSLT (Extensible Stylesheet Language Transformations). Zde je jednoduchý XSLT skript, který by mohl provést transformaci: ```xml <xsl:stylesheet version="1.0" xmlns:xsl=" http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> <xsl:template match="/osm"> <Route> <xsl:for-each select="node[@k='highway' and @v='bus_stop']"> <Point> <Title><xsl:value-of select="@name"/></Title> <Lat><xsl:value-of select="@lat"/></Lat> <Lng><xsl:value-of select="@lon"/></Lng> <Description>stanice</Description> </Point> </xsl:for-each> </Route> </xsl:template> </xsl:stylesheet> ``` Po Entru tedy spuštění skriptu to napíše: -bash: xml: command not found -bash: command substitution: line 2: syntax error near unexpected token `newline' -bash: command substitution: line 2: ` <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">' -bash: $'~\E[200~': command not found Můžete tento skript použít s jakýmkoli nástrojem, který podporuje XSLT, například s `xsltproc` v příkazovém řádku. Ještě se potýkám také s tím, že vyexportovaný např. kml z overpass-turbo.eu má v sobě celou tabulku tagů - některým ani příliš nerozumím, i když jsem se díval na Wikipedii co znamenají - konkrétně traffic_signals:direction - jde o křižovatku, semafor a signál určující směr - možná to platí pro nějakou situaci v zahraničí, ale u nás jsou přece světelné semafory do obou směrů? Děkuji za pomoc. Miloš _______________________________________________ talk-cz mailing list talk-cz na openstreetmap.org https://lists.openstreetmap.org/listinfo/talk-cz https://openstreetmap.cz/talkcz-- Ing. Martin Ždila <http://www.openstreetmap.org/user/*Martin*> OZ Freemap Slovakia tel:+421-908-363-848 mailto:martin.zdila na freemap.sk http://www.freemap.sk/ _______________________________________________ talk-cz mailing list talk-cz na openstreetmap.org https://lists.openstreetmap.org/listinfo/talk-cz https://openstreetmap.cz/talkcz
Dobrý den, Martine a ostatní, xsltproc jsem dal do dll cygwinu (je to správně?) - četl jsem, že jde o knihovnu, ale kamarád mi řekl, že je to samostatný program. Mohl bys mi napsat syntax, jak tedy spustit xsltproc údajně s parametrem, odkud má vzít ten xml, který chci překonvertovat a vlastně ani nevím, který xml je pro tu konverzi nejlepší. Zjistil jsem, že pracovní složka c:\cygvin64\Home\Miloš.
Dobrý den, Martine a ostatní, xsltproc jsem dal do dll cygwinu (je to správně?) - četl jsem, že jde o knihovnu, ale kamarád mi řekl, že je to samostatný program. Mohl bys mi napsat syntax, jak tedy spustit xsltproc údajně s parametrem, odkud má vzít ten xml, který chci překonvertovat a vlastně ani nevím, který xml je pro tu konverzi nejlepší. Zjistil jsem, že pracovní složka c:\cygvin64\Home\Miloš.
Otevře váš e-mailový klient. Odpovědi pak sledujte zde na webu.