Place a large sauce pan over medium low heat. Lightly coat the bottom of the pan with olive oil. Add the onions and garlic and slowly cook until golden brown (about 15-20 minutes).
Add the fruit, tomatoes with their juices, tomato paste, vinegar, harissa and spices.
Cook over medium heat until the mixture is very fragrant and the fruit is soft (about 30 minutes).
Cool the mixture completely. Puree the mixture in a blender or food processor in batches, or use an immersion blender.
Add the fresh herbs and oil. Slowly simmer for about 15 minutes until the flavors have melded.
The sauce can be stored covered in the refrigerator for 5 days or frozen for 2 months.
Combine the ribs, lemon juice and zest, olive oil, garlic and parsley and place in a storage container with tight fitting lid or large Ziploc bag.
Marinate the short ribs at least 4 hours or overnight.
Preheat the grill to medium low heat or oven to 275 degrees F.
Place the short ribs on the grill and grill until the meat is very tender, turning the ribs as necessary (about 1-1/2 - 2 hours).
During the last 1/2 hour, brush the ribs with the barbecue sauce.
Serve the ribs with plenty of extra sauce.