File:  [LON-CAPA] / loncom / html / adm / help / tex / Domain_Configuration_Scantron_Format.tex
Revision 1.8: download - view: text, annotated - select for diffs
Fri Dec 24 20:37:52 2021 UTC (2 years, 6 months ago) by raeburn
Branches: MAIN
CVS tags: version_2_12_X, version_2_11_X, version_2_11_5, version_2_11_4_uiuc, version_2_11_4_msu, version_2_11_4, HEAD
- Document options available for bubblesheet data upload in .csv format.

\label{Domain_Configuration_Scantron_Format}

\textbf{Bubblesheet format file}

Where bubblesheet exams are used in a course, the format of data in the
file generated from the processing of bubbled-in bubblesheets may
vary between institutions. The format definitions available when performing
bubblesheet grading in LON-CAPA were originally listed in the scantronformat.tab
file, stored in /home/httpd/lonTabs, which might have been modified
locally on each server. 

Starting with LON-CAPA 2.7, bubblesheet format information is read from
either a custom.tab file, or a default.tab file both of which belong
to the special domain configuration user (\$dom-domainconfig, where
\$dom is the name of the domain) and which are automatically published
into resource space. 

For LON-CAPA installations older than 2.7, when the primary library
server for the domain has been updated, a Domain Coordinator should
display the ``Bubblesheet format file'' configuration
page via ``Domain Configuration''. The first time
this page is displayed, a default.tab (a copy of the standard LON-CAPA
scantronformat.tab file), and a custom.tab (if the scantronform.tab
file currently on the server differs from the standard file) will
be copied and published. Thereafter any changes to bubblesheet format
files to be used for grading bubblesheet exams in courses from the domain
will be made via the Domain Configuration menu. Any scantronform.tab
files in /home/httpd/lonTab directories on servers in the domain will
no longer be used.

The settings available via ``Bubblesheet format file'' 
support upload of a new custom file, or deletion of an existing custom
file (in which case grading will default to use of the default.tab
file). An uploaded bubblesheet format file contains one or more lines
of colon-separated values for the parameters in the following order:

\begin{quote}
{\scriptsize name:description:CODEtype:CODEstart:CODElength:IDstart:IDlength:Qstart:Qlength:Qoff:Qon:PaperID:PaperIDlength:}
{\scriptsize FirstName:FirstNamelength:LastName:LastNamelength} 
\end{quote}

\begin{enumerate}
\item \emph{name} is the internal identifier used within LON-CAPA
\item \emph{description} is the text displayed for each option in
the {}``Format of data file'' dropdown in the Bubblesheet grading
screen.  The user will choose the appropriate format for the bubblesheet 
file currently being used for bubblesheet grading.
\item \emph{CODEtype} can be either 'none' 'letter' 'number' 
\item \emph{CODEstart}: (only matters if a CODE exists) column in the line where the CODE starts
\item \emph{CODElength}: length of the CODE
\item \emph{IDstart}: column where the student ID starts
\item \emph{IDlength}: length of the student ID
\item \emph{Qstart}: column where the information from the bubbled 'questions' start  
\item \emph{Qlength} is the number of characters in the raw data used to record the student's bubbled answer for each row on the bubblesheet.

If the raw data indicate bubble position by a letter or a number (e.g., A = first bubble or 1 = first bubble etc.) then the number of characters would be 1 (assuming 10 bubbles or less for the number case).  If however, bubble position is indicated by position of the Qon (bubbled) character, then each bubble row might have 10 characters (one for each of the 10 possible positions with Qon at the position bubbled and Qoff elsewhere, (e.g. if Qon = 1, Qoff = .  the portion of a student's record for a single bubble row might be:  ...1......  indicating position 4 was the one bubbled.
\item \emph{Qoff} is the character used to indicate an unfilled bubble, this is commonly a single blank space.
\item \emph{Qon} is the character used in the raw data generated by the bubblesheet scanner to indicate a filled-in bubble.

\emph{Qon} can be either:
\begin{itemize}
\item the symbol that says a bubble has been selected, or
\item 'letter' (for when the selected letter appears), or 
\item 'number' for when a number indicating the selected letter appears 
\end{itemize}
\item \emph{PaperID}: if the scanning process generates a unique number for each sheet scanned the column that this ID number starts in
\item \emph{PaperIDlength}: number of columns that comprise the unique ID number for the sheet of paper
\item \emph{FirstName}: column that the first name starts in
\item \emph{FirstNamelength}: number of columns that the first name spans
\item \emph{LastName}: column that the last name starts in
\item \emph{LastNamelength}: number of columns that the last name spans
\end{enumerate}
As an example, below are four different format lines: the first two
were used at MSU prior to 2006; the last two have been used since
then.

\begin{itemize}
\item msunocode:MSU without any CODE:none:0:0:57:9:77:10: :1:5:5:51:1:41:10 
\item msucode:MSU with CODE in separate location:letter:69:6:57:9:77:10:
:1:5:5:51:1:41:10 
\item msucodelet:MSU with CODE in separate location (letter format):-1:69:6:57:9:77:1:
:letter:5:5:51:1:41:10 
\item msucodenum:MSU with CODE in separate location (number format):-1:69:6:57:9:77:1:
:number:5:5:51:1:41:10
\end{itemize}

\textbf{Bubblesheet data upload formats}

Starting with LON-CAPA 2.11.3, bubblesheet data generated from the processing of bubbled-in bubblesheets to be uploaded to a course may either be column data (i.e., in a .dat file) or comma separated value data (in a .csv file). Internally in LON-CAPA all bubblesheet data will be stored in .dat format, with start and end column numbers for different pieces of information defined by one of the entries in custom.tab (if in use) or default.tab.

If the checkbox for csv data is checked then a CSV Column Mapping table will be displayed, which will be used to designate the column location in the CSV data (with 1 being the leftmost column) for each of:

\begin{itemize}
\item Paper ID
\item Last Name
\item First Name
\item Student ID
\item Section
\item CODE
\item First Question Response
\end{itemize}

Responses to additional question(s) should occur in column(s) immediately to the right of the column for the first question.  Besides mapping columns to contents, there are also three Yes/No options: 

\begin{itemize}
\item Remove first line in file?
\item Prepend 0s to PaperID?
\item Remove leading spaces?
\end{itemize}

If the original CSV data includes an initial row with column titles, indicate removal of the first line.  If the data in each column, is padded with spaces, indicate removal of leading spaces. Note: this will not remove spaces from data in any columns which are designated to contain question responses.

Note: the expectation is that all bubblesheet data in CSV format used in a domain will have the same arrangement of columns, so that  a ``CODE'' column will be present at the same location in data for both CODEd (i.e., anonymous) exams, and ``named'' exams, with the only difference being that the tables cells will be empty for that column in the case of bubblesheet data from students in a ``named'' exam.      

If both .dat and .csv formats are specified for the domain, then when either a user assigned a Bubblesheet Scanning Operator role in the domain or a Course Coordinator uploads bubblesheet data to a course, the uploader will specify the data format: Plain Text or CSV.  If CSV is chosen, and there is more than one bubblesheet type in the domain's default.tab (or custom.tab), then the uploader will also need to specify the bubblesheet type. 


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>