O que é um XLSForm?

O rtSurvey usa uma versão alargada do padrão XLSForm para design de formulários, oferecendo funcionalidades poderosas para criar inquéritos sofisticados. Este guia apresentará os conceitos-chave do design de formulários no rtSurvey, desde a estrutura básica do XLSForm até às funcionalidades avançadas específicas do rtSurvey.

Com os XLSForms, pode criar formulários num formato legível por humanos usando a familiar ferramenta Excel, tornando-o acessível a quase toda a gente. Este padrão facilita a partilha e colaboração na criação de formulários.

Embora os XLSForms sejam amigos dos iniciantes, também permitem a utilizadores experientes criar formulários complexos.

O rtSurvey fornece uma forma consistente de incorporar funcionalidades avançadas, como lógica de salto, em formulários em várias plataformas de recolha de dados web e móvel.

Estrutura do XLSForm

Um XLSForm consiste tipicamente em duas folhas de trabalho principais:

  1. survey: Define a estrutura e conteúdo do seu formulário.
  2. choices: Especifica as opções de resposta para perguntas de escolha múltipla.

Uma folha de trabalho settings opcional pode fornecer especificações adicionais do formulário.

É importante notar que as colunas obrigatórias nas folhas de trabalho survey e choices devem estar presentes para o formulário funcionar corretamente. As colunas opcionais em ambas as folhas de trabalho fornecem mais controlo sobre o comportamento de cada entrada no formulário, mas não são essenciais.

As colunas do seu livro de trabalho Excel podem aparecer em qualquer ordem, e as colunas opcionais podem ser deixadas em branco. No entanto, é crucial usar a sintaxe precisa e as convenções de nomenclatura especificadas na documentação do XLSForm para o formulário funcionar corretamente.

A folha de trabalho survey

A folha de trabalho survey é onde define a estrutura do seu formulário e fornece o conteúdo. Cada linha na folha de trabalho survey representa uma pergunta ou elemento no seu formulário. As seguintes colunas são obrigatórias na folha de trabalho survey:

  • type: Especifica o tipo de entrada que espera para a pergunta.
  • name: Especifica o nome de variável único para essa entrada. Os nomes devem começar com uma letra ou sublinhado e só podem conter letras, dígitos, hífenes, sublinhados e pontos. Os nomes são sensíveis a maiúsculas e minúsculas.
  • label: Contém o texto real que vê para a pergunta no formulário.
typenamelabel
todaytoday
select_one gendergenderGénero do respondente?
integerageIdade do respondente?

A folha de trabalho choices

A folha de trabalho choices é usada para especificar as opções de resposta para perguntas de escolha múltipla. Cada linha representa uma opção de resposta. As seguintes colunas são obrigatórias na folha de trabalho choices:

  • list_name: Agrupa um conjunto de opções de resposta relacionadas.
  • name: Especifica o nome de variável único para essa opção de resposta.
  • label: Mostra a opção de resposta exatamente como quer que apareça no formulário.
list_namenamelabel
gendertransgenderTransgénero
genderfemaleFeminino
gendermaleMasculino
genderotherOutro

As colunas que adiciona ao seu livro de trabalho Excel, quer sejam obrigatórias ou opcionais, podem aparecer em qualquer ordem. As colunas opcionais podem ser omitidas completamente. As linhas ou colunas podem ser deixadas em branco para facilitar a leitura, mas os dados após 20 colunas ou linhas em branco adjacentes numa folha não serão processados. Toda a formatação de ficheiros .xlsx é ignorada, por isso pode usar linhas divisórias, sombreamento e outra formatação de tipo de letra para tornar o formulário mais legível.

Uma coisa a ter em mente ao criar formulários no Excel é que a sintaxe que usa deve ser precisa. Por exemplo, se escrever Choices ou choice em vez de choices, o formulário não funcionará.

A folha de trabalho settings

A folha de trabalho settings é opcional, mas permite-lhe especificar metadados e comportamento ao nível do formulário. As colunas comuns na folha de trabalho settings incluem:

