Prepare the cabbage, and cover with cold water while you prepare the remaining ingredients. Heat the oil over medium heat in a large, lidded skillet or casserole, and add the onion. Cook, stirring, until just about tender, about three minutes. Add 2 tablespoons of the balsamic vinegar and cook, stirring, until the mixture is golden, about three minutes, then add the apples and stir for two to three minutes.
Drain the cabbage and add to the pot. Toss to coat thoroughly, then stir in the allspice, another 2 tablespoons balsamic vinegar, and salt to taste. Toss together. Cover the pot, and cook over low heat for one hour, stirring from time to time. Add freshly ground pepper, taste and adjust salt, and add another tablespoon or two of balsamic vinegar as desired.
Advance preparation: This dish tastes even better the day after you make it, and it will keep for five days in the refrigerator. Reheat gently.