code: public synchronized void addTextNode(String text) throws IOException {
  		// check for non-empty string
  		if(text == null || text.trim().length() == 0) {
  			return;
  		}
  		// reject modification of already closed node
  		if(isOpen==false) {
  			throw new IOException("Attempted to add child text node to already closed tag '" + name + "'!");
  		}
  		if(lastChildNode==null) {
  			// no child nodes yet, close opening tag
  			writer.write(">");
  		} else {
  			// close previous sibling and move to new line
  			// FIXME: is this a legal situation, and if: how do we format this issue nicely?
  			lastChildNode.close();
  			writer.write("\n");
  			indentLine();
  		}
  		SXTextNode textNode = new SXTextNode(text, writer, tabLevel, tabString);
  		lastChildNode = textNode;
  	}
docs: Adds a text child node to this node.
  <b>WARNING:</b> This will close the last added child node, if applicable!
  
  @param text Text to be added