<?xml version="1.0" encoding="UTF-8"?>
<otrunk>
  <imports>
	<import class="org.concord.otrunk.OTSystem" />
	<import class="org.concord.otrunk.view.OTViewEntry" />
	<import class="org.concord.otrunk.view.OTViewBundle" />
	<import class="org.concord.otrunk.view.document.OTCompoundDoc" />
	<import class="org.concord.otrunk.ui.OTTextPane" />
	<import class="org.concord.otrunkcapa.OTMultimeterRubric" />
	<import class="org.concord.otrunkcapa.rubric.OTRubric" />
	<import class="org.concord.otrunkcapa.rubric.OTRubricIndicator" />
	<import class="org.concord.otrunkcapa.rubric.OTRubricIndicatorValue" />
	<import class="org.concord.otrunkcapa.rubric.OTRubricIndicatorRange" />
  </imports>
  <objects>
    <OTSystem>
	  <bundles>
		<OTViewBundle showLeftPanel="false">
		  <viewEntries>
			<OTViewEntry 
			    objectClass="org.concord.otrunk.view.document.OTDocument" 
			    viewClass="org.concord.otrunk.view.document.OTDocumentView" />
      	    <OTViewEntry 
			    objectClass="org.concord.otrunk.ui.OTTextPane" 
			    viewClass="org.concord.otrunk.ui.swing.OTTextPaneView" />
			<OTViewEntry
			    objectClass="org.concord.otrunkcapa.rubric.OTRubric"
			    viewClass="org.concord.otrunkcapa.rubric.view.OTRubricSplitPaneView"/>
			<OTViewEntry
				objectClass="org.concord.otrunkcapa.rubric.OTRubricIndicator"
				viewClass="org.concord.otrunkcapa.rubric.view.OTRubricIndicatorView" />
			<OTViewEntry
				objectClass="org.concord.otrunkcapa.rubric.OTRubricIndicatorValue"
				viewClass="org.concord.otrunkcapa.rubric.view.OTRubricIndicatorValueView" />
			<OTViewEntry
				objectClass="org.concord.otrunkcapa.rubric.OTRubricIndicatorRange"
				viewClass="org.concord.otrunkcapa.rubric.view.OTRubricIndicatorRangeView" />
		  </viewEntries>
		</OTViewBundle>
	  </bundles>
	  <root>
		<OTCompoundDoc name="Rubric for O'scope">
		  <bodyText>
			<div style="padding-top: 8px; padding-left: 10px; padding-right: 10px; padding-bottom: 10px">
			  <object refid="${intro_text}"/>
			</div>
			<object refid="${oscope_rubric}"/>
		  </bodyText>
		</OTCompoundDoc>
	  </root>
	  <library>
		<OTTextPane local_id="intro_text" name="Introduction">
		  <text>
			This is the rubric builder for the Oscilloscope assessment. Students will be scored based on the indicators below. 
			To change the scoring, click on a row below and adjust the points given for each performance indicator. 
			These values can be modified at anytime and student work will be regraded accordingly. 
			<!-- Click the Close button to save your changes. -->
		  </text>
		</OTTextPane>
		<OTRubric id="cb340eaf-1b54-4066-973d-f8b64cf39fdb" local_id="oscope_rubric" name="Rubric for Oscilloscope">
		  <defaultIndicatorValues>
			<OTRubricIndicatorValue local_id="def_0" value="-1" category="Unknown" label="?" description="Value undefined or unknown" points="0"/>
			<OTRubricIndicatorValue local_id="def_1" value="-2" category="Invalid" label="N/A" description="Value doesn't apply" points="0"/>
		  </defaultIndicatorValues>
		  <indicators>
			<OTRubricIndicator name="carrierFrequencyValue" label="Carrier Frequency Value" description="Frequency correct?">
			  <possibleValues>
				<OTRubricIndicatorValue local_id="frq_0" value="0" category="0" label="Wrong" description="The answer is far from the correct value, or the given unit was wrong." points="0"/>			    			
				<OTRubricIndicatorValue local_id="frq_1" value="1" category="1" label="Close w/ wrong unit" description="The answer would have been close with the correct unit" points="1"/>
				<OTRubricIndicatorValue local_id="frq_2" value="2" category="2" label="Correct w/ wrong unit" description="The answer would have been correct with the correct unit" points="3"/>
				<OTRubricIndicatorValue local_id="frq_3" value="3" category="3" label="Close" description="The answer is close to the correct value" points="5"/>
				<OTRubricIndicatorValue local_id="frq_4" value="4" category="4" label="Correct" description="Correct Answer" points="10"/>
			  </possibleValues>
			</OTRubricIndicator>
			<OTRubricIndicator name="carrierFrequencyUnit" label="Carrier Frequency Unit" description="Correct unit for frequency?">
			  <possibleValues>
				<OTRubricIndicatorValue local_id="frq_unit_0" value="0" category="Bad" label="Bad" description="Wrong unit" points="0"/>			    			
				<OTRubricIndicatorValue local_id="frq_unit_1" value="1" category="Good" label="Good" description="Unit is of correct dimension" points="5"/>
			  </possibleValues>
			</OTRubricIndicator>
			<OTRubricIndicator name="modFrequencyValue" label="Modulator Frequency" description="Frequency correct?">
			  <possibleValues>
				<OTRubricIndicatorValue local_id="mfrq_0" value="0" category="0" label="Wrong" description="The answer is far from the correct value, or the given unit was wrong." points="0"/>			    			
				<OTRubricIndicatorValue local_id="mfrq_1" value="1" category="1" label="Close w/ wrong unit" description="The answer would have been close with the correct unit" points="1"/>
				<OTRubricIndicatorValue local_id="mfrq_2" value="2" category="2" label="Correct w/ wrong unit" description="The answer would have been correct with the correct unit" points="3"/>
				<OTRubricIndicatorValue local_id="mfrq_3" value="3" category="3" label="Close" description="The answer is close to the correct value" points="5"/>
				<OTRubricIndicatorValue local_id="mfrq_4" value="4" category="4" label="Correct" description="Correct Answer" points="10"/>
			  </possibleValues>
			</OTRubricIndicator>
			<OTRubricIndicator name="modFrequencyUnit" label="Modulator Frequency Unit" description="Correct unit for frequency?">
			  <possibleValues>
				<OTRubricIndicatorValue local_id="mfrq_unit_0" value="0" category="Bad" label="Bad" description="Wrong unit" points="0"/>			    			
				<OTRubricIndicatorValue local_id="mfrq_unit_1" value="1" category="Good" label="Good" description="Unit is of correct dimension" points="5"/>
			  </possibleValues>
			</OTRubricIndicator>
			<OTRubricIndicator name="modIndex" label="Modulation Index" description="Correct value for modulation index?">
			  <possibleValues>
				<OTRubricIndicatorValue local_id="midx_unit_0" value="0" category="Bad" label="Wrong" description="Wrong" points="0"/>			    			
				<OTRubricIndicatorValue local_id="midx_unit_1" value="1" category="Good" label="Right" description="Right" points="15"/>
			  </possibleValues>
			</OTRubricIndicator>
			<OTRubricIndicator name="numChanges" label="# of Changes" description="Number of changes made to oscilloscope">
			  <possibleRanges>
			    <OTRubricIndicatorRange local_id="nchg_0"               maxValue="25" category="Good" label="Good" description="Minimal # of operations" points="5"/> 
			    <OTRubricIndicatorRange local_id="nchg_1" minValue="25" maxValue="40" category="OK" label="OK" description="More than necessary number of operations" points="2"/>
			    <OTRubricIndicatorRange local_id="nchg_2" minValue="40"                 category="Bad" label="Bad" description="Too many operations" points="0"/>
			  </possibleRanges>
			</OTRubricIndicator>
			<OTRubricIndicator name="timeTotal" label="Time Total" description="Total time taken in seconds">
			  <possibleRanges>
			    <OTRubricIndicatorRange local_id="time_0"                maxValue="420" category="Good" label="Good"    description="Under 7 minutes" points="5"/> 
			    <OTRubricIndicatorRange local_id="time_1" minValue="420" maxValue="900" category="OK"   label="OK" description="7-15 minutes" points="2"/>
			    <OTRubricIndicatorRange local_id="time_2" minValue="900"                category="Bad"  label="Bad"    description="Over 15 minutes" points="0"/>
			  </possibleRanges>
			</OTRubricIndicator>
			<OTRubricIndicator name="controlSetting" label="Control Setting" description="Optimal setting of controls">
			  <possibleValues>
				<OTRubricIndicatorValue local_id="set_0" value="0" category="0" label="E" description="BAD setting for both carrier and modulator" points="0"/>
				<OTRubricIndicatorValue local_id="set_1" value="1" category="1" label="D" description="One OK one BAD" points="4"/>
				<OTRubricIndicatorValue local_id="set_2" value="2" category="2" label="C" description="OK for both or one GOOD one BAD" points="6"/>								
				<OTRubricIndicatorValue local_id="set_3" value="3" category="3" label="B" description="One GOOD and one OK" points="8"/>			    			
				<OTRubricIndicatorValue local_id="set_4" value="4" category="4" label="A" description="GOOD setting for both carrier and modulator" points="10"/>			    							
			  </possibleValues>
			</OTRubricIndicator>
		  </indicators>	
		</OTRubric>
	  </library>
	</OTSystem>
  </objects>
</otrunk>