[Date Prev][Date Next]
[Thread Prev][Thread Next]
[Date Index]
[Thread Index]
[New search]
Subject: Re: framers-digest V1 #673
From: Chris Despopoulos <cud@xxxxxxxxxxxx>
Date: Thu, 22 Nov 2001 00:28:42 +0100
References: <3d49204e.3164827080@smtp.omsys.com>
Sender: owner-framers@xxxxxxxxx
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:0.9.2) Gecko/20010726 Netscape6/6.1
I developed an FDK plugin that maintained unique IDs. It's bigger than a bread-box, I might add. The problem is not unusual - you have a doc database, and you use Maker+SGML to create doc subsets. And of course, you need to have xrefs that will work once you pull all the subsets together in a specific doc instance. But Maker can't ensure unique IDs across files. We had a utility that tracked serial numbers, and used these for the IDs of specific elements that were defined to be one-of-a kind for each sub doc. All children of these special elements had the serialnumber as a prefix to their IDs. I have heard of people using filenames as a prefix as well. Then we let Maker assign the ID value postfix. This got us unique IDs. How did we get Maker to assign the post-fix? Just let Maker create the attr val, then modify the result. Exact details may vary depending on your specific situation. Just having all these files in a book seems suspect to me if you think that will force Maker to give unique ID vals across all components. I believe you still have the same problem - putting the files in a book doesn't change that. (But I could be wrong...) Where it got hairy was dealing with cut/copy/paste, move, delete, ad-nauseum user functions... What do you do in each case? But in the end we got something that worked rather well - at least the final end users haven't complained or reported any bugs. I suspect that writing up a utility to convert legacy xrefs to use the new IDs would not be rocket science. If you want more detail about the fun I had with this, contact me offline. Cheers cud ** To unsubscribe, send a message to majordomo@omsys.com ** ** with "unsubscribe framers" (no quotes) in the body. **