@Override
    public void startElement(final String uri, final String localName, final String tag, final Attributes attributes) throws SAXException {
        if (tag.equals("dmc")) {
            this.clear();
        }
        if (tag.equals("state")) {
            String stname = attributes.getValue("name");
            String fallstate = attributes.getValue("fallback");

            construct = new State(stname);

            if (first == null) {
                first = construct;
                current = construct;
            }

            fallbacks.put(stname, fallstate);
            estats.add(construct);
            hashstats.put(stname, construct);
        }
        if (tag.equals("connection")) {
            String cntag = attributes.getValue("tag");
            alfabet.add(cntag);
            String cncounter = attributes.getValue("counter");
            String cnto = attributes.getValue("to");
            String stname = construct.getName();
            Int i = new Int(Integer.parseInt(cncounter));
            connections.put(new Pair(stname, cntag), new Pair(cnto, i));
        }
    }