Please remove all %{_libdir}/lib*.la files and static libs from the -devel package. This will reduce libtool/library bloat. Further, it will (mostly) solve the problem of needing to install extreneous packages(2) in order to build anything that uses expat-devel. (mostly Library) packages with .la files of their own that BuildRequires: expat-devel will need to be rebuilt after this modification. If insist in still including the .la files (and static libraries), please package them separately into something like expat-static or expat-devel-static, so it would be possible to omit this extra crud in other rpms that BuildRequires: expat-devel via BuildConflicts: expat-devel-static
Ignore my (incorrect) second statement regarding extraneous packages. In this case, there aren't any, since expat doesn't link against anything else.
Upon further reflection (2) is partially correct, in that any other package built using expat-devel, like subversion, if that package produces a -devel package, it (the -devel) package will need a Requires: expat-devel to account for the references to /usr/lib/libexpat.la in its own .la files.
libexpat.la dumped, libexpat.a is probably needed for statically-linked RPM still.