Actions

Tab Separated Value survey structure/pl: Difference between revisions

From LimeSurvey Manual

(Created page with "==Pytania==")
(Created page with "Jeden wiersz na warunek, niezależnie od języka. Wiersz warunku należy umieścić bezpośrednio po pytaniu, którego dotyczy. Zakłada się, że warunki należą do pytania,...")
 
(11 intermediate revisions by the same user not shown)
Line 113: Line 113:




One question row per survey language (e.g., there would be 3 question rows if survey has 3 languages). Questions are assumed to belong to the group that precedes them.
Jeden wiersz pytań na każdy język ankiety (np. w przypadku ankiety w 3 językach byłyby 3 wiersze pytań). Zakłada się, że pytania należą do grupy, która je poprzedza.
#id => unique numeric identifier for the question, starting with number 1, use the same ID for additional languages belonging to current question
#id => unikalny numeryczny identyfikator pytania, zaczynając od cyfry 1, użyj tego samego identyfikatora dla dodatkowych języków należących do bieżącego pytania
#class => 'Q'
#class => ' Q'
#type/scale => type -- the (usually one letter) [[Question types|question type]] (e.g., 'M' is Multiple Choice)
#type/scale => typ -- (zwykle jednoliterowy) [[Typy pytań|typ pytania]] (np. „M” oznacza wielokrotny wybór)
#name => title -- the unique question name (the root of the qcode naming system)
#name => tytuł -- unikalna nazwa pytania (korzeń systemu nazewnictwa qcode)
#relevance => relevance -- the [[ExpressionScript - Presentation#Access_to_Variables|relevance equation]] for the question
#relevance => trafność -- [[ExpressionScript - Prezentacja#Access_to_Variables|równanie trafności]] dla pytania
#text => question -- the language-specific text of the question
#text => pytanie -- język -specyficzny tekst pytania
#help => help -- the language-specific help text
#help => pomoc -- tekst pomocy specyficzny dla języka
#language => language -- the language for the group (e.g., 'en')
#language => język -- język grupy (np. 'en')
#validation => preg -- the optional regular expression validation criteria for the question
#validation = > preg -- opcjonalne kryteria sprawdzania poprawności wyrażeń regularnych dla pytania
#mandatory => mandatory -- 'Y' if mandatory
#mandatory => obowiązkowe -- 'T' jeśli obowiązkowe
#other => other -- 'Y' if the "Other" option should be available (only for some question types)
#other => other -- 'T' jeśli powinna być dostępna opcja "Inne" (tylko dla niektórych typów pytań)
#default => default -- if set, this value is inserted into the defaultvalues table for this question
#default => default -- jeśli ustawione, ta wartość jest wstawiana do tabeli wartości domyślnych dla tego pytania
#same_default => same_default -- 'Y' for true, in which case any defaultvalue set for primary language applies to other languages
#same_default => same_default -- 'Y' dla prawdy, w takim przypadku każda wartość domyślna ustawiona dla języka podstawowego ma zastosowanie do innych języków




==Subquestions==
==Zapytania==




