Demo http://fgv-goal.mybluemix.net
Um padrão para montagem de arquivos foi estabelicido para auxiliar a manutenção de um baco de questões colaborativo inspirado no GOAL - Gradiance On-Line Accelerated Learning
O XML é uma linguagem de marcação flexível usados para atribuir explicitamente significado ou formatação a arquivos de texto. Mais informações podem ser encontradas nas seguintes fontes:
- w3school http://www.w3schools.com/xml/xml_whatis.asp
- outro site com tutoriais http://www.xmlfiles.com/xml
As tags e seus respectivos atributos, que usaremos na produção das questões, futuramente definidas em um Xml Schema são:
- question
- tag raiz do documento.
- level
- inteiro de 1 a 3, indicando em de forma crescente a dificuldade da questão.
- subject
- string qualquer indiciando o assunto relativo à questão.
- id
- indetificador único para a questão.
- text
- uma área de texto, que pode estar no enunciado ou no corpo de
uma opção.
- choice
- opção da questão.
- type
- string (correct ou incorrect), indicando se a opção está correta ou não.
- explanation
- explicação para uma determinada opção estar correta ou falsa.
- tags html
- qualquer tag html pode ser utilizada para formatação do texto.
xmllint --valid template-1.xml
O template-2.xml terá ainda erros de validação. E o que falta é dizer que todas as tags de XHTML válida dentro de uma tag p devem ser válidas para <text> e <explanation>. Também falta declarar corretamente os atributos que recebem URIs.
Um esquema será futuramente definido para validações dos arquivos xml, a fim de que as recomendações abaixo sejam atendidas.
- As tags text explanation e option, devem ser filhas de question.
- Qualquer tag html pode ocorrer dentro de question e explanation.
- Devem haver ao menos 5 opções, pelo menos 4 opções incorretas e pelo menos 1 correta.
- O atributo correct de option é obrigatório e deve se restringir aos valores ‘correct’ e ‘incorrect’.
- Para a criação das questões e respostas deve seguir as sugestões do http://gradiance.com.
- O atributo “level” deve indicar em de forma crescente a dificuldade da questão, utilizando um número inteiro de 1 a 3.
- O atributo “chapter”, deve ser utilizado como referência ao número do capítulo do livro Algorithms: Sanjoy Dasgupta, Christos Papadimitriou, Umesh Vazirani - 1st edition. Utilizar apenas o numeral referente ao capítulo.
- O elemento <explantation> imediatamente após o enunciado da questão, deve conter o gabarito da questão. Esse gabarito é divulgado para os estudantes posteriormente ao deadline da conclusão das questões.
- Dar preferência para referências auto-contidas. Caso necessário fazer referência a links externos, utilizar sites estáveis, como: WIKIPEDIA, STACKOVERFLOW, QUORA.
- Figuras devem ter no máximo 900px x 600px, formato png ou svg.