Here's a quick study in contrasts from the weekend: Donald Trump, surging in the Republican presidential polls, mocks John McCain's service during the Vietnam War, then refuses to apologize for it, while Martin O'Malley, last in the latest poll on the Democratic side, apologizes for saying "all lives matter" to a group of "Black Lives Matter" protesters who heckled him.
Both men touched a third rail within their respective parties — one that's been in place forever, the other new within the past year — but only one owned up to his mistake.
Trump committed a Republican felony: He knocked a veteran, in this case the nation's best-known Vietnam vet, a respected Republican senator who, as naval pilot, suffered five years in a Hanoi prison.
Belittling the military service of a veteran widely regarded as a hero should be a Republican candidate's final act in a brief campaign for president.
But Donald Trump is a force of nature, a billionaire with an ego the size of Manhattan. He won't apologize, and it's hard to see him dropping out of the campaign.
Why should he? Everybody's talking about him, and isn't that the whole point to being The Donald?
A word about words: There is no getting around what Trump said about McCain. He can complain that the news media quoted him out of context, or that reporters left out key parts of his remarks about McCain on Saturday in Iowa. Yadda yadda yadda. He does not get a pass. Trump said what he said. I thought it was clear.
"He's not a war hero," he said of McCain. "He's a war hero because he was captured. I like people who weren't captured."
Even when Trump said the words, "He's a war hero," his tone questioned whether McCain's heroism was genuine. It reminded me of Swift Boat veterans questioning John Kerry's Vietnam combat medals in 2004.
Trump's claim that the news media misrepresented his statements are amusing, too.
Three months ago, it was conservatives, Trump-defender and broadcaster Rush Limbaugh foremost among them, who ridiculed Mayor Stephanie Rawlings-Blake for her "space to destroy" comments following the downtown Baltimore disturbances of April 25.
Critics jumped all over the statement, suggesting that Rawlings-Blake purposely allowed vandalism and property damage during protests over the death of Freddie Gray.
Most of us who heard the mayor's comment understood what she meant when she described how police tried to respect the protesters' rights by giving them space. "It's a very delicate balancing act," Rawlings-Blake told reporters, "because while we tried to make sure that they were protected from the cars and the other things that were going on, we also gave those who wished to destroy space to do that as well."
It was a poorly constructed sentence, but I got the drift: Peaceful demonstrators had room to exercise free speech, but some bad actors took advantage of the situation.
Two days later, Rawlings-Blake clarified her remarks for the media, but it didn't matter. Her critics continue to use the comment against her. Two weeks ago, the Fraternal Order of Police put the "room to destroy" quote on the cover of their after-action report on the April disturbances, further suggesting that the mayor had ordered cops to allow vandalism.
And, with a mayoral election next spring, I guarantee that won't be the last we hear of it.
As for O'Malley, he had a lesson in the volatile nature of words over the weekend.
On Saturday, hecklers dominated his time at Netroots Nation, a gathering of liberal activists in Arizona. The hecklers wanted both O'Malley and Bernie Sanders, the Vermont senator also running for the Democratic nomination, to recognize African-Americans killed by police.
For O'Malley, it marked the second time since spring that he was heckled. Some people chewed him out in Baltimore when he showed up after the April 27 riots, pointing to the zero-tolerance policing strategy O'Malley instituted after his election as mayor in 1999.
The demonstrators in Phoenix on Saturday were loud and angry. They shouted, "Black lives matter!" O'Malley answered: "Black lives matter. White lives matter. All lives matter." And the crowd booed him. It was the wrong thing to say. While it's a given that "all lives matter," the phrase "Black Lives Matter" says black lives have not mattered as much as white lives, and many see that as central to profound problems such as racial profiling and police brutality, unemployment and income inequality.
"I meant no disrespect," O'Malley told an interviewer after the raucous Netroots town hall. He noted his efforts as mayor to reduce the number of homicides in majority black Baltimore.
"I did not mean to be insensitive in any way or to communicate that I did not understand the tremendous passion, commitment and depth of feeling that all of us should be attaching to this issue."
Give O'Malley credit for being willing to face the fire and show some humility and apologize. He might be lagging in polls and in raising money for his campaign. But he's no Donald Trump.
Dan Rodricks' column runs Tuesday, Thursday and Sunday. He also hosts "Midday" on WYPR-FM.