One subquestion row per survey language. Subquestions are assumed to belong to the question that precedes them.
Jeden wiersz pytania podrzędnego na język ankiety. Zakłada się, że pytania podrzędne należą do pytania, które je poprzedza.
#id => same unique numeric identifier which is used for the questions. Subquestions should use next available value, question and subquestion IDs should be different (e.g. use ID 1 for question and IDs 2, 3 and 4 for subquestions belonging to question 1, next question ID should be 5 and so on). Use the same subquestion ID for additional languages belonging to current subquestions.
#id => ten sam unikalny identyfikator numeryczny, który jest używany w pytaniach. Podpytania powinny używać następnej dostępnej wartości, identyfikatory pytań i podpytań powinny być różne (np. użyj identyfikatora 1 dla pytania i identyfikatorów 2, 3 i 4 dla podpytań należących do pytania 1, identyfikator następnego pytania powinien wynosić 5 itd.). Użyj tego samego identyfikatora pytania podrzędnego dla dodatkowych języków należących do bieżących pytań podrzędnych.
#class => 'SQ'
#class => 'SQ'
#type/scale => scale_id -- 0 or 1, depending upon question type (e.g. array text will have two scales)
#type/scale => identyfikator_skali -- 0 lub 1, w zależności od typu pytania (np. tekst tablicy będzie miał dwa skale)
#name => title -- the "name" of the subquestion, e.g. the one used for exclude_all_others
#name => tytuł -- "nazwa" pytania podrzędnego, np. ta używana do wykluczenia_all_others
#relevance => relevance -- (Future) to support subquestion-level relevance
#relevance => trafność -- (Przyszłość) w celu wsparcia trafności na poziomie podpytania
#text => question -- the language-specific text of the subquestion
#text => pytanie -- tekst pytania podrzędnego dla konkretnego języka
#help => help -- (Future) to support subquestion-level help
#help => pomoc -- (Przyszłość) do obsługi pomocy na poziomie pytania podrzędnego
#language => language -- the language for the subquestion
#language => język -- język dla pytania podrzędnego
#validation => preg -- (Future) to support subquestion-level regular expression validation (e.g. for address parts)
#validation => preg -- (Przyszłość) aby wspierać sprawdzanie poprawności wyrażeń regularnych na poziomie podpytania (np. dla części adresu)
#mandatory => mandatory -- (Future) to support subquestion-level mandatory (e.g. make only a few subquestions mandatory)
#mandatory => obowiązkowe -- (Przyszłość) aby wspierać obowiązkową walidację wyrażeń regularnych na poziomie pytania podrzędnego (np. utwórz tylko kilka pytań podrzędnych obowiązkowe)
#default => default -- if set, then this is the default value for the subquestion (inserted into defaultvalues table)
#default => default -- jeśli ustawione, to jest to domyślna wartość dla podpytania (wstawiona do tabeli wartości domyślnych)
#same_default => same_default -- if set, then the default for the primary language is  used for all other languages
#same_default => same_default -- jeśli ustawione, to wartość domyślna dla podstawowego języka jest używany we wszystkich innych językach




==Answers==
==Odpowiedzi==




One answer row per survey language (e.g., there would be 3 answer rows if survey has 3 languages). Answers are assumed to belong to the question that precedes them, and be in the desired sort order.
Jeden wiersz odpowiedzi na każdy język ankiety (np. w przypadku ankiety w 3 językach będą 3 wiersze odpowiedzi). Zakłada się, że odpowiedzi należą do pytania, które je poprzedza i mają żądaną kolejność sortowania.
#id => use the same ID as the ID of the question it belongs to
#id => użyj tego samego identyfikatora, co identyfikator pytania, do którego należą
#class => 'A'
#class => 'A'  
#type/scale => scale_id -- 0 or 1 (e.g. for dual-scale)
#type/scale => id_skali -- 0 lub 1 (np. dla podwójnej skali)
#name => code -- the unique answer identifier
#name => code -- unikalny identyfikator odpowiedzi
#relevance => assessment_value -- if using assessment option, this is the assessment value for the answer
#relevance => wartość_oceny -- w przypadku korzystania z opcji oceny , to jest wartość oceny odpowiedzi
#text => answer -- the language-specific text of the answer
#text => odpowiedź -- tekst odpowiedzi specyficzny dla języka
#language => language -- the language for this answer (e.g. 'en')
#language => język -- język tej odpowiedzi (np. „en”)




==Assessments==
==Oceny==




One assessment row per survey language (e.g., there would be 3 assessment rows if survey has 3 languages). Assessments are written at the end of file.
Jeden wiersz oceny na każdy język ankiety (np. w przypadku ankiety obejmującej 3 języki będą 3 wiersze oceny). Oceny zapisywane są na końcu pliku.
#id => unique numeric identifier for the assessment, starting with number 1, use the same ID for additional languages belonging to current assessment
#id => unikalny numeryczny identyfikator oceny, zaczynając od cyfry 1, użyj tego samego identyfikatora dla dodatkowych języków należących do aktualnej oceny
#related_id => id of group to which current assessment belongs to
#lated_id => identyfikator grupy do której do której należy aktualna ocena
#class => 'AS'
#class => 'AS'
#type/scale => assessment scope: T-Total, G-group
#type/scale => zakres oceny: T-Total, G-group
#name => name
#name => nazwa
#text => message
#text => wiadomość
#min_num_value => Minimum
#min_num_value => Minimum
#max_num_value => Maximum
#max_num_value => Maksimum
#language => language -- the language for this answer (e.g. 'en')
#language => język -- język tej odpowiedzi (np. 'en')




