For the artichokes: In a saucepan over a low flame, cook the onion in olive oil until translucent. Add the wine and reduce by 2/3. Add 4 cups of water, season with salt and pepper, and bring to a boil. Peel off the outer leaves of the artichokes. Peel the skin at the base. Cut off the top of the artichoke where the leaves start. Remove the choke. Add to the cooking liquid and simmer over medium flame until tender. Cool in the liquid.
For the squash: Preheat a grill to medium heat, or heat a grill pan on the stove. Cut the zucchini and yellow squash into rings approximately 1/4-inch thick. Season with salt and pepper. Grill until the vegetables are soft but not falling apart. Transfer to a plate to cool.
For the Swiss chard: In a large saute pan, heat the olive oil until hot. Add the chopped shallots and cook until translucent. Add the Swiss chard, season with salt, and cook until tender. Transfer to a bowl to cool.
For the vinaigrette: Preheat oven to 300 degrees F.
Dice the red onion, fennel, and garlic and place in a roasting pan. Season with salt and pepper. Add the sherry wine vinegar and olive oil. Cover with foil and roast in the oven for 1 1/2 to 2 hours. Remove from oven, stir to combine, and reserve.
For the snapper: Preheat oven to 450 degrees F.
Season the fish with salt and pepper. Heat an oven-proof saute pan over medium-high heat. Add the oil and heat through. Place the fish skin side down in the pan and cook for 2 minutes. Transfer pan to the oven for approximately 4 minutes, or until the fish is cooked through.
To serve: Toss the sweet 100 tomatoes in a bowl with the balsamic vinegar. Reheat the artichokes, squash, and Swiss chard. Drizzle the vinaigrette on a plate and place the fish on top. Layer the vegetables starting with the Swiss chard, followed by the artichokes, and finishing with the squash. Garnish the plate with the marinated tomatoes.