private void splitJourneyLocation( ConcurrentMap<String, IRI> variableTypes, List<LDObject> journeyLocation, List<LDObject> journeyDatas, BindingSet bindings) { LDObject locationsData = new LDObject(); LDObject journeyData = new LDObject(); bindings .getBindingNames() .stream() .forEach( bindingName -> { org.openrdf.model.Value value = bindings.getBinding(bindingName).getValue(); QueryResultsParser.updateVariableTypes(variableTypes, bindingName, value); if (Arrays.asList("id", "creationDate", "name", "status").contains(bindingName)) { journeyData.addKeyValue(new KeyValue(bindingName, value.stringValue())); } else { locationsData.addKeyValue(new KeyValue(bindingName, value.stringValue())); } if ("locationId".equalsIgnoreCase(bindingName)) { journeyData.addKeyValue(new KeyValue(bindingName, value.stringValue())); } }); journeyLocation.add(locationsData); journeyDatas.add(journeyData); }