diff --git a/dune/fufem/assemblers/transferoperatorassembler.hh b/dune/fufem/assemblers/transferoperatorassembler.hh
index 051095806793c43d36e3b5198e651bdf0252ef05..7b2a743a19bfc37d58d5909c695e9adc18663a91 100644
--- a/dune/fufem/assemblers/transferoperatorassembler.hh
+++ b/dune/fufem/assemblers/transferoperatorassembler.hh
@@ -13,7 +13,7 @@
 #include <dune/geometry/referenceelements.hh>
 
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 template <class GridType>
 class MultilevelBasis
@@ -23,7 +23,7 @@ class MultilevelBasis
 
     public:
         typedef typename GridType::template Codim<0>::Entity Element;
-        typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<typename GridType::LevelGridView>> LevelBasis;
+        typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<typename GridType::LevelGridView, 1> > LevelBasis;
         typedef typename LevelBasis::LocalFiniteElement LocalFiniteElement;
 
         MultilevelBasis(const GridType& grid) :
diff --git a/dune/fufem/functionspacebases/p1nodalbasis.hh b/dune/fufem/functionspacebases/p1nodalbasis.hh
index a005911fdc3fe00081dd5198f39a00d2a22c9665..8b4dac104861e0fb7237da25505ca59459f6d14b 100644
--- a/dune/fufem/functionspacebases/p1nodalbasis.hh
+++ b/dune/fufem/functionspacebases/p1nodalbasis.hh
@@ -6,7 +6,7 @@
   are in the process of being replaced by counterparts in the new dune-functions module. \
   Those are syntactically different, but semantically very close to the dune-fufem implementations. \
   To get rid of this warning, replace all occurrences of the P1NodalBasis<...> class in your code \
