Fane-separeret værdiundersøgelsesstruktur
From LimeSurvey Manual
Tab-separeret værdi import og eksport af undersøgelsesstruktur
Denne funktion er designet til at gøre det nemt at bruge et regnearkssoftware som LibreOffice, Excel eller Google Docs til at skrive og redigere undersøgelser. Det eliminerer fuldstændigt afhængigheden af SGQA-koder.
Denne funktion understøtter import fra ASCII- eller UTF-8-kodede Tab Separated Value-filer (TSV) med filtypenavnet .txt.
Kom godt i gang
Den nemmeste måde er at tage en eksisterende undersøgelse og eksportere den i Tab Separated Value-format. Brug den normale eksportundersøgelsesknap, og i stedet for at vælge .lss-format, vælg "Tab Separated Values format (*.txt)". Den vil blive gemt som en tab-separeret værdi-fil i det korrekte format (tabulator-separeret unicode-fil) med alle de korrekte kolonneoverskrifter.
Enhver regnearkssoftware, der understøtter tabulatorseparerede værdier, er i orden (f.eks. OpenOffice eller LibreOffice). LimeSurvey ignorerer enhver formatering i regnearket, men du er velkommen til at tilføje nogle, hvis det hjælper dig.
Der vil være en række for hver gruppe, spørgsmål, underspørgsmål og svar. Der er også rækker for globale undersøgelsesvariabler og for sprogspecifikke undersøgelsesvariabler. Det primære sprog vil blive vist først, efterfulgt af eventuelle sekundære sprog. Så hvis der er flere sprog, vil hele indholdet af basissproget vises først (f.eks. alle grupper, spørgsmål, underspørgsmål og svar). Dette vil blive efterfulgt af en oversat kopi for hvert sekundært sprog (med nøjagtig samme nummer og rækkefølge eller rækker for det oversatte sæt).
Relationer udledes af nærhed. Så spørgsmål efter en gruppe er en del af den gruppe; underspørgsmål efter et spørgsmål er en del af det spørgsmål, og svar efter et spørgsmål er en del af det spørgsmål. Du behøver således ikke at kende ID'erne (gid, qid, sqid) for spørgsmål. Disse vil blive beregnet automatisk ved import. Faktisk bruger dette format slet ikke gid, qid eller sqid (eller SGQA-koder).
Tips
Målet med import/eksport med fane-separeret værdi er at lade dig hurtigt designe din undersøgelse ved hjælp af et regneark. Vi forventer, at du ofte vil importere arket, kontrollere dets gyldighed ved hjælp af funktionen "Vis undersøgelseslogik" og teste det. Hver gang du importerer det, får du en ny undersøgelse. Så du kan ende med mange delvist udviklede undersøgelser, men det er fint. Bare væn dig til at holde styr på, hvilken der er den seneste, eller slet den gamle, efter du har importeret de nye. Da du aldrig bruger SGQA-koder i Tab Separated Value, behøver du aldrig at bekymre dig om, hvilke koder LimeSurvey tildeler til den primære undersøgelses-, gruppe-, spørgsmåls- og svarnøgler. Så du er velkommen til at importere og eksportere, så ofte du vil.
Her er nogle praktiske ting, du kan gøre med denne tilgang til at oprette instrumenter:
- Brug samme svar til mange spørgsmål. Bare kopier 'A'-rækkerne og indsæt efter hvert spørgsmål, der skal have det samme sæt.
- Brug samme underspørgsmål til mange spørgsmål. Bare kopier 'SQ'-rækkerne og indsæt dem efter hvert spørgsmål, der har brug for det.
- "Looping" - brug samme gruppe mange gange. Når gruppen er, som du vil have den, skal du kopiere den så mange gange som nødvendigt. Brug Excel-filtrering til kun at se 'G'-rækkerne (for grupper), og brug Excel-søjletrækfunktionen til at opdatere relevansligningerne for hver gruppe (f.eks. for en folketælling kan den første relevans være "antalPeople > 1", næste skal være "antalPeople > 2". Træk-funktionen vil automatisk opdatere tallet). Filtrer efter 'Q'-rækker og sørg for, at hvert spørgsmål har en unik værdi (f.eks. sig du navngiver dine variabler g1_q1, g1_q2, g1_qN, brug find/erstat til at konvertere g1 til g2 den anden gruppe; g3 for den tredje osv.) .
- Ombestilling af spørgsmål/grupper. Du skal blot omarrangere rækkerne i regnearksfilen.
- Test undersøgelsesmoduler. For lange undersøgelser kan det være en god idé at dele testen op i moduler. Du skal blot oprette nye regnearksfiler for hvert modul og slette alle rækker, du ikke har brug for. Dette undgår behovet for at indtaste masser af data for at teste senere sektioner af undersøgelsen.
- Test obligatoriske spørgsmål. En almindelig klage er ikke behovet for at gøre mange spørgsmål obligatoriske, men behovet for at deaktivere den obligatoriske funktion til test. Du skal blot oprette hovedregnearket med obligatorisk indstillet til de endelige ønskede værdier. For derefter at teste det, skal du bare slette den "obligatoriske" kolonne og gemme testversionen af regnearket. Når du importerer den version, vil ingen af spørgsmålene være obligatoriske. Når du er færdig med din test, skal du importere masterkopien.
- Indstilling af standarder. I stedet for at bruge GUI'en kan du indtaste alle ønskede standarder i standardkolonnen. Dette er især nyttigt i tilfælde, hvor GUI'en ikke lader dig indtaste den ønskede værdi, såsom udtryk for at indstille standarden for listeelementer (som at udfylde en liste fra en [[Survey-deltagere|undersøgelsesdeltager] ] attribut).
- Oversættelse. Du kan oprette kopier af dit regneark - en pr. sprog. Inkluder alle rækkerne for det primære sprog, kopier og indsæt dem derefter nedenfor, og brug træk for at ændre sprogfeltet til målsproget. Disse kan distribueres til dine oversættere og genintegreres i en enkelt regnearksfil, når de er færdige.
- Masseindstilling af avancerede spørgsmålsattributter. Du vil måske have, at alle dine ligninger begynder at være synlige (så du kan se deres værdier, mens du indsamler data), men derefter skjule dem alle, før du går i produktion. Du skal blot filtrere regnearket på klasse = 'Q' og spørgsmålstype = '*' (ligning), og indstille always_hide til 1 for hvert af disse spørgsmål. På samme måde, når du har oprettet undersøgelsen, bestemmer du, hvilke spørgsmål der skal vises i offentlige statistikker. I stedet for at redigere hvert spørgsmål gennem GUI'en, filtrer på klasse = 'Q' og sæt public_statistics = 1 for alle de spørgsmål, der skal være synlige i statistikker.
- Find og erstat. Lad os sige, at du beslutter dig for at ændre nogle formuleringer på tværs af alle dine spørgsmål. Du kan bruge Excel Find og Erstat til at foretage disse ændringer. På samme måde kan du sige, at du beslutter dig for at lave en masseomdøbning af dine variabler, find og erstat kan komme til undsætning. Hvis du har brug for regulært udtryksbaseret find og erstat, kan du vælge den ønskede kolonne, kopiere til en teksteditor, finde og erstatte og indsætte kolonnen tilbage i regnearket.
- 'Gain approvals '. Hvis du laver research, har du muligvis en institutionel revisionskomité, som insisterer på at se teksten til spørgsmålene. Dette kan være en praktisk måde at dele det på. Tilsvarende for diskussioner med en klient.
- Teamkonsensus. Hvis du forsøger at få en gruppe til at blive enige om ordlyden eller udseendet af et spørgsmål eller en gruppe, kan du hurtigt prototype/redigere regnearket, importere det og vise teamet (via spørgsmål eller gruppeeksempel) præcis, hvad brugerne vil se . På den måde kan du få godkendelse fra teamet, før de forlader lokalet i stedet for at skulle dokumentere krav, bygge dem og få godkendelse ved fremtidige møder.
- Opgradering fra andre undersøgelsesformater. Hvis din undersøgelse er i XML, Word eller andet format, kan du oprette en oversættelsesproces for at knytte dem til dette format. Selvom du også kunne prøve at kortlægge til .lss-formatet, er fordelen ved dette format, at det ikke kræver, at du holder styr på fremmednøgleforhold mellem grupper, spørgsmål, underspørgsmål, svar og standardindstillinger.
Begrænsninger
- På design fungerer denne funktion kun korrekt for undersøgelser, der bruger qcode (i stedet for SGQA) navngivning. Denne funktion antager, at variabelnavne (spørgsmålsidentifikatorer) er unikke i hele undersøgelsen. Underspørgsmålsnavne kan gentages, så længe de er unikke inden for rammerne af et bestemt spørgsmål.
Filformat
Generelt
Vi bruger det samme sæt kolonneoverskrifter til flere formål. De første 14 kolonner tjener forskellige formål afhængigt af typen af enhed (f.eks. gruppe, spørgsmål, svar). De resterende kolonner er en alfabetisk liste over databasefeltnavnene for de avancerede spørgsmålskoder. Nedenfor er syntaksen for hver enhedstype
De første 14 kolonner er:
- id (New in 3.14.0 )
- related_id (New in 3.14.0 )
- class
- type/scale
- navn
- relevans
- tekst
- hjælp
- sprog
- validering
- obligatorisk
- other
- default
- same_default
Globale parametre for undersøgelse
Der er én række pr. parameter i undersøgelsestabellen.
- class => 'S'
- name => databasefeltnavn
- text => værdi
Sprogspecifikke parametre for undersøgelse
Der er én række pr. felt pr. sprog i tabellen surveys_languagesettings. Alle indtastninger for et givet sprog indsamles, før indsættelsen udføres i tabellen.
- class => 'SL'
- name => databasefeltnavn
- text => værdi
- language = > sprog
Grupper
En grupperække pr. undersøgelsessprog (f.eks. ville der være 3 grupperækker, hvis undersøgelsen har 3 sprog).
- id => unikt numerisk id for gruppen, startende med nummer 1, brug det samme ID for yderligere sprog, der tilhører nuværende gruppe
- class => 'G'
- name => gruppenavn -- den unikke identifikator for gruppen
- relevance => grelevance -- relevansligningen på gruppeniveau uden krøllede klammer!N !#text => beskrivelse -- den sprogspecifikke beskrivelse af gruppen
- language => sprog -- sproget for gruppen (f.eks. 'da')
Spørgsmål
Én spørgsmålsrække pr. undersøgelsessprog (f.eks. ville der være 3 spørgsmålsrækker, hvis undersøgelsen har 3 sprog). Spørgsmål antages at tilhøre den gruppe, der går forud for dem.
- id => unik numerisk identifikator for spørgsmålet, startende med nummer 1, brug det samme ID for yderligere sprog, der tilhører det aktuelle spørgsmål
- class => ' Q'
- type/scale => type -- (normalt ét bogstav) spørgsmålstype (f.eks. 'M' er Multiple Choice)
- name => titlen -- unikt spørgsmålsnavn (roden af qcode-navnesystemet)
- relevance => relevans -- relevansligningen for spørgsmålet
- text => spørgsmålet -- sproget -specifik tekst til spørgsmålet
- help => hjælp -- den sprogspecifikke hjælpetekst
- language => sprog -- sproget for gruppen (f.eks. 'da')
- validation = > preg -- de valgfri valideringskriterier for regulære udtryk for spørgsmålet
- mandatory => obligatorisk -- 'Y' hvis obligatorisk
- other => andet -- 'Y' hvis indstillingen "Andet" skulle være tilgængelig (kun for nogle spørgsmålstyper)
- default => standard -- hvis den er indstillet, indsættes denne værdi i standardværditabellen for dette spørgsmål
- same_default => same_default -- 'Y' for sand, i hvilket tilfælde enhver standardværdi, der er angivet for det primære sprog, gælder for andre sprog
Underspørgsmål
Én underspørgselsrække pr. undersøgelsessprog. Underspørgsmål antages at tilhøre spørgsmålet, der går forud for dem.
- id => samme unikke numeriske identifikator, som bruges til spørgsmålene. Underspørgsmål skal bruge næste tilgængelige værdi, spørgsmåls- og underspørgsmåls-id'er skal være forskellige (brug f.eks. ID 1 til spørgsmål og ID'er 2, 3 og 4 for underspørgsmål, der hører til spørgsmål 1, næste spørgsmåls-id skal være 5 og så videre). Brug det samme underspørgsmåls-id til yderligere sprog, der hører til aktuelle underspørgsmål.
- class => 'SQ'
- type/scale => scale_id -- 0 eller 1, afhængigt af spørgsmålstypen (f.eks. vil matrixtekst have to skalaer)
- navn => titel -- "navnet" på underspørgsmålet, f.eks. det der bruges til exclude_all_others
- relevance => relevans -- (Future) for at understøtte relevans på underspørgsmålsniveau
- text => spørgsmål -- den sprogspecifikke tekst i underspørgsmålet
- help => hjælp -- (Future) for at understøtte hjælp på underspørgsmålsniveau
- language => sprog -- sproget for underspørgsmålet
#validation => preg -- (Future) for at understøtte validering af regulære udtryk på underspørgsmålsniveau (f.eks. for adressedele)
- mandatory => obligatorisk -- (Future) for at understøtte underspørgsmålsniveau obligatorisk (f.eks. kun nogle få underspørgsmål obligatorisk)
- default => standard -- hvis indstillet, så er dette standardværdien for underspørgsmålet (indsat i standardværditabellen)
- same_default => same_default -- hvis den er indstillet, så standardværdien for det primære sprog bruges til alle andre sprog
Svar
Én svarrække pr. undersøgelsessprog (f.eks. ville der være 3 svarrækker, hvis undersøgelsen har 3 sprog). Svar antages at tilhøre spørgsmålet, der går forud for dem, og være i den ønskede sorteringsrækkefølge.
- id => brug samme ID som ID for spørgsmålet, det tilhører
- class => 'A'
- type/scale => skala_id -- 0 eller 1 (f.eks. for dobbeltskala)
- navn => kode -- den unikke svaridentifikator
- relevance => vurderingsværdi -- hvis vurderingsmuligheden bruges , dette er vurderingsværdien for svaret
- text => svar -- den sprogspecifikke tekst i svaret
- language => sprog -- sproget for dette svar (f.eks. 'en')
Evalueringer
En vurderingsrække pr. undersøgelsessprog (f.eks. ville der være 3 vurderingsrækker, hvis undersøgelsen har 3 sprog). Vurderinger skrives i slutningen af filen.
- id => unik numerisk identifikator for vurderingen, startende med nummer 1, brug samme ID for yderligere sprog, der tilhører den aktuelle vurdering
- related_id => id for gruppen til hvilken aktuelle vurdering hører til
- class => 'AS'
- type/scale => vurderingsomfang: T-Total, G-gruppe
- name => navn
- text => besked
- min_num_value => Minimum
- max_num_value => Maksimum
- language => sprog -- sproget for dette svar (f.eks. 'da')
Kvoter
En række pr. kvote. Kvoter skrives i slutningen af filen.
- id => unik numerisk identifikator for kvoten, startende med nummer 1
- class => 'QTA'
- name => kvotenavn
- obligatorisk => grænse
- other => kvotehandling
- default => aktiv
- same_default => autoload URL
Indstillinger for kvotesprog
Én kvoterække pr. undersøgelsessprog. Indstillinger for kvotesprog antages at tilhøre den kvote, der går forud for dem.
- id => unik numerisk identifikator for kvotesprogindstillingerne, begyndende med nummer 1. Hver række for forskellige undersøgelsessprog skal have forskellige id'er
- related_id => kvote-id for kvoten, som denne indstilling tilhører
- class => 'QTALS'
- relevance => besked
- text => URL
- help => URL-beskrivelse
- language => sprog -- sproget for denne kvote (f.eks. 'en')
Kvotemedlemmer
En række pr. kvotemedlem, ingen sprogafhængig. Kvotemedlemsrækken skal placeres umiddelbart efter det spørgsmål, den vedrører. Kvotemedlemmer antages at tilhøre spørgsmålet, der går forud for dem.
- id => unik numerisk identifikator for kvotemedlemmerne, begyndende med nummer 1
- related_id => kvote-id for kvoten, som dette medlem tilhører! N!#class => 'QTAM'
- name => svarkode
Betingelser
En række pr. betingelse, ingen sprogafhængig. Tilstandsrækken skal placeres umiddelbart efter det spørgsmål, den vedrører. Betingelser antages at tilhøre spørgsmålet, der går forud for dem.
- id => unik numerisk identifikator for betingelsen, startende med nummer 1.
- related_id => spørgsmåls-id for relateret spørgsmål, hvis relevant
- klasse => 'C'
- type/scale => scenario
- name => svarfeltnavn
- relevans => sammenligningsoperator
- text => forventet svar