Solange es die Browser unterstützen und es keine gute Alternative gibt, hab ich mit <embed> kein Problem.
object ist keine alternative sondern die einzig tragbare lösung
Denn AFAIK unterstützt z.B. IE 6 (oder andere Browser) das <object> Element nicht.
object wird ab dem ie 5 unterstützt
Und den einzigen den <embed> stört, ist der Validator. Und ein paar Webdesigner, die nachts nicht mehr schlafen können, weil sie von invalidem Code Albträume kriegen.
einem webdesigner ist invalider code ziemlich egal, einem entwickler/html-autor hingegen sollte es nicht egal sein. jemandem der barrierefreie webseiten erstellt erst rechtnicht
ebenso ist invalider code schlecht für einen xml-parser - nicht wohlgeformter code kann garnicht geparsed werden - das ist zwar für dokumente die als text/html versandt werden, nicht problematisch, aber wenn man endlich mal vernünftiges xhtml als application/xhtml+xml übertragen möchte eine unumstößliche voraussetzung
in jeder programmiersprache [1] ist es üblich, dass man bei fehlern eine fehlermeldung bekommt bzw wenn sauber programmiert wurde, das programm mit einer sauberen fehlermeldung stirbt und nicht einfach weitermacht ("on error resume next" und vergleichbares ist zu vermeiden) - genau das muss bei (x)html [1] auch so sein - dann hören sich die billig-webseiten mit schwachsinns-code endlich mal auf und nicht standardkonforme browser werden aussterben
[1] mir ist bewusst, dass html eine markupsprache und keine programmiersprache ist