==Quotas==
==Przydziały==




One row per quota. Quotas are written at the end of file.
Jeden wiersz na kwotę. Kwoty zapisywane są na końcu pliku.
#id => unique numeric identifier for the quota, starting with number 1
#id => unikalny numeryczny identyfikator kontyngentu, zaczynający się od cyfry 1
#class => 'QTA'
#class => 'QTA'
#name => quota name
#name => nazwa kontyngentu
#mandatory => limit
# obowiązkowe => limit
#other => quota action
#other => akcja dotycząca limitu
#default => active
#default => aktywna
#same_default => autoload URL
#same_default => automatyczne ładowanie adresu URL




==Quota language settings==
==Ustawienia języka przydziału==




One quota row per survey language. Quota language settings are assumed to belong to the quota that precedes them.
Jeden wiersz przydziału na język ankiety. Zakłada się, że ustawienia języka kwotowego należą do poprzedzającego je limitu.
#id => unique numeric identifier for the quota language settings, starting with number 1. Each row for different survey languages should have different IDs
#id => unikalny numeryczny identyfikator ustawień języka kwotowego, zaczynając od cyfry 1. Każdy wiersz dla różnych języków ankiety powinien mieć różne identyfikatory
#related_id => quota id of quota to which this setting belongs to
#lated_id => identyfikator kwoty, do której należy to ustawienie
#class => 'QTALS'
#class => 'QTALS'
#relevance => message
#relevance => wiadomość
#text => URL
#text => URL
#help => URL description
#help => opis adresu URL
#language => language -- the language for this quota (e.g. 'en')
#language => język -- język dla tego przydziału (np. „en”)




==Quota members==
==Liczba członków==




One row per quota member, no language dependent. Quota member row should be placed immediately after question it relates to. Quota members are assumed to belong to the question that precedes them.
Jeden wiersz na członka przydziału, niezależnie od języka. Wiersz członka kwotowego należy umieścić bezpośrednio po pytaniu, którego dotyczy. Zakłada się, że członkowie kontyngentu należą do poprzedzającego ich pytania.
#id => unique numeric identifier for the quota members, starting with number 1
#id => unikalny numeryczny identyfikator członków kontyngentu, zaczynający się od cyfry 1
#related_id => quota id of quota to which this member belongs to
#lated_id => identyfikator kontyngentu, do którego należy ten członek! N!#class => 'QTAM'
#class => 'QTAM'
#name => kod odpowiedzi
#name => answer code




==Conditions==
==Warunki==




One row per condition, no language dependent. Condition row should be placed immediately after question it relates to. Conditions are assumed to belong to the question that precedes them.
Jeden wiersz na warunek, niezależnie od języka. Wiersz warunku należy umieścić bezpośrednio po pytaniu, którego dotyczy. Zakłada się, że warunki należą do pytania, które je poprzedza.
#id => unique numeric identifier for the condition, starting with number 1.
#id => unikalny numeryczny identyfikator warunku, zaczynający się od cyfry 1.
#related_id => question id of related question, if applicable
#lated_id => identyfikator pytania powiązanego, jeśli ma to zastosowanie
#class => 'C'
# class => 'C'
#type/scale => scenario
#type/scale => scenariusz
#name => answer field name
#name => nazwa pola odpowiedzi
#relevance => comparison operator
#relevance => operator porównania
#text => expected answer
#text => oczekiwana odpowiedź

Latest revision as of 09:04, 26 September 2023


Import i eksport wartości rozdzielonych tabulatorami struktury ankiety

