Original Plan:
Use a global typing system for the names of symbols.
This is not good because it creates ambiguities. Matching a color for the background of a webpage should be treated differently than the matching of a color for wine.
For this reason, the property's URI should be used as the symbol. These are guaranteed unique.
However, in many cases it is useful and necessary to take advantage of the similarities between the background color property, the foreground color property, the tag color property, etc.
For this reason, there should be a way to share syntax rules between similar symbols.
Problem: How can similarities and differences be expressed between symbols and their syntax rules? example: what parts of the grammar can be shared between a wine's color and the color of the text in a document?
Temporary Solution: Create groups of symbols that map simple type names like color, etc to all properties that use that grammar.
Possible Solution: allow global symbol names. Some people might feel more natural describing the color of text they want in terms normally used for wine. Is this power? Or is this an unnecessary increase in complexity?