Kal Ahmed - 2006-11-15

Logged In: YES
user_id=176992
Originator: NO

My feeling is that the underlying data model should keep all parameters as topics, otherwise it gets messy for a programmer calling getParameters to have to deal with a list of Topic and Locator objects. However, a convenience method addParameter(Locator l) could operate as follows:
1) Find a topic with subject identifier l. If found add that topic as a parameter otherwise,
2) Find a topic with source locator l. If found add that topic as a parameter otherwise,
3) Create a new topic and add l as a subject identifier then add that topic as a parameter.

(Note that step (2) is required because a topic T with subject identifier L will merge with a topic T with source locator L under topic map merging rules, so if you didn't do that step then step (3) would create a topic which would instantly get merged).