Ta funkcja ma na celu ułatwienie korzystania z oprogramowania arkuszy kalkulacyjnych, takiego jak LibreOffice, Excel lub Dokumenty Google, do tworzenia i edytowania ankiet. Całkowicie eliminuje zależność od kodów SGQA.

Ta funkcja obsługuje import z plików z wartościami rozdzielanymi tabulatorami (TSV) zakodowanych w formacie ASCII lub UTF-8, które mają rozszerzenie .txt.


Template:Uwaga


Pierwsze kroki

Najłatwiej jest pobrać istniejącą ankietę i wyeksportować ją w formacie wartości rozdzielanych tabulatorami. Użyj normalnego przycisku eksportu ankiety i zamiast wybierać format .lss, wybierz „Format wartości oddzielonych tabulatorami (*.txt)”. Zostanie on zapisany jako plik wartości rozdzielanych tabulatorami w odpowiednim formacie (plik Unicode rozdzielany tabulatorami), ze wszystkimi poprawnymi nagłówkami kolumn.

Każdy arkusz kalkulacyjny obsługujący wartości rozdzielane tabulatorami jest w porządku (np. OpenOffice lub LibreOffice). LimeSurvey ignoruje wszelkie formatowanie w arkuszu kalkulacyjnym, ale możesz je dodać, jeśli Ci to pomoże.

Należy pamiętać, że wyeksportowany plik jest w formacie UTF-8 ze znacznikiem kolejności bajtów (BOM) jako pierwszymi trzema (ukrytymi) znakami. Jeśli dwukrotnie klikniesz plik .txt i spróbujesz otworzyć go bezpośrednio w programie Excel, nie otworzy się on poprawnie, ponieważ program Excel nie zdaje sobie sprawy, że jest on sformatowany w formacie UTF-8. Aby otworzyć te pliki w programie Excel, najpierw otwórz program Excel, następnie wybierz opcję Plik:Otwórz, wybierz plik .txt i powiedz programowi Excel, że używa kodowania UTF-8.

Będzie jeden wiersz dla każdej grupy, pytania, pytania dodatkowego i odpowiedzi. Istnieją także wiersze zawierające globalne zmienne ankiety oraz zmienne ankiety specyficzne dla języka. Język podstawowy zostanie wyświetlony jako pierwszy, a po nim pojawią się języki dodatkowe. Tak więc, jeśli istnieje wiele języków, cała zawartość języka podstawowego zostanie wyświetlona jako pierwsza (np. wszystkie grupy, pytania, pytania podrzędne i odpowiedzi). Następnie zostanie sporządzona przetłumaczona kopia dla każdego języka dodatkowego (z dokładnie tą samą liczbą i kolejnością lub wierszami dla przetłumaczonego zestawu).

Relacje wynikają z bliskości. Zatem pytania następujące po grupie są częścią tej grupy; pytania podrzędne następujące po pytaniu są częścią tego pytania, a odpowiedzi po pytaniu są częścią tego pytania. Dlatego nie musisz znać identyfikatorów (gid, qid, sqid), aby zadać jakiekolwiek pytania. Zostaną one obliczone automatycznie po imporcie. Tak naprawdę w tym formacie w ogóle nie używa się gid, qid ani sqid (ani kodów SGQA).


Wskazówki

Celem importu/eksportu wartości oddzielonych tabulatorami jest umożliwienie szybkiego zaprojektowania ankiety przy użyciu arkusza kalkulacyjnego. Oczekujemy, że będziesz często importował arkusz, sprawdzał jego ważność za pomocą funkcji „Pokaż logikę ankiety” i testował go. Za każdym razem, gdy go zaimportujesz, otrzymasz nową ankietę. Możesz więc otrzymać wiele częściowo opracowanych ankiet, ale to nie szkodzi. Po prostu wyrób sobie nawyk sprawdzania, który jest najnowszy, lub usuń stary po zaimportowaniu nowych. Ponieważ nigdy nie używasz kodów SGQA w wartości oddzielonej tabulatorami, nigdy nie musisz się martwić, jakie kody LimeSurvey przypisuje do kluczy głównej ankiety, grupy, pytań i odpowiedzi. Możesz więc importować i eksportować tak często, jak chcesz.

