code: @Procedure(mode = Mode.WRITE)
  	@Description("apoc.refactor.rename.nodeProperty(oldName, newName, [nodes]) | rename all node's property from 'oldName' to 'newName'. If 'nodes' is provided renaming is applied to this set only")
  	public Stream<BatchAndTotalResultWithInfo> nodeProperty(@Name("oldName") String oldName, @Name("newName") String newName, @Name(value="nodes", defaultValue = "") List<Object> nodes) {
  		String cypherIterate = nodes != null && ! nodes.isEmpty() ? "UNWIND {nodes} AS n WITH n WHERE exists (n."+oldName+") return n" : "match (n) where exists (n."+oldName+") return n";
  		String cypherAction = "set n."+newName+"= n."+oldName+" remove n."+oldName;
  		Map<String, Object> parameters = MapUtil.map("batchSize", 100000, "parallel", true, "iterateList", true, "params", MapUtil.map("nodes", nodes));
  		return getResultOfBatchAndTotalWithInfo(newPeriodic().iterate(cypherIterate, cypherAction, parameters), db, null, null, oldName);
  	}
docs: Rename property of a node by creating a new one and deleting the old.