public ManyToManyPluralAttributeElementSourceImpl(
      MappingDocument mappingDocument,
      final PluralAttributeSource pluralAttributeSource,
      final JaxbManyToManyElement manyToManyElement,
      String cascadeString) {
    super(mappingDocument, pluralAttributeSource);
    this.manyToManyElement = manyToManyElement;
    this.cascadeStyles = Helper.interpretCascadeStyles(cascadeString, bindingContext());

    this.valueSources =
        Helper.buildValueSources(
            sourceMappingDocument(),
            new Helper.ValueSourcesAdapter() {
              @Override
              public boolean isIncludedInInsertByDefault() {
                return true;
              }

              @Override
              public boolean isIncludedInUpdateByDefault() {
                return true;
              }

              @Override
              public String getColumnAttribute() {
                return manyToManyElement.getColumnAttribute();
              }

              @Override
              public String getFormulaAttribute() {
                return manyToManyElement.getFormulaAttribute();
              }

              @Override
              public List<JaxbColumnElement> getColumn() {
                return manyToManyElement.getColumn();
              }

              @Override
              public List<String> getFormula() {
                return manyToManyElement.getFormula();
              }
            });
    this.filterSources = buildFilterSources();
  }
 @Override
 public Set<CascadeStyle> getCascadeStyles() {
   return Helper.interpretCascadeStyles(oneToOneElement.getCascade(), bindingContext());
 }