Oto kilka wygodnych rzeczy, które możesz zrobić, korzystając z tego podejścia do tworzenia narzędzi:

  1. Używaj tych samych odpowiedzi na wiele pytań. Po prostu skopiuj wiersze „A” i wklej po każdym pytaniu, które powinno mieć ten sam zestaw.
  2. Użyj tych samych pytań podrzędnych w przypadku wielu pytań. Po prostu skopiuj wiersze „SQ” i wklej je po każdym pytaniu, które tego potrzebuje.
  3. "Pętla" - używaj tej samej grupy wiele razy. Gdy grupa będzie już taka, jak chcesz, skopiuj ją tyle razy, ile potrzeba. Użyj filtrowania programu Excel, aby wyświetlić tylko wiersze „G” (dla grup) i użyj funkcji przeciągania kolumny programu Excel, aby zaktualizować równania istotności dla każdej grupy (np. w przypadku spisu ludności pierwszą trafnością może być „numPeople > 1”, następnym powinno być „numPeople > 2”. Funkcja przeciągania automatycznie zaktualizuje liczbę). Filtruj według wierszy „Q” i upewnij się, że każde pytanie ma unikalną wartość (np. powiedzmy, że nazwiesz swoje zmienne g1_q1, g1_q2, g1_qN, użyj funkcji Znajdź/Zamień, aby przekonwertować g1 na g2 drugiej grupy; g3 dla trzeciej itd.) .
  4. Ponowna kolejność pytań/grup. Po prostu zmień kolejność wierszy w pliku arkusza kalkulacyjnego.
  5. Testowanie modułów ankiety. W przypadku długich ankiet możesz podzielić testowanie na moduły. Po prostu utwórz nowe pliki arkuszy kalkulacyjnych dla każdego modułu, usuwając niepotrzebne wiersze. Pozwala to uniknąć konieczności wprowadzania dużej ilości danych do testowania późniejszych części ankiety.
  6. Testowanie pytań obowiązkowych. Częstą skargą nie jest konieczność wprowadzenia obowiązkowych wielu pytań, ale konieczność wyłączenia obowiązkowej funkcji na potrzeby testowania. Po prostu utwórz główny arkusz kalkulacyjny z obowiązkowym ustawieniem końcowych żądanych wartości. Następnie, aby to przetestować, wystarczy usunąć kolumnę „obowiązkowe” i zapisać wersję testową arkusza kalkulacyjnego. Po zaimportowaniu tej wersji żadne z pytań nie będzie obowiązkowe. Po zakończeniu testowania zaimportuj kopię wzorcową.
  7. Ustawianie wartości domyślnych. Zamiast korzystać z interfejsu GUI, możesz wprowadzić dowolne ustawienia domyślne w kolumnie domyślnej. Jest to szczególnie przydatne w przypadkach, gdy GUI nie pozwala na wprowadzenie żądanej wartości, np. wyrażenia, aby ustawić wartość domyślną dla elementów listy (np. zapełnianie listy z [[Uczestnicy ankiety|uczestnik ankiety] ] atrybut).
  8. Tłumaczenie. Możesz utworzyć kopie arkusza kalkulacyjnego – po jednej na każdy język. Uwzględnij wszystkie wiersze dotyczące języka podstawowego, następnie skopiuj i wklej je poniżej, a następnie przeciągnij, aby zmienić pole języka na język docelowy. Można je rozesłać do tłumaczy i po zakończeniu ponownie zintegrować w jednym pliku arkusza kalkulacyjnego.
  9. Zbiorcze ustawianie zaawansowanych atrybutów pytań. Możesz chcieć, aby wszystkie równania były widoczne (aby móc zobaczyć ich wartości podczas zbierania danych), ale następnie ukryj je wszystkie przed przejściem do środowiska produkcyjnego. Po prostu przefiltruj arkusz kalkulacyjny według klasy = 'Q' i typu pytania = '*' (równanie) i ustaw Always_hide na 1 dla każdego z tych pytań. Podobnie, powiedzmy po utworzeniu ankiety, decydujesz, które pytania powinny pojawiać się w statystykach publicznych. Zamiast edytować każde pytanie w interfejsie GUI, przefiltruj według klasy = 'Q' i ustaw public_statistics = 1 dla wszystkich pytań, które powinny być widoczne w statystykach.
  10. Znajdź i zamień. Załóżmy, że zdecydowałeś, że musisz zmienić sformułowania we wszystkich swoich pytaniach. Możesz użyć funkcji Znajdź i zamień w programie Excel, aby wprowadzić te zmiany. Podobnie, załóżmy, że zdecydujesz się na zbiorczą zmianę nazw zmiennych, na ratunek może przyjść funkcja Znajdź i zamień. Jeśli potrzebujesz funkcji znajdowania i zamieniania na podstawie wyrażeń regularnych, możesz wybrać żądaną kolumnę, skopiować ją do edytora tekstu, znaleźć i zamienić, a następnie wkleić kolumnę z powrotem do arkusza kalkulacyjnego.
  11. 'Uzyskiwanie zatwierdzeń '. Jeśli prowadzisz badania, możesz mieć komisję ds. oceny instytucjonalnej, która nalega na zapoznanie się z tekstem pytań. Może to być wygodny sposób udostępniania. Podobnie w przypadku rozmów z klientem.
  12. Konsensus zespołu. Jeśli chcesz, aby grupa zgodziła się na treść lub wygląd pytania lub grupy, możesz szybko stworzyć prototyp/edytować arkusz kalkulacyjny, zaimportować go i pokazać zespołowi (poprzez podgląd pytania lub grupy) dokładnie to, co zobaczą użytkownicy . W ten sposób możesz uzyskać zgodę zespołu, zanim opuści on salę, zamiast dokumentować wymagania, budować je i uzyskiwać zgodę na przyszłych spotkaniach.
  13. Aktualizacja z innych formatów ankiet. Jeśli ankieta jest w formacie XML, Word lub innym, możesz utworzyć proces tłumaczenia, aby odwzorować ją na ten format. Chociaż można również spróbować mapowania do formatu .lss, zaletą tego formatu jest to, że nie wymaga śledzenia relacji klucza obcego pomiędzy grupami, pytaniami, pytaniami podrzędnymi, odpowiedziami i wartościami domyślnymi.


