@SuppressWarnings("restriction")
 protected void addTagInsertionProposals(
     ContentAssistRequest contentAssistRequest, int childPosition) {
   DataserviceTagElement currentDataserviceElement =
       getCurrentDataserviceElement(contentAssistRequest);
   if (currentDataserviceElement != null) {
     List<DataserviceTagElement> subElements = currentDataserviceElement.getSubElements();
     Node currentNode = getCurrentNode(contentAssistRequest);
     for (DataserviceTagElement element : subElements) {
       if (element.isUpperLimitUnbound()
           || getChildNodeCount(currentNode, element.getName()) < element.getMaxOccurances()) {
         contentAssistRequest.addProposal(getTagProposal(element));
       }
     }
   } else {
     super.addTagInsertionProposals(contentAssistRequest, childPosition);
   }
 }