@Override
	public boolean equals(Object obj) {
		if (obj == null) {
			return false;
		}
		if (getClass() != obj.getClass()) {
			return false;
		}
		final Attribute other = (Attribute) obj;
		if (this.authority != other.authority
				&& (this.authority == null || !this.authority
						.equals(other.authority))) {
			return false;
		}
		if ((this.key == null) ? (other.key != null) : !this.key
				.equals(other.key)) {
			return false;
		}
		if ((this.value == null) ? (other.value != null) : !this.value
				.equals(other.value)) {
			return false;
		}
		return true;
	}