Currently, some users seem to use OpenLayers.Rule.symbolizer to create a style that can be used independently for point, line and polygon features. This is not the way SLD intends PointSymbolizer, LineSymbolizer and PolygonSymbolizer to be used: applying a PointSymbolizer to a polygon or line in SLD means "if a line, polygon, or
raster geometry is used with this symbolizer, then the semantic is to use the centroid of
the geometry, or any similar representative point" (OGC, Styled Layer Descriptor Impelmentation Specification 1.0, 2002, p40).
So the appropriate way to give users the convenience they currently pack into a rule will be a method in OpenLayers.StyleMap to create styles with appropriate rules. Style.applySymbolizer will have to be changed to make the geometry type check only for symbolizers that are not geometry-hashed.