「田中さんが本田さんを話した。」 and 「本田さんを田中さんが話した。」 are equivalent sentences due to the usage of particles (although the first is the more common constructions)
there are two rules of Japanese word order
the engine always goes at the end of the sentence
anything that ends with an engine is a logical clause
anything that modifies any thing always comes before it
“anything” could be anything (a logical clause, part of a logical clause, a noun, etc.) that modifies a noun
“any thing” is a noun
sentence structure can be viewed as
describing the actors (via modifiers before them)
introducing the actors (via particles after them)
having the actors act (via the engine at the end of the logical clause)
ex: 「市場で0が青いドレスを買った。」 means “(I) bought a blue dress at the market.”
this is a logical clause because it ends with an engine (a verb in this case)
place, (subject), object, verb
moving any element of this sentence to the head of the clause (to the end of the clause) would make it non-logical (it would become a modifier of that element)
ex: 「市場で0が買ったドレス」 means “the dress (I) bought at the market”
ex: 「0がドレスを買った市場」 means “the market where (I) bought the dress”