From: Hannes N. <h.n...@go...> - 2009-08-17 15:25:47
|
Hi everybody, testing the CTM-export of Onotoa I realized a bug (or feature) of the CTM serializer. The topics, using the PSIs of the standard, like tmcl:topic-type, will be filtered, so they are not int the CTM file. These topics only will be filtered, if they only have one subject identifier and participate in any association. This works for the topic-types, because the type-instance association is hidden by the addTypes method in TMAPI. However there is a problem if tmdm:subject or tmdm:topic-name is used in a TMCL constraint. Because they are explicitly in an association. Long story short, the question is, how do we solve this problem. There are a few options: 1. Let these topic be in the CTM file, which means having an entry like: "tmdm:subject ." - definitly not what I prefer. 2. Filter these types ignoring the association in an additional filter method. 3. Always ignore associations where topics of the standards are used. I would prefer 3. Even if the types are used in an association it is not necessary to specify them before. CTM creates topics on demand, if I remember correctly. What do you think? regards Hannes -- Onotoa - Simply create your Topic Maps schemas. http://onotoa.topicmapslab.de http://www.topicmapslab.de/people/Hannes_Niederhausen |
From: Lars H. <he...@se...> - 2009-08-17 15:53:14
|
Hi Hannes, > testing the CTM-export of Onotoa I realized a bug (or feature) of the > CTM serializer. It's a feature, of course. :) [...] > 1. Let these topic be in the CTM file, which means having an entry > like: "tmdm:subject ." - definitly not what I prefer. > 2. Filter these types ignoring the association in an additional filter method. > 3. Always ignore associations where topics of the standards are used. (2) and (3) are okay for me. Do you mean with (3) that this is done in the CTMWriter and not in the preprocessor? Best regards, Lars -- Semagia <http://www.semagia.com/> |
From: Hannes N. <h.n...@go...> - 2009-08-17 17:44:59
|
Hi LArs, > (2) and (3) are okay for me. > > Do you mean with (3) that this is done in the CTMWriter and not in the > preprocessor? actually I meant both to be in the CTMWriter, where all the other filtering is done. regards Hannes > Best regards, > Lars > > -- > Semagia > <http://www.semagia.com/> > > ------------------------------------------------------------------------------ > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day > trial. Simplify your report design, integration and deployment - and focus on > what you do best, core application coding. Discover what's new with > Crystal Reports now. http://p.sf.net/sfu/bobj-july > _______________________________________________ > tinyTiM-discuss mailing list > tin...@li... > https://lists.sourceforge.net/lists/listinfo/tinytim-discuss > -- Onotoa - Simply create your Topic Maps schemas. http://onotoa.topicmapslab.de http://www.topicmapslab.de/people/Hannes_Niederhausen |
From: Lars H. <he...@se...> - 2009-08-17 17:49:24
|
Hi Hannes, [...] >> (2) and (3) are okay for me. >> >> Do you mean with (3) that this is done in the CTMWriter and not in the >> preprocessor? > actually I meant both to be in the CTMWriter, where all the other > filtering is done. I see. Do you implement it (either (2) or (3))? Best regards, Lars -- Semagia <http://www.semagia.com> |
From: Hannes N. <h.n...@go...> - 2009-08-17 17:53:39
|
> I see. Do you implement it (either (2) or (3))? I will implement (3) tomorrow morning. regards Hannes -- Onotoa - Simply create your Topic Maps schemas. http://onotoa.topicmapslab.de http://www.topicmapslab.de/people/Hannes_Niederhausen |
From: Lars H. <he...@se...> - 2009-08-18 11:41:08
|
Hi Hannes, >> I see. Do you implement it (either (2) or (3))? > I will implement (3) tomorrow morning. Thanks. I changed a few lines, though: // remove tmdm:subject, because filter below doesn't work. tmdm:subject plays a role, so // _omitTopic returns false - we definitly don't want "tmdm:subject ." in our ctm file, do we? - Topic topic = topicMap.createTopicBySubjectIdentifier(TMDM.SUBJECT); - if ( (topic!=null) && (topics.contains(topic)) ) { + Topic topic = topicMap.getTopicBySubjectIdentifier(TMDM.SUBJECT); + if (topic != null) { topics.remove(topic); } I don't see a reason to create tmdm:subject if it does not exist in the topic map. If we create tmdm:subject, the topic will never be null. Committed in rev. 354. Best regards, Lars -- Semagia <http://www.semagia.com> |
From: Hannes N. <h.n...@go...> - 2009-08-18 12:53:58
|
Well, actually this line is completely unnecessary because i added TMDM.SUBJECT to the locators regarding Occurrences. (Because it is used as occurrence-type.) I thought I already removed it.. obviously not :( regards Hannes On Tue, Aug 18, 2009 at 1:46 PM, Lars Heuer<he...@se...> wrote: > Hi Hannes, > >>> I see. Do you implement it (either (2) or (3))? >> I will implement (3) tomorrow morning. > > Thanks. > > I changed a few lines, though: > > // remove tmdm:subject, because filter below doesn't work. tmdm:subject > plays a role, so > // _omitTopic returns false - we definitly don't want "tmdm:subject ." in > our ctm file, do we? > - Topic topic = topicMap.createTopicBySubjectIdentifier(TMDM.SUBJECT); > - if ( (topic!=null) && (topics.contains(topic)) ) { > + Topic topic = topicMap.getTopicBySubjectIdentifier(TMDM.SUBJECT); > + if (topic != null) { > topics.remove(topic); > } > > > I don't see a reason to create tmdm:subject if it does not exist in > the topic map. If we create tmdm:subject, the topic will never be > null. > > Committed in rev. 354. > > Best regards, > Lars > -- > Semagia > <http://www.semagia.com> > > > ------------------------------------------------------------------------------ > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day > trial. Simplify your report design, integration and deployment - and focus on > what you do best, core application coding. Discover what's new with > Crystal Reports now. http://p.sf.net/sfu/bobj-july > _______________________________________________ > tinyTiM-discuss mailing list > tin...@li... > https://lists.sourceforge.net/lists/listinfo/tinytim-discuss > -- Onotoa - Simply create your Topic Maps schemas. http://onotoa.topicmapslab.de http://www.topicmapslab.de/people/Hannes_Niederhausen |