From: Gerd M. <ge...@sm...> - 2001-06-27 07:48:36
|
> But, what about an occurrence that happens to be stored in your local > persistent store? How do you reference it? Particularly, how do you > reference it such that others could, at a minimum, write and ask you for a > copy--given that you might have published the topic map on the web or sent > it off for merging elsewhere. > > All TopicMapObjects stored in a given persistent topic map have an object ID > assigned to them. So the URI for any TopicMapObject in the persistent store > would be the baseURL of the TopicMap with the object ID appended as a > fragment identifier. TopicMapObjects also have their sourceURL stored with > them (this is really to maintain the provenance of a topic map object and is > not intended to be a means of locating it). An application wishing to > resolve a URI to a topic map object would have to first split the URI into > the document part and the fragment identifier part, then look in the > TopicMapManager for the topic map with that ID. The ID should not be the object ID in the persistent store, since those IDs are normally hidden to the application layer, in our case the topicmap implementation. Also the validity of a topicmap object reference would depend on the database that contains it. So, if a topicmap provider changes the database, all references to it become invalid. We should better use the ID provided by TopicMapObject.getID() or the resourceID (or is this what you mean with persistent object ID ?). We could also use some kind of XPointer notation to point into another TopicMap. Best Regards, Gerd -- ________________________________________________________________ Gerd Mueller ge...@sm... SMB GmbH http://www.smb-tec.com |