diff --git a/src/main/java/org/olat/ims/qti21/ui/components/AssessmentObjectComponentRenderer.java b/src/main/java/org/olat/ims/qti21/ui/components/AssessmentObjectComponentRenderer.java
index 9e9e37a217512b33c2086e80fb5cdf7015248590..9bbda6d0c735076b78c5e9cf3f6702989348c7d1 100644
--- a/src/main/java/org/olat/ims/qti21/ui/components/AssessmentObjectComponentRenderer.java
+++ b/src/main/java/org/olat/ims/qti21/ui/components/AssessmentObjectComponentRenderer.java
@@ -117,6 +117,7 @@ import uk.ac.ed.ph.jqtiplus.node.content.xhtml.list.Dt;
 import uk.ac.ed.ph.jqtiplus.node.content.xhtml.list.Li;
 import uk.ac.ed.ph.jqtiplus.node.content.xhtml.list.Ol;
 import uk.ac.ed.ph.jqtiplus.node.content.xhtml.list.Ul;
+import uk.ac.ed.ph.jqtiplus.node.content.xhtml.object.Object;
 import uk.ac.ed.ph.jqtiplus.node.content.xhtml.table.Col;
 import uk.ac.ed.ph.jqtiplus.node.content.xhtml.table.Colgroup;
 import uk.ac.ed.ph.jqtiplus.node.content.xhtml.table.Table;
@@ -127,7 +128,7 @@ import uk.ac.ed.ph.jqtiplus.node.content.xhtml.table.Thead;
 import uk.ac.ed.ph.jqtiplus.node.content.xhtml.table.Tr;
 import uk.ac.ed.ph.jqtiplus.node.content.xhtml.text.Br;
 import uk.ac.ed.ph.jqtiplus.node.content.xhtml.text.Div;
-import uk.ac.ed.ph.jqtiplus.node.content.xhtml.object.Object;
+import uk.ac.ed.ph.jqtiplus.node.content.xhtml.text.Span;
 import uk.ac.ed.ph.jqtiplus.node.item.AssessmentItem;
 import uk.ac.ed.ph.jqtiplus.node.item.ModalFeedback;
 import uk.ac.ed.ph.jqtiplus.node.item.interaction.AssociateInteraction;
@@ -540,6 +541,10 @@ public abstract class AssessmentObjectComponentRenderer extends DefaultComponent
 				sb.append("<br/>");
 				break;
 			}
+			case Span.QTI_CLASS_NAME: {
+				renderSpan(renderer, sb, (Span)inline, component, resolvedAssessmentItem, itemSessionState, ubu, translator);
+				break;
+			}
 			case Object.QTI_CLASS_NAME: {
 				renderObject(sb, (Object)inline, component, resolvedAssessmentItem);
 				break;
@@ -556,10 +561,32 @@ public abstract class AssessmentObjectComponentRenderer extends DefaultComponent
 		}
 	}
 	
+	protected final void renderSpan(AssessmentRenderer renderer, StringOutput sb, Span span, AssessmentObjectComponent component,
+			ResolvedAssessmentItem resolvedAssessmentItem, ItemSessionState itemSessionState, URLBuilder ubu, Translator translator) {
+		Attribute<?> attrClass = span.getAttributes().get("class");
+
+		if(attrClass != null && attrClass.getValue() != null && attrClass.getValue().toString().equals("[math]")) {
+			String domid = "mw_" + CodeHelper.getRAMUniqueID();
+			sb.append("<span id=\"").append(domid).append("\">");
+			
+			renderStartHtmlTag(sb, component, resolvedAssessmentItem, span, null);
+			span.getInlines().forEach((child)
+					-> renderInline(renderer, sb, component, resolvedAssessmentItem, itemSessionState, child, ubu, translator));
+			renderEndTag(sb, span);
+			
+			sb.append("</span>")
+			  .append("\n<script type='text/javascript'>\n/* <![CDATA[ */\n jQuery(function() {setTimeout(function() { BFormatter.formatLatexFormulas('").append(domid).append("');}, 100); }); \n/* ]]> */\n</script>");
+		} else {
+			renderStartHtmlTag(sb, component, resolvedAssessmentItem, span, null);
+			span.getInlines().forEach((child)
+					-> renderInline(renderer, sb, component, resolvedAssessmentItem, itemSessionState, child, ubu, translator));
+			renderEndTag(sb, span);
+		}
+	}
+	
 	protected final void renderObject(StringOutput sb, Object object, AssessmentObjectComponent component, ResolvedAssessmentItem resolvedAssessmentItem) {
 		Attribute<?> attrId = object.getAttributes().get("id");
-		String id = attrId.getValue().toString();
-		if(id.startsWith("olatFlashMovieViewer")) {
+		if(attrId != null && attrId.getValue() != null && attrId.getValue().toString().startsWith("olatFlashMovieViewer")) {
 			//this is a OpenOLAT movie and need to be converted
 			/*
 			<span id="olatFlashMovieViewer213060" class="olatFlashMovieViewer" style="display:block;border:solid 1px #000; width:320px; height:240px;">
@@ -569,7 +596,7 @@ public abstract class AssessmentObjectComponentRenderer extends DefaultComponent
 			   // ]]></script>
 			</span>
 			*/
-
+			String id = attrId.getValue().toString();
 			Attribute<?> dataAttr = object.getAttributes().get("data");
 			String data = dataAttr.getValue().toString();
 			Attribute<?> attrDataMovie = object.getAttributes().get("data-oo-movie");