ColunaDescrição
form_titleO título do formulário como aparece para os utilizadores
form_idUm identificador único para o formulário, usado na gestão de dados e chamadas de API
default_languageO código de idioma predefinido para formulários multilingues (por ex., ’en’ para inglês)
versionO número de versão do formulário, útil para rastrear alterações
instance_nameExpressão para gerar um nome único para cada submissão de formulário
generationNúmero inteiro que marca a geração do formulário. Incremente para alterações estruturais
familyIdentificador para agrupar formulários relacionados ao longo de alterações estruturais

A folha de trabalho settings no rtSurvey também pode incluir configurações adicionais específicas das funcionalidades alargadas do rtSurvey. Consulte a documentação do rtSurvey para uma lista completa de configurações suportadas.

Componentes Principais da Folha de Trabalho Survey

A folha de trabalho survey é o núcleo do design do seu formulário. Aqui está uma visão geral dos seus componentes principais:

ComponenteDescrição
typeEspecifica o tipo de pergunta (por ex., text, integer, select_one)
nameIdentificador único para a pergunta
labelO texto exibido ao respondente
hintOrientação adicional para o respondente
appearanceModifica como a pergunta é exibida
relevantDetermina quando a pergunta deve ser feita (lógica de salto)
constraintValida a resposta
calculationCalcula valores com base noutras respostas
requiredEspecifica se a pergunta deve ser respondida

Cada um destes componentes desempenha um papel crucial na criação de inquéritos eficazes e eficientes. Clique nos links na coluna “Secção Detalhada” para saber mais sobre cada componente.

Tipos de perguntas

O XLSForm suporta vários tipos de perguntas. Estas são apenas algumas das opções que pode introduzir na coluna type na folha de trabalho survey no seu XLSForm:

Tipo de perguntaEntrada de resposta
integerEntrada de número inteiro (ou seja, número inteiro sem decimais).
decimalEntrada decimal.
rangeEntrada de intervalo (incluindo classificação)
textResposta de texto livre.
select_one [options]Questão de escolha múltipla; apenas uma resposta pode ser selecionada.
select_multiple [options]Questão de escolha múltipla; múltiplas respostas podem ser selecionadas.
select_one_from_file [file]Escolha múltipla a partir de ficheiro; apenas uma resposta pode ser selecionada.
select_multiple_from_file [file]Escolha múltipla a partir de ficheiro; múltiplas respostas podem ser selecionadas.
rank [options]Questão de classificação; ordenar uma lista.
noteExibir uma nota no ecrã, não requer entrada. Abreviação para type=text com readonly=true.
geopointRecolher uma única coordenada GPS.
geotraceRegistar uma linha de duas ou mais coordenadas GPS.
geoshapeRegistar um polígono de múltiplas coordenadas GPS; o último ponto é o mesmo que o primeiro.
dateEntrada de data.
timeEntrada de hora.
dateTimeAceita uma data e uma entrada de hora.
imageTirar uma foto ou carregar um ficheiro de imagem.
audioFazer uma gravação de áudio ou carregar um ficheiro de áudio.
background-audioO áudio é gravado em segundo plano enquanto preenche o formulário.
videoFazer uma gravação de vídeo ou carregar um ficheiro de vídeo.
fileEntrada de ficheiro genérico (txt, pdf, xls, xlsx, doc, docx, rtf, zip)
barcodeDigitalizar um código de barras, requer a instalação da aplicação de scanner de código de barras.
calculateEfetuar um cálculo; consulte a secção Cálculo abaixo.
acknowledgePrompt de confirmação que define o valor como “OK” se selecionado.
hiddenUm campo sem elemento de UI associado que pode ser usado para armazenar uma constante
xml-externalAdiciona uma referência a um ficheiro de dados XML externo

Etiquetas

As etiquetas são o texto exibido aos respondentes para cada pergunta. São cruciais para uma comunicação clara nos inquéritos.

  • Utilização básica: Na coluna label, introduza o texto da pergunta.
  • Múltiplos idiomas: Use colunas adicionais como label::English e label::French para inquéritos multilingues.
  • Formatação: O rtSurvey suporta formatação HTML básica nas etiquetas para ênfase ou estrutura.

