TravelGuide-Konverter
Konvertierung (Import) 'älterer' TravelGuide-Daten im *.xml-Format in die SQLite-Datenbank 'travelguide_de.db3' des 'Merian scout' (ab GoPal V5.5 bzw. Zeitstempel 07.03.2010).
Vorbemerkungen:
Mich hat's gereizt, ein Tool zu schreiben, mit dem die bisherigen *.xml-Dateien in die 'travelguide_de.db3' übertragen werden können, um u.a. auch zu gewährleisten, dass sich weiterhin das Erstellen dieser Daten lohnt.
Allerdings gab es dann bei der Umsetzung doch so einige Probleme, mit denen ich im Vorfeld nicht wirklich gerechnet hatte. :022: Daher können aktuell nur alle MEN_*-Dateien übernommen werden, leider noch keine TV?_*.xml (TravelCar, TravelShopper, TravelTRANS,...).
Das liegt vor allem daran, dass bei meiner akt. TG-Version (s.u.) von Medion nach der Auswahl einer Stadt nicht nach den dort verwendeten Kategorien gefiltert wird (ebensowenig beim Reiseführer -> 'content_providers')! Ergo, es wird bei Städten & Kategorien immer alles angezeigt.
Aber, bei den 'POIs' bzw. den Texteinträgen (-> 'info_items') wird sehr wohl nach dem 'Reiseführer' gefiltert - wohl wg. des Icons. :denk_002:
Hätte ich jetzt alle Dateien 1:1 übernommen, wäre es sehr unübersichtlich geworden. Denn bei dann fehlenden Einträgen in 'info_items' zu einer bestimmten Kategorie kommt es zum 'Fehler' -> "keine Treffer zu Ihrer Auswahl vorhanden", weil halt nicht jede Datei Daten zu allen Kategorien enthält!
Wie geschrieben, wird leider auch nicht nach der ID des 'content_provider' gefiltert, denn sonst hätte man nämlich schön die anderen *.xml-Dateien (TVT_*, TVC_*, TVK_*, ...) getrennt eintragen können, mit eig. Kategorien (PLZ... bspw.).
Weiterhin wird die Anzeige der Kategorien nach Namen sortiert, nicht nach einem internen Attribut (Sort-Index).
Ich hoffe, Medion wird das Manko der fehlenden Filter in einer der nächsten TG-Versionen korrigieren!
Aber warum Medion überhaupt den (neuen) Weg mit der Datenbank gegangen ist, ist mir ein Rätsel! :017: 1. ist es jetzt ziemlich gekapselt und nicht mehr so ohne weiteres erweiterbar (oder war das Absicht? :denk_001:) und 2. leidet die Performance auch mit zusätzl. Einträgen gewaltig. :022:
Mein Tipp daher an diejenigen, die noch eine gültige TG-XML-Lizenz besitzen, setzt diese weiterhin - parallel - ein!
Vorgehen:
Jede Stadt aus dem TravelGuide erhält einen Zusatz 'TG', der ihn in der Übersicht eindeutig kennzeichnet. Bei solchen Einträgen muss der Eintrag unter 'Reiseführer' zwingend auf 'TravelGuide' gestellt werden, sonst kommt es zum Fehler "keine Treffer zu Ihrer Auswahl vorhanden"!
Anmerkung: Eine Alternative wäre, beim Reiseführer nicht zw. dem 'Merian scout' und dem 'TG' zu unterschieden. Wie ich hier generell noch weiter verfahren werde, weiß ich aktuell noch nicht.
Ich stelle das Vorgehen mal zur Diskussion, denn vlt. gibt es auch den rechtl. Aspekt zu berücksichtigen, nicht alles unter dem Merian scout 'aufhängen' zu dürfen.
Weitere Probleme:
- leider ziemlich viele Rechtschreibfehler, Buchstabendreher (auch in den Kategorien!!), die ich z.T. korrigieren musste. Sonst wäre für jeden 'Mist' :002: jeweils eine neue Kategorie angelegt worden
- Valencia (VLN) -> leere Kategorie (Fehler von Polyglott)
- weil nicht nach Kategorien gefiltert wird (s.o.), musste ich einige davon 'umleiten' bzw. zusammenfassen (so wurden auch die leidigen 'Druckfehler' bzw. untersch. Schreibweisen korrigiert). Dies habe ich nicht programmatisch, sondern generisch gelöst, über eine neue Tabelle 'Category_Mapping'
- einige Dateien (u.a. Hildesheim, Trier) lassen sich aufgrund einer inkonsistenten XML-Struktur nicht über den XML-Reader einlesen -> Anzeige. Sie werden aber importiert.
- einige 'Nachlässigkeiten' in der Tabellendefinition habe ich auch gleich mit bereinigt:
addresses.fax varchar(16) -> 48 vorh. Einträge mit bis zu 20 Zeichen
- sortiert wird die interne Anzeige nach Namen, nicht nach einem internen Index. Das ist speziell bei den Kategorien von Nachteil!
- die 'Ratings' habe ich von Links nach Rechts übernommen (es ist nurmehr ein Wert 'erlaubt')
Geänderte Kategorien:
"bisher" "aktuell"
"Unterhaltungs-Tipps" "Unterhaltungstipps"
"Allgemeine Information" "Allg. Info, Marktgeschehen"
"Marktgeschehen" "Allg. Info, Marktgeschehen"
"Allg. Information, Marktgeschehen" "Allg. Info, Marktgeschehen"
"Essen & Trinken" "Essen und Trinken"
"Friedhöfe" "Friedhöfe - Six feet under"
"Friedhöfe-Six" "Friedhöfe - Six feet under"
"Friehöfe-Six" "Friedhöfe - Six feet under"
"Ausflugs-Tipps der Umgebung" "Ausflugsziele, schönste Seen"
"Ausflugsziele der Umgebung" "Ausflugsziele, schönste Seen"
"Die schönsten Seen" "Ausflugsziele, schönste Seen"
"Sehenswuerdigkeiten" "Sehenswürdigkeiten"
"Dancefloor" "Nachtleben, Dancefloor und Clubs"
"Biergärten-Tipps" "Biergärten und Gartenlokale"
"Frei und Hallenbäder" "Frei- und Hallenbäder"
"Restaurant-Tipps" "Restauranttipps"
"Hotel Tipps" "Übernachtung, Hoteltipps"
"Hotel-Tipps" "Übernachtung, Hoteltipps"
"shopping-Tipps" "Shoppingtipps"
"Shopping-Tipps" "Shoppingtipps"
"Campigngplätze" "Campingplätze"
"Camping-Plätze" "Campingplätze"
"Freizeitspass" "Freizeit, Sport und Fitness"
"Freizeitspaß" "Freizeit, Sport und Fitness"
"Sport und Fitness" "Freizeit, Sport und Fitness"
"Zusammengetragen von" "Impressum"
Alles anzeigen
Getestete Version vom Merian scout:
getestet mit der Version 5.0.0 - 00041, -> Klick in der oberen Leiste auf das kleine blau/türkis farbene Dreieck links neben 'Travel Guide'
Alle Daten, die bisher über definierte xml-TAG's ihrer jew. Bedeutung zugeordnet waren, werden jetzt in einzelnen Tabellen gespeichert. Damit wird klar, dass eigene TAG's, die so im ursprünglichen Schema (DTD) nicht vorgesehen waren, umgewandelt bzw. bereinigt werden müssen, damit sie korrekt zugeordnet werden können.
Aus Zeitgründen werde ich nur in Ausnahmefällen Korrekturtipps für einzelne XML-Dateien geben (bin aber selber nicht so der XML-Experte), aber sicherlich keine korrigierte Fassungen hier zum Download anbieten (außer, der Autor ermächtigt mich dazu).
Dieser Thread kann aber dazu genutzt werden, einzelne Passagen geänderter Dateien zu posten.
Hier einige Beispiele dafür:
Vorbereitung:
1. beiliegende Grafik '\PNA\icon_travelguide.png' ist nach \My Flash Disk\navigation\multimedia\travelguide\Executable\resources\icons\ zu kopieren
2. alle bisher im 'TG' benutzen Bilder in ...\TravelGuide\database\*.png nach \My Flash Disk\navigation\multimedia\travelguide\CONTENT\MEDIA\PICTURES\TravelGuide kopieren
3. die Datenbank 'travelguide_de.db3' und alle zu importierenden *.xml-Dateien müssen auf dem PC gespeichert sein, am besten in separaten Verzeichnissen. Diese Angaben sind in der 'TG-Konverter.exe.config' anzugeben!
4. alle 'TG-Bilder' von \Travelguide\DATABASE\*.png nach "\My Flash Disk\navigation\multimedia\travelguide\CONTENT\MEDIA\PICTURES\TravelGuide" kopieren
Setup:
- .NET Framework 4.0 muss installiert sein (dotNetFx40_Full_x86_x64.exe, knapp 50MB)
- TG-Konverter.zip entpacken (es ist kein Install notwendig)
- Mindestauflösung des Displays aufgrund der komplexen Ansichten mind. 1200x800. Sollte noch jemand mit 1024x768 unterwegs sein ;), kann versuchen, die \Settings.xml anzupassen, aber viel kleiner darf's nicht werden, wg. der Überlappungen.
Wichtige Hinweise zur Benutzung des TG-Konverter:
- Vor der Benutzung die Hinweise im TG-Konverter.pdf lesen.
- Bei dem Import am besten in 50er-Schritten vorgehen, aus Zeitgründen (3 Dateien brauchen bei mir knapp 2min.!!). Da sich das Programm merkt, welche Dateien bereits importiert wurden, kann sich die Auswahl auch überschneiden.
- das Einlesen der Datenbank (~32MB) dauert je nach PC mind. 2 min.!
- Sinnvoll bei großen Dateimengen bzw. bei schweren Fehlern, den Aufrufparameter "-logging" zu benutzen; geloggt wird im Prg.-verz. \TG-Konverter\Log
- Excel-Export vor dem DB3-Import zum Check der XML-Dateien (ist nun nach einer Code-Änderung nicht mehr notwendig)
Aussehen und Benutzung im 'Merian scout':
Genereller Hinweis (Disclaimer):
Dieses Tool wird von mir kostenlos zur Verfügung gestellt (Freeware). Das Copyright dieser Software liegt bei mir und diese Software darf nur mit meiner schriftlichen Genehmigung auf anderen Seiten / Plattformen im Internet zur Verfügung gestellt werden! Reverse-Engineering oder jegliches Verändern des Quellcodes ist strikt untersagt!
Mit dem Download dieser Datei werden diese Bestimmungen anerkannt!
Hier geht's zum Download. Viel Spass!
Ach ja, wer's einsetzt und damit zufrieden ist (reine DL-Zahlen bringen das nicht zum Ausdruck), sollte es hier mit einem <Danke> auch zeigen. Für mich ist dadurch erkennbar, wer es denn tatsächlich ernsthaft nutzt und ob sich eine mögliche Weiterentwicklung überhaupt lohnt.