Gray76,
Is this drawn per Y14.5-2009? If so, I'm surprised by your liberal use of concentricity/symmetry. By an initial rough evaluation I would think position would be a better choice in both cases (possibly with orientation refinements) - these controls have very limited use and its typically preferred to utilize some other control. Note that as of Y14.5-2018 concentricity/symmetry are no longer supported and have been eliminated.
You might want to consult Y14.5-2009 fig 7-57, 7-60 through 7-63, 7-65 and 7-66 for some of the allowed variation of concentricity/symmetry in comparison to position - the behavior may not be what you expect or desire for this application.
The datumless parallelism callouts on either dimension of the rectangular slot are also questionable. If the desire is to either control flatness of the surface(s) or the derived median plane, then it should be replaced as such. I don't know if its technically illegal, but I would certainly flag those as problematic as they are not serving their primary function (orientation to a DRF).
Note addtionally that the parallelism to the 2x dimensions of the flat faces to the centerline referencing |B| (bottom right view) are not valid as shown. The non-basic dimensions implies directly toleranced (presumably to some general print tolerance) dimensions which is not recommended for location of features, and not really supported by Y14.5 as shown since it is location to a theoretical centerline. Doubly so since the parallelsim callouts are inline with the dimension which implies control of a center plane, which is not valid since it is not a FOS. If the desire is to control parallelsim of each surface separately, the leaderline should not be inline with the dimension. I would also recommend either changing this to a basic dimension and controlling location with profile or a directly toleranced dimension which spans both surfaces and specified with position.
At first brush, utilization of the central bore as datum feature B looks fine to me. Spherical datum feature A constrains all 3x translational DOF (Y14.5 discusses this as a point where 3x mutually orthogonal planes intersect) and B constrains 2x rotational DOF. This allows translation/orientation constraint to |A|B|.
That being said, with the above changes (concentricity/symmetry -> position) I would additionally hold all but the central bore (which would be of course only to |A|) to |A|B| in position. The 2x bores could be held in 2x position to ensure coaxiality to each other as they would be a pattern. Position to |A|B| would also ensure simultaneous requirements and therefore mutual location/orientation between the rectangular slot and the 2x coaxial bores *since there would be a free rotational DOF. Alternately the width of the rectangular slot could be established as datum feature C or the 2x coaxial diameters could be C to constrain that remaining rotational DOF - depends on what you think best reflects the assembly condition.
Side note - I know the dimensions have been likely removed either for generalization purposes or to protect your design, but it would make it a little easier to reference certain features if they had an approximate dimension attached instead of "999".
*Edited