code: public void checkInvariant(INode node) throws InconsistentNodeModelException {
  		try {
  			doCheckInvariant(node.getRootNode());
  		} catch(ClassCastException e) {
  			throw new InconsistentNodeModelException("node has no root node", e);
  		} catch(NullPointerException e) {
  			throw new InconsistentNodeModelException("node's pointer is null", e);
  		}
  	}
docs: Assert the invariant of completely build node model.
  Checks that every pointer is correct, e.g.
  <ul>
  <li>a parent points to its first child,</li>
  <li>siblings point to the very same parent,</li>
  <li>the offset and length data is in sync, and</li>
  <li>no null fields are present (besides some empty first child pointers).</li>
  </ul>
  @param node an arbitrary node of the complete node model that should be checked.
  @throws InconsistentNodeModelException if the node is part of an inconsistent node tree.