throw new IllegalArgumentException("no such attribute");
} else {
// remove Vendor-Specific sub-attribute
List vsas = getVendorAttributes(attribute.getVendorId());
for (Iterator i = vsas.iterator(); i.hasNext();) {
VendorSpecificAttribute vsa = (VendorSpecificAttribute)i.next();
List sas = vsa.getSubAttributes();
if (sas.contains(attribute)) {
vsa.removeSubAttribute(attribute);
if (sas.size() == 1)
// removed the last sub-attribute
// --> remove the whole Vendor-Specific attribute
removeAttribute(vsa);
}