-  by DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<...> >.
+  by DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<...,1> >.
 */
 
 /**
diff --git a/dune/fufem/functionspacebases/q1nodalbasis.hh b/dune/fufem/functionspacebases/q1nodalbasis.hh
index f7455af8bf133985b3e10da686467dad1b22f57d..77b03e0c1c619e7cf47292843b2d9fd53c10d0b1 100644
--- a/dune/fufem/functionspacebases/q1nodalbasis.hh
+++ b/dune/fufem/functionspacebases/q1nodalbasis.hh
@@ -6,7 +6,7 @@
   are in the process of being replaced by counterparts in the new dune-functions module. \
   Those are syntactically different, but semantically very close to the dune-fufem implementations. \
   To get rid of this warning, replace all occurrences of the Q1NodalBasis<...> class in your code \
-  by DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<...> >.
+  by DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<...,1> >.
 */
 
 /**
diff --git a/dune/fufem/functiontools/gradientbasis.hh b/dune/fufem/functiontools/gradientbasis.hh
index 4a1aa4d4f3b1d150ada87f3142444706de250c3b..54d49c03a80f40a31063e7d50bc04762213dd53b 100644
--- a/dune/fufem/functiontools/gradientbasis.hh
+++ b/dune/fufem/functiontools/gradientbasis.hh
@@ -15,7 +15,6 @@
 #include <dune/fufem/functionspacebases/conformingbasis.hh>
 
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
 #include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 /** \brief Provides a typedef for a basis type that can represent gradients of the given basis
@@ -39,12 +38,6 @@ struct GradientBasis< P1NodalBasis<GridView> >
     typedef P0Basis<GridView> type;
 };
 
-template <class GridView>
-struct GradientBasis<
-    DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<GridView>>> {
-  typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<GridView, 0>> type;
-};
-
 template <class GridView>
 struct GradientBasis<
     DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<GridView, 1>>> {
diff --git a/dune/fufem/sampleonbitfield.hh b/dune/fufem/sampleonbitfield.hh
index 24d73ffc3d0f97d7c71784c253b4dfabc0b4093e..fab02af75f185f541d785d6fb455feb2e1f4373f 100644
--- a/dune/fufem/sampleonbitfield.hh
+++ b/dune/fufem/sampleonbitfield.hh
@@ -10,7 +10,7 @@
 #include <dune/common/version.hh>
 
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 #include <dune/fufem/functions/basisgridfunction.hh>
 
@@ -39,7 +39,7 @@ void sampleOnBitField(const GridType& grid,
 
     // Construct GridFunction
     typename GridType::LevelGridView levelView = grid.levelGridView(0);
-    typedef Dune::Functions::PQ1NodalBasis<typename GridType::LevelGridView> DuneP1Basis;
+    typedef Dune::Functions::PQkNodalBasis<typename GridType::LevelGridView, 1> DuneP1Basis;
     DuneP1Basis duneP1Basis(levelView);
     typedef DuneFunctionsBasis<DuneP1Basis> P1Basis;
     P1Basis p1Basis(duneP1Basis);
diff --git a/dune/fufem/test/adolctest.cc b/dune/fufem/test/adolctest.cc
index fa8c9ed07455f55f48cdd1225f9f23fbbd6ad8e2..f296423add2be10370c7b175f6913809b33fd286 100644
--- a/dune/fufem/test/adolctest.cc
+++ b/dune/fufem/test/adolctest.cc
@@ -29,7 +29,7 @@
 #include <dune/fufem/makesphere.hh>
 
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 //! Local energy for a geometric exact St. Venant--Kirchhoff material
 template <class GridType, class LocalFiniteElement>
@@ -173,7 +173,7 @@ int main (int argc, char *argv[])
     typedef GridType::LeafGridView GridView;
     GridView gridView = grid->leafGridView();
 
-    typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<GridView>> FEBasis;
+    typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<GridView, 1> > FEBasis;
     FEBasis feBasis(gridView);
 
     // //////////////////////////
diff --git a/dune/fufem/test/basisgridfunctiontest.cc b/dune/fufem/test/basisgridfunctiontest.cc
index 91b4531fa8aca65ff3f688b12ee444770b45e0f7..f1f8f47397e8cfbb3b8a80e92eacd884571ac52c 100644
--- a/dune/fufem/test/basisgridfunctiontest.cc
+++ b/dune/fufem/test/basisgridfunctiontest.cc
@@ -15,7 +15,7 @@
 #include <dune/fufem/functiontools/basisinterpolator.hh>
 
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 #include "common.hh"
 
@@ -63,7 +63,7 @@ struct BasisGridFunctionTestSuite
 
         // Test with a P1 basis
         {
-            typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<GridView>> P1Basis;
+            typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<GridView, 1> > P1Basis;
             typedef ConformingBasis<P1Basis> ConformingP1Basis;
 
             P1Basis p1Basis(gridView);
diff --git a/dune/fufem/test/basisinterpolatortest.cc b/dune/fufem/test/basisinterpolatortest.cc
index 521f64809a655501e04968a30eceeb00d57032a9..a817046fe968e379254555a32c5d6b32a5f3c245 100644
--- a/dune/fufem/test/basisinterpolatortest.cc
+++ b/dune/fufem/test/basisinterpolatortest.cc
@@ -6,7 +6,7 @@
 #include <dune/fufem/functiontools/basisinterpolator.hh>
 
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 #include "common.hh"
 
@@ -60,7 +60,7 @@ struct Suite
         RT y0;
         f.evaluate(x0, y0);
 
-        DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<typename GridType::LeafGridView>> basis(grid.leafGridView());
+        DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<typename GridType::LeafGridView, 1> > basis(grid.leafGridView());
         Functions::interpolate(basis, v, f);
 
         bool passed = (v.size() == basis.size());
diff --git a/dune/fufem/test/coarsegridfunctionwrappertest.cc b/dune/fufem/test/coarsegridfunctionwrappertest.cc
index 3d33352f207acbfabf16b7add76a557e1d37d28a..e137c098895b640853ac913ddbeadfd071478c37 100644
--- a/dune/fufem/test/coarsegridfunctionwrappertest.cc
+++ b/dune/fufem/test/coarsegridfunctionwrappertest.cc
@@ -7,7 +7,7 @@
 #include <dune/fufem/functiontools/basisinterpolator.hh>
 
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 #include "common.hh"
 
@@ -41,11 +41,11 @@ struct CoarseGridFunctionWrapperTestSuite
         typedef typename Dune::BlockVector<RangeType> Vector;
 
         typedef typename GridType::LevelGridView CoarseGridView;
-        typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<CoarseGridView>> CoarseBasis;
+        typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<CoarseGridView, 1> > CoarseBasis;
         typedef BasisGridFunction<CoarseBasis, Vector> CoarseGridFunction;
 
         typedef typename GridType::LeafGridView FineGridView;
-        typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<FineGridView>> FineBasis;
+        typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<FineGridView, 1> > FineBasis;
         typedef BasisGridFunction<FineBasis, Vector> FineGridFunction;
 
         typedef CoarseGridFunctionWrapper<CoarseGridFunction> WrappedCoarseGridFunction;
diff --git a/dune/fufem/test/functionspacebasistest.cc b/dune/fufem/test/functionspacebasistest.cc
index f4e788afee8dea366c403f267d6e38292ffb9394..98c2d2470a2a935ecca4a9d173888a799c4ee10c 100644
--- a/dune/fufem/test/functionspacebasistest.cc
+++ b/dune/fufem/test/functionspacebasistest.cc
@@ -11,7 +11,6 @@
 #include <dune/grid/utility/structuredgridfactory.hh>
 #include <doc/grids/gridfactory/hybridtestgrids.hh>
 
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
 #include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
@@ -120,9 +119,6 @@ struct FunctionSpaceBasisTestSuite
         P2NodalBasis<LeafView> p2NodalBasis(leafView);
         passed = passed and testNodalBasis(p2NodalBasis);
 
-        DuneFunctionsBasis<typename Functions::PQ1NodalBasis<LeafView> > fufemFunctionsPQ1NodalBasis(leafView);
-        passed = passed and testNodalBasis(fufemFunctionsPQ1NodalBasis);
-
         DuneFunctionsBasis<typename Functions::PQkNodalBasis<LeafView,1> > fufemFunctionsPQk1NodalBasis(leafView);
         passed = passed and testNodalBasis(fufemFunctionsPQk1NodalBasis);
 
diff --git a/dune/fufem/test/generalizedlaplaceassemblertest.cc b/dune/fufem/test/generalizedlaplaceassemblertest.cc
index fc688c70f0fc079a45092cdbd18d61d3b9a1c6e9..52ccc1beedb95b02d1fa600f688f9a7c31357759 100644
--- a/dune/fufem/test/generalizedlaplaceassemblertest.cc
+++ b/dune/fufem/test/generalizedlaplaceassemblertest.cc
@@ -19,7 +19,7 @@
 #include <dune/fufem/assemblers/localassemblers/generalizedlaplaceassembler.hh>
 
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 #include "common.hh"
 
@@ -97,7 +97,7 @@ struct GeneralizedLaplaceAssemblerTestSuite
 
         const int dim = GridType::dimension;
 
-        typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<typename GridType::LeafGridView>> Basis;
+        typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<typename GridType::LeafGridView, 1> > Basis;
         typedef typename Basis::LocalFiniteElement FE;
 
         Basis basis(grid.leafGridView());
diff --git a/dune/fufem/test/gradientassemblertest.cc b/dune/fufem/test/gradientassemblertest.cc
index 8742d715eada1ca6c6dac628ddb3da7e7ec5ec77..41f823c66b60f1d3469abf1e4758d1ec5c5a9cbb 100644
--- a/dune/fufem/test/gradientassemblertest.cc
+++ b/dune/fufem/test/gradientassemblertest.cc
@@ -18,7 +18,7 @@
 #include <dune/fufem/functiontools/gradientbasis.hh>
 
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 #include "common.hh"
 
@@ -36,7 +36,7 @@ struct GradientAssemblerTestSuite
     {
         const int dim = GridType::dimension;
 
-        typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<typename GridType::LeafGridView>> Basis;
+        typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<typename GridType::LeafGridView, 1> > Basis;
         typedef typename Basis::LocalFiniteElement FE;
 
         Basis basis(grid.leafGridView());
diff --git a/dune/fufem/test/gridfunctionadaptortest.cc b/dune/fufem/test/gridfunctionadaptortest.cc
index 9faaa2a7fa8395e4cc3214bb1dd42721a56e078c..5bb66a51ed72e3ee9316bfb36ada733acb5bac6e 100644
--- a/dune/fufem/test/gridfunctionadaptortest.cc
+++ b/dune/fufem/test/gridfunctionadaptortest.cc
@@ -8,7 +8,7 @@
 #include <dune/fufem/functionspacebases/conformingbasis.hh>
 
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 #include "common.hh"
 
@@ -37,7 +37,7 @@ struct Suite
     {
         const int dim = GridType::dimensionworld;
         typedef typename GridType::LeafGridView View;
-        typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<View>> NonconformingBasis;
+        typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<View, 1> > NonconformingBasis;
         typedef ConformingBasis<NonconformingBasis> Basis;
 
         typedef Dune::BlockVector<RT> Vector;
diff --git a/dune/fufem/test/h1functionalassemblertest.cc b/dune/fufem/test/h1functionalassemblertest.cc
index f83329021ff2249fc498af739c9ed4f76f72978d..1d8013f9c433d1e6f26ae263e38c89be4a2204d4 100644
--- a/dune/fufem/test/h1functionalassemblertest.cc
+++ b/dune/fufem/test/h1functionalassemblertest.cc
@@ -18,7 +18,7 @@
 #include <dune/fufem/assemblers/localassemblers/h1functionalassembler.hh>
 
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 #include "common.hh"
 
@@ -69,7 +69,7 @@ struct H1FunctionalAssemblerTestSuite
     template <typename GridType>
     bool check(const GridType& grid)
     {
-        typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<typename GridType::LeafGridView>> Basis;
+        typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<typename GridType::LeafGridView, 1> > Basis;
         typedef typename Basis::LocalFiniteElement FE;
 
         const int block_size=2;
diff --git a/dune/fufem/test/integraloperatorassemblertest.cc b/dune/fufem/test/integraloperatorassemblertest.cc
index 4650fdb444aa2661a5b38d2d8a2b7babb498ca5b..45eb223ceb7f14fc0f2c76abb815ad110376c52d 100644
--- a/dune/fufem/test/integraloperatorassemblertest.cc
+++ b/dune/fufem/test/integraloperatorassemblertest.cc
@@ -7,7 +7,7 @@
 #include <dune/fufem/assemblers/localassemblers/convolutionassembler.hh>
 
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 #include "common.hh"
 
@@ -53,7 +53,7 @@ struct IntegralOperatorAssemblerTestSuite
 
         Mollifier<dim> m(0.1);
 
-        typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<typename GridType::LeafGridView>> Basis;
+        typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<typename GridType::LeafGridView, 1> > Basis;
         Basis basis(grid.leafGridView());
 
         typename Dune::Matrix<Dune::FieldMatrix<double,1,1> > M1, M2;
diff --git a/dune/fufem/test/laplaceassemblertest.cc b/dune/fufem/test/laplaceassemblertest.cc
index a372367b3ed28aeb2f76ac993f236fc1b4cfe181..b7785fdee6e45f8bb1fb970721cb1db3a12d7913 100644
--- a/dune/fufem/test/laplaceassemblertest.cc
+++ b/dune/fufem/test/laplaceassemblertest.cc
@@ -12,7 +12,7 @@
 #include <dune/fufem/assemblers/boundaryoperatorassembler.hh>
 #include <dune/fufem/assemblers/localassemblers/laplaceassembler.hh>
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 using namespace Dune;
 
@@ -31,7 +31,7 @@ int main (int argc, char *argv[])
   GridType grid(h,n);
 
   // Construct a function space basis for the grid
-  typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<GridType::LeafGridView>> P1Basis;
+  typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<GridType::LeafGridView, 1> > P1Basis;
   P1Basis p1Basis(grid.leafGridView());
 
   // Construct a boundary patch for the entire grid boundary
diff --git a/dune/fufem/test/newpfeassemblertest.cc b/dune/fufem/test/newpfeassemblertest.cc
index 38574cd17e6d8b266dc6407efb4636935ecf10cd..690483df40457ec3c1f4b8b9d5b78fc32c7de776 100644
--- a/dune/fufem/test/newpfeassemblertest.cc
+++ b/dune/fufem/test/newpfeassemblertest.cc
@@ -12,7 +12,7 @@
 #include <dune/fufem/mechanics/tetratensor.hh>
 #include <dune/fufem/test/common.hh>
 
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 template <int n>
 struct eigenStrainComputer {
@@ -71,7 +71,7 @@ void runTest() {
 
   using GridView = typename Grid::LeafGridView;
 
-  using Basis = DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<GridView>>;
+  using Basis = DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<GridView, 1> >;
   using LocalBasis = typename Basis::LocalFiniteElement;
   using Function = BasisGridFunction<Basis, Vector>;
 
diff --git a/dune/fufem/test/secondorderassemblertest.cc b/dune/fufem/test/secondorderassemblertest.cc
index 1a25c1da559345ccd907ecd6c2337888751c94a2..a4eab1eb12616b4b6fb890dab9189ca260394485 100644
--- a/dune/fufem/test/secondorderassemblertest.cc
+++ b/dune/fufem/test/secondorderassemblertest.cc
@@ -25,7 +25,7 @@
 #include <dune/fufem/assemblers/localassemblers/variablecoefficientviscosityassembler.hh>
 
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 template<class Matrix1, class Matrix2>
 bool compare(const Matrix1& matrix1, const Matrix2& matrix2)
@@ -101,7 +101,7 @@ int main (int argc, char *argv[])
   grid.globalRefine(refine);
 
   // Construct a function space basis for the grid
-  typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<GridType::LeafGridView>> P1Basis;
+  typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<GridType::LeafGridView, 1> > P1Basis;
   P1Basis p1Basis(grid.leafGridView());
 
   OperatorAssembler<P1Basis,P1Basis> globalAssembler(p1Basis, p1Basis);
diff --git a/dune/fufem/test/subgridxyfunctionalassemblertest.cc b/dune/fufem/test/subgridxyfunctionalassemblertest.cc
index 306866f5ed4be4df0e2f32d1e3ff0636b5a9e894..47fbac50541e92f25c745429257842258f5312f8 100644
--- a/dune/fufem/test/subgridxyfunctionalassemblertest.cc
+++ b/dune/fufem/test/subgridxyfunctionalassemblertest.cc
@@ -20,7 +20,7 @@
 #endif
 
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 #include <dune/fufem/functionspacebases/conformingbasis.hh>
 
@@ -193,8 +193,8 @@ struct SubgridL2FunctionalAssemblerTestSuite
 
         static const int block_size=2;
 
-        typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<typename GridType::LeafGridView>> NCBasis;
-        typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<typename HostGridType::LeafGridView>> NCHostBasis;
+        typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<typename GridType::LeafGridView, 1> > NCBasis;
+        typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<typename HostGridType::LeafGridView, 1> > NCHostBasis;
         typedef ConformingBasis<NCBasis> Basis;
         typedef ConformingBasis<NCHostBasis> HostBasis;
         typedef Dune::BCRSMatrix<Dune::FieldMatrix<double,block_size,block_size> > Transfer;
@@ -287,8 +287,8 @@ struct SubgridH1FunctionalAssemblerTestSuite
 
         static const int block_size=1;
 
-        typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<typename GridType::LeafGridView>> NCBasis;
-        typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<typename HostGridType::LeafGridView>> NCHostBasis;
+        typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<typename GridType::LeafGridView, 1> > NCBasis;
+        typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<typename HostGridType::LeafGridView, 1> > NCHostBasis;
         typedef ConformingBasis<NCBasis> Basis;
         typedef ConformingBasis<NCHostBasis> HostBasis;
         typedef Dune::BCRSMatrix<Dune::FieldMatrix<double,block_size,block_size> > Transfer;
diff --git a/dune/fufem/test/sumfunctiontest.cc b/dune/fufem/test/sumfunctiontest.cc
index f10f9e988ede3ab5bac0edbbb882505db488651d..9713f8738971b7a9b230bc429de4d5500217e588 100644
--- a/dune/fufem/test/sumfunctiontest.cc
+++ b/dune/fufem/test/sumfunctiontest.cc
@@ -17,7 +17,7 @@
 #include <dune/fufem/functiontools/basisinterpolator.hh>
 
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 #include "common.hh"
 
@@ -147,7 +147,7 @@ struct SumGridFunctionTestSuite
         TFType cos2x(0,TFType::COS);
         TFType cos2y(1,TFType::COS);
 
-        typedef DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<typename GridType::LeafGridView>> Basis;
+        typedef DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<typename GridType::LeafGridView,1 > > Basis;
         Basis basis(grid.leafGridView());
 
         typedef Dune::BlockVector<RangeType> CoeffType;
diff --git a/dune/fufem/utilities/dirichletbcassembler.hh b/dune/fufem/utilities/dirichletbcassembler.hh
index 3e29e091ba549391d6732fb353267ba2075d44d0..53a2bef2bcc51a3cf526eaed6aa2b2ca34b999bc 100644
--- a/dune/fufem/utilities/dirichletbcassembler.hh
+++ b/dune/fufem/utilities/dirichletbcassembler.hh
@@ -14,7 +14,7 @@
 #include <dune/fufem/functionspacebases/dunefunctionsbasis.hh>
 #include <dune/fufem/utilities/boundarypatchfactory.hh>
 
-#include <dune/functions/functionspacebases/pq1nodalbasis.hh>
+#include <dune/functions/functionspacebases/pqknodalbasis.hh>
 
 #include <dune/grid/io/file/amirameshreader.hh>
 
@@ -172,10 +172,10 @@ void DirichletBCAssembler<GridType>::assembleDirichletBC(const GridType& grid,
     DirichletBCAssembler::template assembleDirichletBC<ncomp, mcomp, Enable>(grid, coarseDirichletNodes, leafDirichletNodes);
 
     // make a nodal bases function
-    using P1Basis = DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<typename GridType::LeafGridView> >;
+    using P1Basis = DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<typename GridType::LeafGridView, 1> >;
     P1Basis p1Basis(grid.leafGridView());
 
-    using CoarseP1Basis = DuneFunctionsBasis<Dune::Functions::PQ1NodalBasis<typename GridType::LevelGridView> >;
+    using CoarseP1Basis = DuneFunctionsBasis<Dune::Functions::PQkNodalBasis<typename GridType::LevelGridView, 1> >;
     CoarseP1Basis coarseP1(grid.levelGridView(0));
 
     //////////////////////////////////////////