iSurvey
BFS
Baue eine Umfrage anhand von Metadaten
Die Datenverantwortlichen bei den Behörden kennen das Problem: Sie haben ihre Datensammlung inklusive derer Struktur genau beschrieben. Doch wenn die Daten mit einer Online-Befragung aktualisiert werden sollen, ist viel Copy-Paste ins Umfragetool nötig. Dieses Prozedere ist zeitaufwändig, fehleranfällig und zermürbend.
Ziel des Challenges
In dieser Challenge soll eine Brücke geschlagen werden zwischen der I14Y-Interoperabilitätsplattform und dem Opensource-Umfragetool Limesurvey: Auf Knopfdruck entsteht aus den Metadaten auf der Plattform eine Umfrage. Diese enthält die richtigen Codierungen und alle relevanten Codelisten.
Outcomes
Beim Erstellen einer Umfrage können Fehler passieren -- auch solche, die sich nachträglich fast nicht mehr ausmerzen lassen. Dank einer Brücke zwischen der Metadatenplattform und dem Umfragetool werden solche Fehler in Zukunft vermieden. Daten können fortan schneller, effizienter, zuverlässiger und günstiger aktualisiert werden.
Solutions
- Via Fileexport: Die Metadaten auf der I14Y-Interoperabilitätsplattform werden über die elektronischen Schnittstellen bezogen, aufbereitet und z.B. als .lss-Datei (XML) gespeichert. Diese lässt sich von Limesurvey importieren.
- Via API: Limesurvey kann über die RemoteControl 2 API ferngesteuert werden. Könnte diese elektronische Schnittstelle genutzt werden?
Ressourcen
Auf der I14Y-Interoperabilitätsplattform werden Beispieldaten zur Verfügung gestellt. Genaue Informationen zu der elektronischen Schnittstelle der I14Y-Interoperabilitätsplattform werden am Hackathon kommuniziert.
Verwendung
Idealerweise wird der Code inklusive der Beschreibung veröffentlicht, so dass er von allen Nutzerinnen und Nutzern der I14Y-Interoperabilitätsplattform und von Limesurvey weiterentwickelt und eingesetzt werden kann. Dazu kann der Github-Bereich der I14Y genutzt werden.
Organisation
Interoperabilitätsstelle, i14y.admin.ch.
iSurvey -- die Brücke zwischen I14Y und Limesurvey
Auf der I14Y-Interoperabilitätsplattform sind harmonisierte und standardisierte Codelisten der Schweizer Behörden erhältlich. Diese sollen in der quelloffenen Umfragesoftware Limesurvey auf einfache Weise genutzt werden können. Der Prototyp iSurvey versucht diese Brücke zu schlagen. Entwickelt wurde er im Rahmen des GovTech-Hackathons 2024.
iSurvey ruft die öffentlich verfügbaren Codelisten von der I14Y-Interoperabilitätsplattform ab, so dass sich die Listen mit wenigen Klicks in eine Umfrage einbauen lassen. Dadurch können Umfragen rascher erstellt werden. Und es entstehen nachträglich weniger Probleme aufgrund abweichender Codierungen.
iSurvey besteht aus einem Plugin für Limesurvey und einigen Skripten, mit denen die Codelisten bezogen und aufbereitet werden. Dank Docker-Containern und einer detaillierten Anleitung lässt sich Limesurvey inklusive des Plugins iSurvey innert weniger Minuten installieren.
Installation
Docker-Container installieren
Damit Limesurvey und iSurvey auf einfache Weise ausprobiert werden kann, wird hier eine auf Docker basierende Installationsmöglichkeit zur Verfügung gestellt.
:exclamation: Prototyp nicht für sensible Daten verwenden |
---|
Bei diesem Docker-Container handelt es sich um einen Prototyp. Er eignet sich für Tests. Ohne weitergehende Abklärungen sollte er nicht produktiv durch Behörden genutzt werden. Insbesondere dürfen damit keine schützenswerten Daten erhoben werden. Der Prototyp enthält einen Limesurvey-Container, der von einem privaten Nutzer angeboten wird. Empfohlen wird eine Installation einer geprüften Limesurvey-Version durch die zuständigen Behörde. Diese kann mit dem hier publizierten Plugin ergänzt werden. |
Um die Testversion auf dem lokalen Computer zu installieren, sind untenstehende Schritte auf der Kommandozeile nötig. Voraussetzungen: Git, Docker und Docker-Compose müssen installiert sein.
- Auschecken des Repository mit
git clone https://github.com/I14Y-ch/iSurvey.git
. Wechsel ins neu erstellte Verzeichnis:cd iSurvey
. - Editieren der Anmeldedaten für den LimeSurvey-Administrator in der Datei docker-compose.yml mit einem Texteditor.
- Installieren der Applikation mit
docker-compose build
. - Starten der Applikation mit
docker-compose up -d
. Limesurvey ist nun unter http://localhost:8082/ (Nutzeroberfläche) beziehungsweise http://localhost:8082/index.php/admin/index (Admin-Bereich) erreichbar.
Plugin zu bestehender Installation hinzufügen
Das Plugin ist bereits auf dem Server vorhanden. Mit den folgenden 4 Schritten kann es aktiviert werden. Nach der Aktivierung sind alle I14Y Beschriftungssets verfügbar. (Sobald das I14Y Plugin aktiviert ist, werden die I14Y Beschriftungssets in LimeSurvey täglich automatisch aktualisiert.
- Gehe zu Konfiguration>Plugins
- Dateien Scannen
- Beim Plugin I14Y klicke auf den Button Installieren
- Gehe zum Plugin I14Y und klicke aktivieren
Hinweise zur Nutzung
- Die Codelisten werden in der Regel einmal täglich aktualiert.
- Bei mehrsprachigen Umfragungen müssen die Sprachen ausgewählt werden, bevor die erste Codeliste einer Frage hinzugefügt wird.
Event finish
Share
Launch
Die letzten Minuten laufen!
Prototype
Research
Add comment for handling long codes (@osaeedi)
Add files via upload (@JohannesHool)
Merge branch 'main' of https://github.com/I14Y-ch/iSurvey (@thisss)
Präsetation (@thisss)
typo in README.md (@tabee)
add hints to the README.md file for Pluginsetup (@tabee)
Update Plugin (@mstett)
Merge remote-tracking branch 'origin/main' (@osaeedi)
Change path (@osaeedi)
Update i14y/app/isurvey_codelist.lsl - 2024-03-15 (@MathiasBornI14Y)
Merge remote-tracking branch 'origin/main' (@osaeedi)
Go back in Time (@osaeedi)
feat: added screenshot of i14y (@JohannesHool)
add badge to README.md (@tabee)
Update isurvey2.md (@JohannesHool)
feat: uploaded presentation images (@JohannesHool)
no mysql volume (@tabee)
checkforduplicates on (@tabee)
Merge branch 'main' of https://github.com/I14Y-ch/iSurvey (@thisss)
Marp-Präsentation hinzugefügt. (@thisss)
delet not important files (@tabee)
Upload codelist manually (@osaeedi)
save file firs in a temp (@tabee)
Update i14y/app/isurvey_codelist.lsl - 2024-03-15 (@MathiasBornI14Y)
Change path (@osaeedi)
Just two entries (@osaeedi)
upload plugin in primary plugin folder (@tabee)
we do not need volumes (@tabee)
update path to lsl file (@tabee)
renamed plugin (@tabee)
move from plugin to upload/plugin (@tabee)
Merge branch 'main' of https://github.com/I14Y-ch/iSurvey (@JohannesHool)
README ergänzt. (@thisss)
hide index.html from pluginfolder (@tabee)
Merge branch 'main' of https://github.com/I14Y-ch/iSurvey (@JohannesHool)
feat: blacklist (@JohannesHool)
fix typo in author url (@tabee)
deleted dummy file (@tabee)
fix folder structur (@tabee)
updatet lsl file (@tabee)
move plugin for build this in image (@tabee)
Dockerfile to build custom_limesurvey (@tabee)
build limesurvey not from image (@tabee)
hide Demo Plugin (@tabee)