public XMLElement save() {
        XMLElement arrowLink = new XMLElement();
        arrowLink.setName("arrowlink");

        if (style != null) {
            arrowLink.setAttribute("STYLE", style);
        }
        if (getUniqueId() != null) {
            arrowLink.setAttribute("ID", getUniqueId());
        }
        if (color != null) {
            arrowLink.setAttribute("COLOR", Tools.colorToXml(color));
        }
        if (getDestinationLabel() != null) {
            arrowLink.setAttribute("DESTINATION", getDestinationLabel());
        }
        if (getReferenceText() != null) {
            arrowLink.setAttribute("REFERENCETEXT", getReferenceText());
        }
        if (getStartInclination() != null) {
            arrowLink.setAttribute("STARTINCLINATION",
                    Tools.PointToXml(getStartInclination()));
        }
        if (getEndInclination() != null) {
            arrowLink.setAttribute("ENDINCLINATION",
                    Tools.PointToXml(getEndInclination()));
        }
        if (getStartArrow() != null)
            arrowLink.setAttribute("STARTARROW", (getStartArrow()));
        if (getEndArrow() != null)
            arrowLink.setAttribute("ENDARROW", (getEndArrow()));
        return arrowLink;
    }