Ograniczenia

  1. Z założenia ta funkcja działa poprawnie tylko w ankietach, które używają nazewnictwa qcode (a nie SGQA). Funkcja ta zakłada, że nazwy zmiennych (identyfikatory pytań) są unikalne w całej ankiecie. Nazwy pytań podrzędnych mogą się powtarzać, o ile są unikalne w ramach danego pytania.


Format pliku

Ogólne

Używamy tego samego zestawu nagłówków kolumn do wielu celów. Pierwsze 14 kolumn służy różnym celom w zależności od typu jednostki (np. grupa, pytanie, odpowiedź). Pozostałe kolumny to alfabetyczna lista nazw pól bazy danych dla kodów pytań zaawansowanych. Poniżej znajduje się składnia każdego typu jednostki

Pierwsze 14 kolumn to:

  1. id (New in 3.14.0 )
  2. lated_id (New in 3.14.0 )
  3. class
  4. type/scale
  5. nazwa
  6. trafność
  7. tekst
  8. pomoc
  9. język
  10. weryfikacja
  11. obowiązkowe
  12. inne
  13. domyślne
  14. same_default
 Hint: Kolumny id i powiązane_id są używane tylko w przypadku limitu i są opcjonalne. Jeśli nie masz limitu, możesz bezpośrednio usunąć te 2 kolumny.


Globalne parametry ankiety

W tabeli ankiet przypada jeden wiersz na każdy parametr.

  1. class => 'S'
  2. name => nazwa pola bazy danych
  3. text => wartość


Parametry specyficzne dla języka ankiety

