void data() throws ScriptException {
		String dataString = null;
		String dataLabel = null;
		switch (statementLength) {
		case 4:
		case 3:
			dataString = (String) statement[2].value;
		case 2:
			dataLabel = (String) statement[1].value;
			if (dataLabel.equalsIgnoreCase("clear")) {
				viewer.setData(null, null);
				return;
			}
			if (statementLength > 2)
				break;
		default:
			badArgumentCount();
		}
		String dataType = dataLabel + " ";
		dataType = dataType.substring(0, dataType.indexOf(" "));
		dataLabelString = new String[2];
		dataLabelString[0] = dataLabel;
		dataLabelString[1] = dataString;
		viewer.setData(dataType, dataLabelString);
		if (dataType.equalsIgnoreCase("model")) {
			// only if first character is "|" do we consider "|" to be new line
			char newLine = viewer.getInlineChar();
			if (dataString != null && dataString.length() > 0 && dataString.charAt(0) != newLine)
				newLine = '\0';
			viewer.loadInline(dataString, newLine);
			return;
		}
	}