code: private void ensureCorrectChildPositions() throws FrameworkException {
  
  		final List<Relation<T, T, OneStartpoint<T>, ManyEndpoint<T>>> childRels = treeGetChildRelationships();
  		int position = 0;
  
  		for (Relation<T, T, OneStartpoint<T>, ManyEndpoint<T>> childRel : childRels) {
  			childRel.setProperty(getPositionProperty(), position++);
  		}
  	}
docs: Ensures that the position attributes of the AbstractChildren of this
  node are correct. Please note that this method needs to run in the
  same transaction as any modifiying operation that changes the order
  of child nodes, and therefore this method does _not_ create its own
  transaction. However, it will not raise a NotInTransactionException
  when called outside of modifying operations, because each setProperty
  call creates its own transaction.