W tabeli Surveys_languagessettings znajduje się jeden wiersz na pole na każdy język. Wszystkie wpisy dla danego języka są zbierane przed wstawieniem do tej tabeli.

  1. class => 'SL'
  2. name => nazwa pola bazy danych
  3. text => wartość
  4. language = > język


Grupy

Jeden wiersz grupy na każdy język ankiety (np. byłyby 3 wiersze grupy, gdyby ankieta obejmowała 3 języki).

  1. id => unikalny numeryczny identyfikator grupy, zaczynając od cyfry 1, użyj tego samego identyfikatora dla dodatkowych języków należących do bieżąca grupa
  2. class => 'G'
  3. name => nazwa_grupy -- unikalny identyfikator grupy
  4. relevance => grelevance -- równanie istotności na poziomie grupy, bez nawiasów klamrowych
  5. text => opis -- opis grupy specyficzny dla języka
  6. language => język -- język grupy (np. 'en')


Pytania

Jeden wiersz pytań na każdy język ankiety (np. w przypadku ankiety w 3 językach byłyby 3 wiersze pytań). Zakłada się, że pytania należą do grupy, która je poprzedza.

  1. id => unikalny numeryczny identyfikator pytania, zaczynając od cyfry 1, użyj tego samego identyfikatora dla dodatkowych języków należących do bieżącego pytania
  2. class => ' Q'
  3. type/scale => typ -- (zwykle jednoliterowy) typ pytania (np. „M” oznacza wielokrotny wybór)
  4. name => tytuł -- unikalna nazwa pytania (korzeń systemu nazewnictwa qcode)
  5. relevance => trafność -- równanie trafności dla pytania
  6. text => pytanie -- język -specyficzny tekst pytania
  7. help => pomoc -- tekst pomocy specyficzny dla języka
  8. language => język -- język grupy (np. 'en')
  9. validation = > preg -- opcjonalne kryteria sprawdzania poprawności wyrażeń regularnych dla pytania
  10. mandatory => obowiązkowe -- 'T' jeśli obowiązkowe
  11. other => other -- 'T' jeśli powinna być dostępna opcja "Inne" (tylko dla niektórych typów pytań)
  12. default => default -- jeśli ustawione, ta wartość jest wstawiana do tabeli wartości domyślnych dla tego pytania
  13. same_default => same_default -- 'Y' dla prawdy, w takim przypadku każda wartość domyślna ustawiona dla języka podstawowego ma zastosowanie do innych języków


Zapytania

Jeden wiersz pytania podrzędnego na język ankiety. Zakłada się, że pytania podrzędne należą do pytania, które je poprzedza.

  1. id => ten sam unikalny identyfikator numeryczny, który jest używany w pytaniach. Podpytania powinny używać następnej dostępnej wartości, identyfikatory pytań i podpytań powinny być różne (np. użyj identyfikatora 1 dla pytania i identyfikatorów 2, 3 i 4 dla podpytań należących do pytania 1, identyfikator następnego pytania powinien wynosić 5 itd.). Użyj tego samego identyfikatora pytania podrzędnego dla dodatkowych języków należących do bieżących pytań podrzędnych.
  2. class => 'SQ'
  3. type/scale => identyfikator_skali -- 0 lub 1, w zależności od typu pytania (np. tekst tablicy będzie miał dwa skale)
  4. name => tytuł -- "nazwa" pytania podrzędnego, np. ta używana do wykluczenia_all_others
  5. relevance => trafność -- (Przyszłość) w celu wsparcia trafności na poziomie podpytania
  6. text => pytanie -- tekst pytania podrzędnego dla konkretnego języka
  7. help => pomoc -- (Przyszłość) do obsługi pomocy na poziomie pytania podrzędnego
  8. language => język -- język dla pytania podrzędnego
#validation => preg -- (Przyszłość) aby wspierać sprawdzanie poprawności wyrażeń regularnych na poziomie podpytania (np. dla części adresu)
  1. mandatory => obowiązkowe -- (Przyszłość) aby wspierać obowiązkową walidację wyrażeń regularnych na poziomie pytania podrzędnego (np. utwórz tylko kilka pytań podrzędnych obowiązkowe)
  2. default => default -- jeśli ustawione, to jest to domyślna wartość dla podpytania (wstawiona do tabeli wartości domyślnych)
  3. same_default => same_default -- jeśli ustawione, to wartość domyślna dla podstawowego języka jest używany we wszystkich innych językach


