A Palestinian teen stabbed two Israelis in a West Bank settlement in "an apparent terror attack" on Wednesday before an off-duty security guard shot him in the leg, police said.
None of the three were reported to have been seriously wounded.
Police spokeswoman Luba Samri said in a statement that the alleged attacker was a 16-year-old from the village of Al-Azariya east of Jerusalem.
She said he was moderately wounded in the shooting. Police had earlier described his condition as serious.
The stabbing victims, described as middle-aged, were also moderately wounded in the incident at a supermarket in the Mishor Adumim settlement, about 10 kilometres (six miles) from Al-Azariya.
The armed Israeli was not employed at the supermarket, which is frequented by Palestinians and Israelis, but was passing by with his weapon at the time.
David Assaraf, the spokesman for Israeli police in the West Bank, told AFP that officers were called to the scene after gunfire was reported, finding the two Israelis and the alleged attacker lying wounded on the ground.
"Two more (Palestinians) were arrested and are under investigation," he said.
Police said they were caught trying to flee the scene but provided no further details about how they may have been involved.
Ruti Dahan, 50, who works at a nearby kindergarten, was shopping at the supermarket when she heard three gunshots.
"I turned around and I saw someone, who I suppose was the security guard, shouting 'Lie down, lie down'."
She said that the presumed attacker tried to stand up after being shot but four people wrestled him to the ground.
"For years I've been coming here twice a week to do my shopping," she said. "Now I think I'll switch to the Internet."
Alleged Palestinian attackers have carried out a series of similar "lone wolf" attacks on Israelis in recent weeks amid increasing tensions in Jerusalem and the West Bank.