private void parseQualificationElement(final QualificationElementType qualificationElement, final ServiceInfo service) { final QualifiersType qualifierList = qualificationElement.getQualifiers(); if (qualifierList == null || qualifierList.getQualifier().isEmpty()) { return; } try { final CriteriaListType criteriaList = qualificationElement.getCriteriaList(); if (criteriaList != null) { if (criteriaList.getKeyUsage().isEmpty() && criteriaList.getPolicySet().isEmpty() && criteriaList.getCriteriaList().isEmpty()) { LOG.trace("CriteriaList for service is empty, the QualificationElement is skipped."); return; } final Condition compositeCondition = parseCriteriaList(criteriaList); for (QualifierType qualifier : qualifierList.getQualifier()) { service.addQualifierAndCondition(qualifier.getUri(), compositeCondition); } } } catch (IllegalArgumentException e) { throw new DSSNotETSICompliantException(DSSNotETSICompliantException.MSG.UNSUPPORTED_ASSERT); } }