Conref, conditional text, and filtering by attribute

LW White lwwhite5 at hotmail.com
Wed May 19 07:17:03 PDT 2010


Hi Roger,

Based on some of your other knowledgeable posts, I'm going to assume that you have written and organized your content with this reuse in mind, so it is well-structured for that :-) But, as you've discovered, taking the in/not in approach doesn't buy you much more than using conditional text. Since it seems the things you want to filter out are actually (or largely) element-based (context, info, etc.), it would be great if you could filter based on these elements rather than on attributes.

And you can! Russ Ward of West Street Consulting offers an excellent free Frame plug-in, AXCM. (http://www.weststreetconsulting.com/WSC_AXCM.htm) I have used the heck out of it--it's worlds better than the built-in Filter by Attribute functionality, which as you point out, can be a bit unpredictable in its results. One of the strongest points of AXCM is that it allows you to build XPath-based rules so that you can filter on elements as well as attributes, and build much more detailed rules to pinpoint content.

Good luck!

Leigh



Subject: Conref, conditional text, and filtering by attribute

Hello All
 
FM 9.0 p250 (structured), DITA, Windows XP SP3.
 
I'm looking at conditionalizing text that contains content for a training guide as well as a user guide. My document is a container file that contains topics referenced by conref in the usual DITA way. The training guide is a small subset of the larger document, and that subset exists within referenced topics. For example, I have a conreffed <task> and want to filter out the <context>, <info>, <stepresult> elements, and so on.
 
I'm familiar with conditional text, not so familiar with filtering by attribute.
 
So far I've tried the following permutations:
 
1. Apply two conditions, Training and NotTraining, to the appropriate elements. The problem with this is that anything that is not tagged is IN, so I have to tag everything in order to eliminate it from the training guide. Is there a simpler way than that?
 
As I understand it, I should be able to apply a condition to parts of a doc, then reference it as an inset/conref, and do the show/hide routine in the container document - correct?
 
2. Using filtering by attribute... This is weird. I have a container document with a conreffed <task>. I tag the reference with <task audience="Training">, and apply a filter audience="Training". Everything stays put, as expected. But if I tag the contained <context audience="NotTraining" and apply the same filter, it filters out the whole <task>. I expected it just to filter out the <context>.
 
I've tried other things, but my brain hurts now and I can't remember.
 
So my bottom-line question is: What is the best way to obtain a small subset of a document?
 
Thanks.
 
Roger
 
 
Roger Shuttleworth
Technical Documentation
AV-BASE Systems Inc.
1000 Air Ontario Drive, Suite 200
London, Ontario
N5V 3S4
Tel. 519 691-0919 ext. 330 		 	   		  
_________________________________________________________________
Hotmail has tools for the New Busy. Search, chat and e-mail from your inbox.
http://www.windowslive.com/campaign/thenewbusy?ocid=PID28326::T:WLMTAGL:ON:WL:en-US:WM_HMP:042010_1


More information about the framers mailing list