docs: def getModelSummaryAsGeoJson(self, session, withStreamNetwork=True, withNodes=False):
          """
          Retrieve a GeoJSON representation of the model. Includes vectorized mask map and stream network.
  
          Args:
              session (:mod:`sqlalchemy.orm.session.Session`): SQLAlchemy session object bound to PostGIS enabled database
              withStreamNetwork (bool, optional): Include stream network. Defaults to True.
              withNodes (bool, optional): Include nodes. Defaults to False.
  
          Returns:
              str: GeoJSON string
          """
          # Get mask map
          watershedMaskCard = self.getCard('WATERSHED_MASK')
          maskFilename = watershedMaskCard.value
          maskExtension = maskFilename.strip('"').split('.')[1]
  
          maskMap = session.query(RasterMapFile).\
                            filter(RasterMapFile.projectFile == self).\
                            filter(RasterMapFile.fileExtension == maskExtension).\
                            one()
  
          # Get mask map as a KML polygon
          statement = """
                      SELECT val, ST_AsGeoJSON(geom) As polygon
                      FROM (
                      SELECT (ST_DumpAsPolygons({0})).*
                      FROM {1} WHERE id={2}
                      ) As foo
                      ORDER BY val;
                      """.format('raster', maskMap.tableName, maskMap.id)
  
          result = session.execute(statement)
  
          maskMapJsonPolygon = ''
          for row in result:
              maskMapJsonPolygon = row.polygon
  
          jsonString = maskMapJsonPolygon
  
          if withStreamNetwork:
              # Get the channel input file for the stream network
              channelInputFile = self.channelInputFile
  
              if channelInputFile is not None:
                  # Use the existing method on the channel input file to generate the stream network GeoJson
                  jsonStreamNetwork = channelInputFile.getStreamNetworkAsGeoJson(session=session, withNodes=withNodes)
  
                  # Convert to json Python objects
                  featureCollection = json.loads(jsonStreamNetwork)
                  jsonMaskMapObjects = json.loads(maskMapJsonPolygon)
  
                  # Create a mask feature
                  maskFeature = {"type": "Feature",
                                 "geometry": jsonMaskMapObjects,
                                 "properties": {},
                                 "id": maskMap.id}
  
                  # Add mask map to feature collection
                  tempFeatures = featureCollection['features']
                  tempFeatures.append(maskFeature)
                  featureCollection['features'] = tempFeatures
  
                  # Dump to string
                  jsonString = json.dumps(featureCollection)
  
          return jsonString