AOQML-Massenvalidierung: Unterschied zwischen den Versionen

Aus AntamarWiki
Wechseln zu: Navigation, Suche
(Bekannte Probleme aka. TODO für die Zukunft)
Zeile 15: Zeile 15:
  
 
=== Bekannte Probleme aka. TODO für die Zukunft ===
 
=== Bekannte Probleme aka. TODO für die Zukunft ===
* Wenn in Links Variablen genutzt werden, wird fälschlicherweise ein Fehler geschmissen. Dieser kann ignoriert werden. Variablen in Links sollten künftig bei der Auswertung ignoriert oder es sollte geschaut werden, welche Werte sie annehmen können, um dann auf diese Werte zu prüfen.
+
* Wenn in Links [[Store fetch|Variablen]] genutzt werden, wird fälschlicherweise ein Fehler geschmissen. Dieser kann ignoriert werden. Variablen in Links sollten künftig bei der Auswertung ignoriert oder es sollte geschaut werden, welche Werte sie annehmen können, um dann auf diese Werte zu prüfen.
 
* Bei Verwendung von Funktionen aus der [[AOQML Library|AOQML-Bibliothek]] wird angegeben, dass die Datei nicht existiert. Das ist formal korrekt, kann aber ignoriert werden. Künftig Links nicht mehr betrachten, die mit /lib/ anfangen oder die Liste der möglichen Libraries in einem Array hinterlegen, sodass hier auch auf korrekte Schreibung geprüft werden kann. Nachteil: Händisch nachzurüsten.
 
* Bei Verwendung von Funktionen aus der [[AOQML Library|AOQML-Bibliothek]] wird angegeben, dass die Datei nicht existiert. Das ist formal korrekt, kann aber ignoriert werden. Künftig Links nicht mehr betrachten, die mit /lib/ anfangen oder die Liste der möglichen Libraries in einem Array hinterlegen, sodass hier auch auf korrekte Schreibung geprüft werden kann. Nachteil: Händisch nachzurüsten.
 
* Verschachtelte ''includes'' mit Ebenenwechsel können zu falschen Fehlermeldungen führen.
 
* Verschachtelte ''includes'' mit Ebenenwechsel können zu falschen Fehlermeldungen führen.

Version vom 19. Juli 2017, 14:13 Uhr


Es kommt vereinzelt vor, dass Projekte in AOQML sehr groß werden und mit unserem AOQML-Editor kaum bis gar nicht mehr zu managen sind. In der Regel werden solche Projekte von erfahrenen AOQML-Autoren geschrieben, die häufig die Leiste mit den Codeschnipseln nicht mehr benötigen und andere Editoren verwenden, mit denen sie erfahrungsgemäß einfach schneller arbeiten. Trotzdem kann es nicht schaden, ein Projekt zum Abschluss auf grundsätzliche Validität zu prüfen. Zu diesem Zweck hat Enno ein Skript geschrieben, das alle XML-Dateien in einem Ordner und dessen Unterordnern gegen die XSD prüft und bei sämtlichen Links per include oder choice evaluiert, ob die verlinkten Dateien vorhanden sind und das Ergebnis der Prüfung als Textdatei ausgibt.

Anwendung

Die Anwendung unterscheidet sich je nach Betriebssystem und ist nicht explizit auf Benutzerfreundlichkeit ausgelegt, sondern richtet sich eher an Nutzer mit Programmierkenntnissen. Daher hier folgend Anleitungen für Windows und Linux.

Das Skript selbst ist in Python 2.7 geschrieben, aber lauffähig bis mindestens 3.6 und verwendet Java für den eigentlichen Abgleich. Es sollten demnach Java und Python installiert sein.

Windows

Bla

Linux

Bla

Bekannte Probleme aka. TODO für die Zukunft

  • Wenn in Links Variablen genutzt werden, wird fälschlicherweise ein Fehler geschmissen. Dieser kann ignoriert werden. Variablen in Links sollten künftig bei der Auswertung ignoriert oder es sollte geschaut werden, welche Werte sie annehmen können, um dann auf diese Werte zu prüfen.
  • Bei Verwendung von Funktionen aus der AOQML-Bibliothek wird angegeben, dass die Datei nicht existiert. Das ist formal korrekt, kann aber ignoriert werden. Künftig Links nicht mehr betrachten, die mit /lib/ anfangen oder die Liste der möglichen Libraries in einem Array hinterlegen, sodass hier auch auf korrekte Schreibung geprüft werden kann. Nachteil: Händisch nachzurüsten.
  • Verschachtelte includes mit Ebenenwechsel können zu falschen Fehlermeldungen führen.

Download des Scripts

Hier die aktuelle Version des Scripts zum Download.

Datei:Questbatch validation.zip