Original: The siege ended on March 6, when the Mexican army attacked just before dawn while the defenders were sleeping.
Simplified: On March 6, after the Mexican army had been there for 12 days, the Mexican army attacked just before dawn while the defenders were sleeping.