private void extractNodes(List<Object> childNodes, Object entity) {
   for (Object child : childNodes) {
     for (Extractor extractor : ORDERED_EXTRACTORS) {
       if (extractor.isApplicable(child)) {
         Object returnedEntity = extractor.extract(child, entity);
         extractNodes(((Node) child).getNodeOrArrowlinkOrLinktarget(), returnedEntity);
         break;
       }
     }
   }
 }