Two Palestinian gunmen opened fire in a Jewish religious school in Jerusalem tonight, killing at least eight people and wounding 20, the Israeli emergency service Zaka said.
The two gunmen were also killed in the assault at the Merkaz Harav seminary, Zaka said. Israeli television said there may have been a third attacker, who escaped.
Some 50 ambulances raced to the area and police held back worried parents searching for children who had been attending a study session marking the start of Adar, the most festive month of the Jewish calendar.
Witnesses said the two gunmen entered the crowded compound of the seminary and fired automatic weapons at students. Zaka put the Israeli death toll at eight, with some 20 people wounded.
"There was a lot of gunfire and hysteria," a woman who lives across the street from the school told the radio.
"I saw police and ordinary civilians, who were armed, trading gunfire with the gunmen," another witness said. "The gunbattle went on for about 10 minutes."
Outside the five-storey building, a crowd shouted "Death to the Arabs".
There was no immediate claim of responsibility for the attack.
In the Gaza Strip, gunmen fired in the air to celebrate the attack, three days after Israel ended a military offensive in the Hamas-run territory that killed more than 120 Palestinians, about half of whom were identified as civilians.
Sami Abu Zuhri, a Hamas official, said the group "blesses the heroic operation in Jerusalem, which was a natural reaction to the Zionist massacre".
A loudspeaker in Gaza City blared the message: "This is God's vengeance."
Meanwhile an Israeli air strike killed four Palestinian in the Gaza Strip today, the Islamic Jihad militant group and the Israeli army said.
The Islamic Jihad said four of its members were killed in the missile strike near the southern Gaza town of Khan Younis. It said they were planting an explosive device to target Israeli army patrols.
An Israeli army spokesman said the attack was aimed at a number of gunmen who were planting explosives in the same area an Israeli soldier was killed earlier today.