o Are Vocabulary and Namespace synonymous terms?
Not quite, and I'd actually say that the term 'vocabulary' might be a little off base - I'd prefer 'schema' based on the previous example, and common usage:
A vocabulary (or schema) is the syntax for your XML file. It defines what are the legal elements and attributes, and how they can be combined.
A namespace (declaration) indicates that a particular XML element or attribute belongs to a particular schema (vocabulary).
This means that you can build an XML document based on more than one schema (vocabulary) and qualify the elements/attributes to denote which schema they derive from. This is obviously useful if two schema have elements/attributes of the same name - you can explicitly state which version you are using.
The Namespace Recommendation can be found at : http://www.w3.org/TR/REC-xml-names/
o What is XML-DATA?
See http://www.w3.org/TR/1998/NOTE-XML-data-0105/
XML-DATA is one of many proposed schema languages which includes XML Schemas, SOX and DSD. I'd suggest that XML Schemas is likely to become the standard simply because its further along the review process.
- how and why mix several vocabularies,
I would be very interested in this one.
As are a lot of XML developers! Its hoped that the next version of the Schemas spec will address these issues.
http://www.lists.ic.ac.uk/hypermail/xml-dev/xml-dev-Nov-1999/0916.html
Cheers,
L.