GEOS Pro Interlis Konverter Funktionen und Lieferumfang GEOS Pro – Interlis Konverter Inhaltsverzeichnis 1 2 3 4 5 6 Überblick ......................................................................................................... 2 Durchführung einfacher Konvertierungen........................................................ 3 Durchführung komplexerer Konvertierungen................................................... 4 Koordinatentransformation LV03 / LV95 ......................................................... 5 Reporting und Userinterface (GUI).................................................................. 5 Die Modeler Versionen.................................................................................... 6 6.1 Basisversion............................................................................................. 6 6.2 Ingenieurversion ...................................................................................... 6 6.3 Vollversion*** ........................................................................................... 6 GEOS Pro Interlis Konverter 1 Überblick Mit Hilfe des Konverters können ausgewählte Tabellendaten von einer Quelldatenbank gezielt in eine andere Datenbank übertragen werden. Dies ermöglicht unter anderem, von einem INTERLIS-Modell auf ein anderes (neueres) INTERLISModell zu wechseln. Damit wird die in den Grundfunktionen von GEOS Pro bereits vorhandene, flexible INTERLISDatenmodellerstellung und -Bearbeitung mit einem Konvertierungs-Tool vervollständigt, welches eine benutzerdefinierte Konvertierung der erfassten Daten von einem INTERLIS-Modell in ein anderes ermöglicht. Mit dem Konverter können darüber hinaus auch Nicht-INTERLIS-Tabellendaten übertragen werden. Als Quell- oder Zieldatebanken können Access, MS SQL Server und Oracle eingesetzt werden, wobei alle Kombinationen unterstützt werden. Der Konverter definiert zur Steuerung der Konvertierung eine leicht zu erlernende und ausführlich dokumentierte Scriptsprache. Der Benutzer schreibt die gewünschten Anweisungen in das sog. Konverterscript (Textfile mit der Endung *.knv), welches dann bei der Konvertierung angegeben und vom Konverter eingelesen wird. In der neusten Version des Konverters ist auch die affine Koordinatentransformation mittels Dreiecksvermaschung eingebaut. Mit Hilfe des mitgelieferten Definitionsfiles und wenigen ergänzenden Scriptzeilen ist damit die offizielle Koordinatentransformation von LV03 nach LV95 gemäss Bundesamt für Landestopographie - swisstopo - möglich. Der Konverter ist als Standalone-Windows-Applikation und/oder innerhalb GEOS Pro (Modeler, Import-Export-BatchTool) verfügbar. Letzeres ermöglicht den direkten INTERLIS-Export in ein anderes Datenmodell. Seite 2 GEOS Pro Interlis Konverter 2 Durchführung einfacher Konvertierungen INTERLIS-Modelldaten werden vom Konverter speziell unterstützt: Konvertierung der eigentlichen Daten (alle Datentypen unterstützt), Konvertierung der Komplementär- und Altbestands-Tabellen (automatisch oder benutzerdefiniert), Wert-Mapping von Daten aus Aufzähltypen und einiges mehr. Ausserdem kann man Zieltabellen vor der Konvertierung leeren oder Attributwerte auf den Zieldaten selektiv ändern. Alle genannten Funktionen (Kopieren, Leeren, Ändern; INTERLIS-Daten, Nicht-INTERLIS-Daten) können entweder separat (mehrere Scripte) oder aber im gleichen Konvertierungsdurchgang (1 Script) ausgeführt werden. Die Firma a/m/t stellt Scripte für spezifische Aufgaben zur Verfügung bzw. erstellt auf Wunsch auch im Auftrag komplexere Scripte (z.B. im Leitungskataster Starterkit). Anhand dieser Beispielscripte und der ausführlichen Konverter-Windows-Hilfe (*.chm File) kann die Scriptsprache leicht erlernt werden. Für INTERLIS-Datenmodelle (AV, Leitungskataster, ...) kann der Konverter die vorhanden Scripteinträge automatisch ergänzen. Auch für die Tabellen und Attribute kann man bequem die geläufigen INTERLIS-Namen einsetzen und braucht also nicht die entsprechenden Namen in der Datenbank zu kennen (im Gegensatz zu Nicht-INTERLIS-Anweisungen). Um z.B. alle Tabellen eines Topics zu konvertieren, reicht eine einzeilige Anweisung auf Topic-Ebene aus (es müssen also nicht alle Tabellen separat aufgeführt werden). Eine solche automatische Komplettierung gibt es auf Model-, Topic- und Table-Ebene. So können z.B. alle gleichnamigen Attribute einer Quelltabelle in die angegebene Zieltabelle automatisch übernommen werden. Zusätzlich kann man z.B. einzelne Zielattribute überspringen. Damit man den Überblick behält, werden vor der Konvertierung in einer Vorschau alle resultierenden Konvertierungsschritte angezeigt. Bei Unstimmigkeiten im Script (oder bei Datenproblemen zur Laufzeit) werden Warnungen oder Fehler angezeigt. Seite 3 GEOS Pro Interlis Konverter 3 Durchführung komplexerer Konvertierungen Ausser der 1:1 Übernahme von Attributdaten, hält der Konverter eine Reihe von Funktionen bereit, mit der die Quelldaten vor dem Schreiben in das Zielsystem modifiziert werden können. Zum Beispiel können Texte, numerische Daten, Datum, Winkel und auch Geometrien (eingeschränkt) angepasst werden. Viele der vorhandenen Funktionen sind spezifisch auf Kundenwunsch eingebaut worden und decken somit die wichtigsten oder häufigsten Problemstellungen bei der Konvertierung von AV- und Leitungskataster-Modellen ab. Für alle anderen Fälle kann auf die GeoMedia Funktionsattribute zurückgegriffen werden, deren Objektklassen dann im Konverter als Nicht-INTERLIS-Daten (Schlüsselwort NOILI) angesprochen werden können. Zielattribute können auch unabhängig von Quelldaten mit einem festen Wert (Konstante für alle betroffenen Records) belegt werden. Auch für Geometrie-Attribute stehen die zum Modellwechsel nötigen Funktionen zur Verfügung. Wenn beim Konvertieren für ein Zielattribut ungültige Daten entstehen (z.B. zu langer Text, nummerischer Bereich zu klein), gibt der Konverter eine entsprechende Fehlermeldung aus und hält die Zieldaten konsistent. Beim Abfüllen von Tabellen mit INTERLIS-AREA (und SURFACE) werden die notwendigen topologischen Tests vorgenommen (Verschnitt- und Selbstverschnitt-Tests). Falls man von einer Quelltabelle nicht alle Records übernehmen möchte, kann man in einer sog. Where-Bedingung mittels SQL-Syntax eine Auswahl treffen. Je nach zugrunde liegenden Modellen kann es vorkommen, dass man Attributdaten aus 2 verknüpften Quelltabellen in eine einzige Zieltabelle übernehmen möchte. Hierzu gibt es im Konverter die Möglichkeit, sog. Joins zu formulieren. Mittels Join können 2 oder mehr Tabellen verknüpft werden, indem das Attributpaar (oder 2 Paare) angegeben wird, welches gleichgesetzt werden soll. Bei gleichlautenden Attributen in 2 oder mehr Tabellen kann durch Einführung eines Tabellen-Aliasnamens Eindeutigkeit hergestellt werden. Auch das Aufteilen einer einzigen Quelltabelle in 2 verknüpfte Zieltabellen wird unterstützt. Zu diesem Zwecke können sog. GID-Tables definiert werden, mit deren Hilfe der Schlüssel bzw. das Referenzattribut (in der anderen Tabelle) richtig abgefüllt werden kann. Falls man bestimmte Verknüpfungen im Script mehrfach als Datenquelle einsetzen will, kann man optional sog. Views definieren. Beim Einsatz einer View kann durch unterschiedliche WhereBedingung weitere Flexibiltät erreicht werden. Damit auch bei komplexeren Scriptanweisungen die Zieldatenbank konsistent bleibt, wird für INTERLIS-Datenmodelle im Anschluss an die Konvertierung eine Überprüfung der Referenzattribute auf Gültigkeit bzw. Vorhandensein durchgeführt (sog. RefCheck). Falsche oder nicht vorhandene Referenzwerte erzeugen entsprechende Fehler- oder Warnmeldungen. Ausserdem werden für ungültige Referenzen entsprechende Records automatisch wieder gelöscht, damit die Datenbank konsistent bleibt. Der Umfang der Überprüfung kann per Schlüsselwort im Script auf alle, nur die konvertierten oder gar keine Records eingestellt werden. Seite 4 GEOS Pro Interlis Konverter 4 Koordinatentransformation LV03 / LV95 Ein weiteres wichtiges Feature des Konverters ist das Durchführen von (affinen) Koordinatentransformationen mittels Dreiecksvermaschung. Mit Hilfe des von a/m/t ausgelieferten Dreiecksvermaschungsfile, welches der offiziellen Koordinatentransformation von LV03 nach LV95 entspricht (Bundesamt für Landestopographie, swisstopo), und einigen simplen Anweisungen im Konverterscript kann die entsprechende Koordinatentransformation auf den ausgewählten Daten (z.B. ganzes Modell) durchgeführt werden*. In diesem Fall wird ausser dem normalen Report ein weiteres Textfile erstellt, welches über alle vorgenommenen Koordinatentransformationen informiert. Für jeden transformierten Punkt werden die alten und neuen Koordinaten aufgeführt. Aus den Angaben jeder Zeile kann darüberhinaus zurückverfolgt werden, woher jeder einzelne GeometriePunkt stammt: -> Geometrie-Komponente (Polygon, Line, ..) bzw. Geometrie (Punkt) -> GeometrieAttribut (Name) -> Record (GID, ID) -> Tabellenname (Topic, Model) Im Anschluss an die Auflistung der transformierten Punkte werden alle Informationen zu den benutzten Dreiecken (welche aus dem angegebenen File eingelesen wurden) aufgeführt: Dreiecksname, Punktnamen, Koordinaten lokal und global, Anzahl der in einem Dreieck transformierten Punkt und berechnete affinen Transformationsparameter. Das Textfile wird mit Komma getrennten Werten geschrieben. Damit kann das File direkt in MSExcel hineinkopiert werden kann, um alle Spalten bündig zu haben und effizientes Sortieren und Suchen im ganzen Datenbestand zu ermöglichen. Natürlich ist auch eine Transformation von LV95 zurück in LV03 möglich durch Angabe entsprechender Schlüsselwörter im Script. 5 Reporting und Userinterface (GUI) Für alle Arten von Konvertierungen werden sowohl die Vorschau als auch alle Warn- und Fehlermeldungen im sog. Reportfile festgehalten (kann als *.gpr oder *.doc gespeichert werden).Für jeden Konvertierungsschritt werden entsprechende Statistiken angezeigt, welche über die Anzahl korrekt und fehlerhaft konvertierter Daten informieren. Das Benutzerinterface des Standalone-Konverters ist sehr einfach gehalten: Es umfasst im wesentlichen die Auswahl der Quell- und Zieldatenbank für die verschiedenen Datebanktypen und die Auswahl des Konverterscripts. Optional kann der Standard-Reportname (Pfad) geändert werden. Anschliessend muss nur noch der Startknopf gedrückt werden. Dann werden zunächst die Datenbankverbindungen erstellt, anschliessend das Script geparst und schliesslich die Aufbereitung und Komplettierung der Scriptdaten vorgenommen. Falls keine Fehler festgestellt werden, kann schliesslich der eigentliche Konvertierungsvorgang gestartet werden. Beim Aufruf des Konverters aus GEOS Pro (Modeler) werden die gleichen Daten abgefragt in Kombination mit den Modeller angaben. Zum Beispiel wird bei Auswahl "Export in ein anderes Modell" automatisch ein Dialog angezeigt, der die Auswahl des Zielmodells (*.ILI) und des Konverterscripts (*.knv) ermöglicht. Der Aufruf des Konverters aus dem Import-Export-BatchTool (GEOS_Pro_Batch_ImpExp.exe) funktioniert analog: Falls man einen Batch entsprechender Art auswählt, werden die für den Konvertierungsteil des Batch nötigen Angaben automatisch über das vorhandene Interface (Baumstruktur) abgefragt. Beim Ausführen werden ausserdem die Standalone-Konverter-Dialoge unterdrückt und stattdessen zur Ereignissmeldung der Report benutzt. Seite 5 GEOS Pro Interlis Konverter 6 Die Modeler Versionen Die neuen Modelerversionen unterscheiden sich in der Art und Weise und vom Umfang her, mit der der Konverter eingebunden ist: 6.1 Basisversion Der Konverter ist nur innerhalb eines ITF-Exports ** (Modellwechsel / Rechtsgültig mit Nachführungen) verfügbar. Diese Version muss normalerweise nicht bestellt werden, da sie beim Kauf des Moduls Interlis Modeler gekauft wurde. 6.2 Ingenieurversion Wie Basisversion, aber der Konverter ist zusätzlich als Standalone Applikation ** verfügbar jedoch ohne das Feature der Koordinatentransformation LV03/LV95. 6.3 Vollversion*** Wie Ingenieurversion, aber mit Koordinatentransformation LV03/LV95. _______________________ (*) In der nächsten Version ist auch die Kombination mit einem Spatialfilter möglich (**) interaktiv oder batch (***) Benötigt mindestens GEOS Pro 2.7. Seite 6