These X3D files (with XML encoding) are examples of use of the NurbsTrimmedSurface node with an inner hole defined by a NurbsCurve2D node.
For each file the base surface is a square, with side 8 units in length, in the x-y plane and centered at the (0,0,0) origin. For each file an interior hole is defined by a Contour2D node which in turns contains a NurbsCurve2D node defining a circular hole of radius 1 unit.
Each file also includes a triad of unit length line segments originating at the origin x,y,z=(0,0,0) marking the x-axis (red), y-axis (green), and z-axis (blue)
The screenshots shown for each X3D file were made with the InstantPlayer X3D browser (v 2.0) running on Mac OS 10.6.8