Odpowiedzi

Jeden wiersz odpowiedzi na każdy język ankiety (np. w przypadku ankiety w 3 językach będą 3 wiersze odpowiedzi). Zakłada się, że odpowiedzi należą do pytania, które je poprzedza i mają żądaną kolejność sortowania.

  1. id => użyj tego samego identyfikatora, co identyfikator pytania, do którego należą
  2. class => 'A'
  3. type/scale => id_skali -- 0 lub 1 (np. dla podwójnej skali)
  4. name => code -- unikalny identyfikator odpowiedzi
  5. relevance => wartość_oceny -- w przypadku korzystania z opcji oceny , to jest wartość oceny odpowiedzi
  6. text => odpowiedź -- tekst odpowiedzi specyficzny dla języka
  7. language => język -- język tej odpowiedzi (np. „en”)


Oceny

Jeden wiersz oceny na każdy język ankiety (np. w przypadku ankiety obejmującej 3 języki będą 3 wiersze oceny). Oceny zapisywane są na końcu pliku.

  1. id => unikalny numeryczny identyfikator oceny, zaczynając od cyfry 1, użyj tego samego identyfikatora dla dodatkowych języków należących do aktualnej oceny
  2. lated_id => identyfikator grupy do której do której należy aktualna ocena
  3. class => 'AS'
  4. type/scale => zakres oceny: T-Total, G-group
  5. name => nazwa
  6. text => wiadomość
  7. min_num_value => Minimum
  8. max_num_value => Maksimum
  9. language => język -- język tej odpowiedzi (np. 'en')


Przydziały

Jeden wiersz na kwotę. Kwoty zapisywane są na końcu pliku.

  1. id => unikalny numeryczny identyfikator kontyngentu, zaczynający się od cyfry 1
  2. class => 'QTA'
  3. name => nazwa kontyngentu
  4. obowiązkowe => limit
  5. other => akcja dotycząca limitu
  6. default => aktywna
  7. same_default => automatyczne ładowanie adresu URL


Ustawienia języka przydziału

Jeden wiersz przydziału na język ankiety. Zakłada się, że ustawienia języka kwotowego należą do poprzedzającego je limitu.

  1. id => unikalny numeryczny identyfikator ustawień języka kwotowego, zaczynając od cyfry 1. Każdy wiersz dla różnych języków ankiety powinien mieć różne identyfikatory
  2. lated_id => identyfikator kwoty, do której należy to ustawienie
  3. class => 'QTALS'
  4. relevance => wiadomość
  5. text => URL
  6. help => opis adresu URL
#language => język -- język dla tego przydziału (np. „en”)


Liczba członków

Jeden wiersz na członka przydziału, niezależnie od języka. Wiersz członka kwotowego należy umieścić bezpośrednio po pytaniu, którego dotyczy. Zakłada się, że członkowie kontyngentu należą do poprzedzającego ich pytania.

  1. id => unikalny numeryczny identyfikator członków kontyngentu, zaczynający się od cyfry 1
  2. lated_id => identyfikator kontyngentu, do którego należy ten członek! N!#class => 'QTAM'
  3. name => kod odpowiedzi


Warunki

Jeden wiersz na warunek, niezależnie od języka. Wiersz warunku należy umieścić bezpośrednio po pytaniu, którego dotyczy. Zakłada się, że warunki należą do pytania, które je poprzedza.

  1. id => unikalny numeryczny identyfikator warunku, zaczynający się od cyfry 1.
  2. lated_id => identyfikator pytania powiązanego, jeśli ma to zastosowanie
  3. class => 'C'
  4. type/scale => scenariusz
  5. name => nazwa pola odpowiedzi
  6. relevance => operator porównania
  7. text => oczekiwana odpowiedź