List < FilterUtils > combineFilterUtils ( final Element topicref , final List < FilterUtils > filters , final SubjectScheme subjectSchemeMap ) { return getChildElement ( topicref , DITAVAREF_D_DITAVALREF ) . map ( ditavalRef -> getFilterUtils ( ditavalRef ) . refine ( subjectSchemeMap ) ) . map ( f -> { final List < FilterUtils > fs = new ArrayList <> ( filters . size ( ) + 1 ) ; fs . addAll ( filters ) ; fs . add ( f ) ; return fs ; } ) . orElse ( filters ) ; }
Combine referenced DITAVAL to existing list and refine with subject scheme .