docs: void doLoad(XMLReader r) throws KNXMLException
  	{
  		boolean main = false;
  		while (r.getPosition() == XMLReader.START_TAG) {
  			final String tag = r.getCurrent().getName();
  			if (tag.equals(TAG_EXPIRATION)) {
  				final String a = r.getCurrent().getAttribute(ATTR_TIMEOUT);
  				if (a != null)
  					try {
  						timeout = Integer.decode(a).intValue();
  					}
  					catch (final NumberFormatException e) {
  						throw new KNXMLException("malformed attribute timeout, " + a,
  							null, r.getLineNumber());
  					}
  			}
  			else if (tag.equals(TAG_UPDATING))
  				while (r.read() == XMLReader.START_TAG)
  					updating.add(new GroupAddress(r));
  			else if (tag.equals(TAG_INVALIDATING))
  				while (r.read() == XMLReader.START_TAG)
  					invalidating.add(new GroupAddress(r));
  			else if (!main) {
  				super.doLoad(r);
  				main = true;
  			}
  			else
  				throw new KNXMLException("invalid element", tag, r.getLineNumber());
  			r.read();
  		}
  	}