Write a questionnaire in Word and turn it into a LimeSurvey file,
with a new experimental set of functions:
lss_template_docx() writes a blank form to fill in,
read_form_docx() reads a filled one back, and
check_form_docx() reports everything wrong with it in one
pass. Blank forms can also be downloaded from the package website, for
authors who do not use R.
write_form_docx() renders a specification as that
same form, and as_lss_spec() turns an existing survey into
a specification, so a questionnaire can leave LimeSurvey, be edited in
Word and come back.
write_lss() now writes every declared language, not
only the first.
lss_template_docx() can write a blank form for a
multilingual questionnaire, independently of the language of the form’s
own labels.
lss_spec() gains an optional group
description and quota limit.
read_lss() is about ten times faster on a large
survey.
read_lss() now fails with a clear error on a
malformed, truncated or non-UTF-8 file, instead of terminating the R
session on some platforms.
New experimental authoring layer. lss_spec()
describes a questionnaire in R – groups, 21 question kinds, answer
options (including “other” and exclusive choices), display conditions
and quotas – and validates it against what LimeSurvey accepts.
write_lss() then writes it as a LimeSurvey 6
.lss file ready to import. Both functions are experimental
and their interface may change.
lss_spec() accepts texts in several languages
(languages = c("fr", "en"), each text given as a named
vector), but write_lss() emits the primary language only
for now. Multilingual output is planned for 0.3.0.
read_lss() now warns (class
lssdoc_newer_dbversion) when a file comes from a newer
LimeSurvey than the package targets, instead of reading it
silently.
In the table layout, the “Type” column no longer wraps one-word labels such as “Computed” onto a second line.
read_lss() now returns a clear error on a non-XML or
empty file, instead of, on some systems, crashing the R session.