Exemplo:

  | type | name | label | label::French |
|------|------|-------|---------------|
| text | name | Qual é o seu nome? | Quel est votre nom? |
  

Dicas

As dicas fornecem orientação adicional aos respondentes sem sobrecarregar o texto principal da pergunta.

  • Utilização: Adicione dicas na coluna hint.
  • Visibilidade: As dicas são tipicamente exibidas abaixo do texto principal da pergunta.
  • Multilingue: Como as etiquetas, as dicas podem ser especificadas para múltiplos idiomas usando colunas hint::Idioma.

Exemplo:

  | type | name | label | hint |
|------|------|-------|------|
| integer | age | Quantos anos tem? | Por favor introduza a sua idade em anos |
  

Aparência

A coluna appearance no rtSurvey permite a personalização de como as perguntas são exibidas.

  • Opções padrão: Incluem ‘multiline’ para texto, ‘horizontal’ para perguntas de seleção.
  • Extensões rtSurvey:
    • Entrada de hora: Várias opções de exibição de relógio (por ex., inline, inline-1line)
    • Personalização de cor: Use a função colors() para alterar as cores dos ícones

Exemplo:

  | type | name | label | appearance |
|------|------|-------|------------|
| text | time | Introduza a hora | inline-[%H:%M] |
  

Relevante

A coluna relevant implementa lógica de salto, determinando quando uma pergunta deve ser exibida.

  • Sintaxe: Use expressões XPath para definir condições.
  • Variáveis: Referencie outros nomes de perguntas usando ${question_name}.

Exemplo:

  | type | name | label | relevant |
|------|------|-------|----------|
| text | allergies | Listar alergias | ${has_allergies} = 'yes' |
  

Obrigatório

A coluna required especifica se uma pergunta deve ser respondida.

  • Utilização básica: Use ‘yes’ ou ’true’ para tornar uma pergunta obrigatória.
  • Avançado: Pode usar expressões para requisito condicional.

Exemplo:

  | type | name | label | required |
|------|------|-------|----------|
| text | email | Endereço de email | yes |
  

Repetições

As repetições permitem que um grupo de perguntas seja respondido múltiplas vezes.

  • Utilização: Use as linhas begin repeat e end repeat para definir um grupo repetitivo.
  • Nomenclatura: Dê a cada grupo de repetição um nome único.

Exemplo:

  | type | name | label |
|------|------|-------|
| begin repeat | household_member | Membro do agregado familiar |
| text | member_name | Nome |
| integer | member_age | Idade |
| end repeat | | |
  

Multimédia

O rtSurvey suporta vários tipos de multimédia em inquéritos, incluindo imagens, áudio e vídeo.

  • Tipos de pergunta: Use ‘image’, ‘audio’ ou ‘video’ na coluna type.
  • Multimédia em etiquetas: Referencie ficheiros de multimédia em etiquetas usando tags HTML.

Exemplo:

  | type | name | label |
|------|------|-------|
| image | house_photo | Tire uma foto da casa |
| note | | <img src="logo.jpg" /> Bem-vindo ao inquérito |
  

Somente leitura

As perguntas de apenas leitura exibem informação sem permitir entrada do utilizador.

  • Utilização: Adicione ‘readonly’ à coluna appearance.
  • Cálculos: Frequentemente usadas com o tipo calculate para exibir valores calculados.

Exemplo:

  | type | name | label | appearance | calculation |
|------|------|-------|------------|-------------|
| calculate | bmi | IMC | readonly | ${weight} / (${height} * ${height}) |
  

Extensões rtSurvey

O rtSurvey alarga o padrão XLSForm suportando capacidades adicionais como grid layout, html format e muitos novos widgets.

Layout em grelha

O rtSurvey permite que o seu formulário imite o aspeto de inquéritos tradicionais em papel compactando múltiplas perguntas numa linha.

Configurações do formulário

Configurações de dados

Estilo Typeform

Extensão de pulldata()

Extensões baseadas em aparência

Extensões Webbox

Esta página foi útil?