RE: [dita] Containers for steps and other elements!?

From
France Baril <>
Date
2004-09-24T13:36:51+00:00
ID
Thread
RE: [dita] Containers for steps and other elements!?
Title: Message

Sorry, 
I wrote too fast... I meant no change to the current dtd if you use 
conref="startid endif".

  

  
-----Original Message-----
From: France Baril 
  
Sent: September 24, 2004 9:30 AM
To: Erik 
  Hennum
Cc: 
Subject: RE: [dita] 
  Containers for steps and other elements!?

  
I 
  like the idea of using conref for multiple items with a start and an end 
  id. Especially since it can be done without changes to 
  the current dita dtd and with almost any elements. 

  
 

  
I'll 
  try to implement a first version of this in the next few weeks. 
  The hardest part will be making sure no rules are broken, i.e. once elements 
  are put together, the document, must still be valid.

  
    

    
-----Original Message-----
From: Erik Hennum 
    [mailto:] 
Sent: September 23, 2004 5:33 
    PM
To: France Baril
Cc: 
    
Subject: Re: [dita] Containers for steps 
    and other elements!?

    
Hi, France:

I'm wondering if the issue is not so much containment 
    but, instead, conref to multiple items. That is, having a placeholder in the 
    referencing context that is replaced with multiple items from the referenced 
    context.

If so, the referencing context would need to identify the 
    start and end targets in the referenced context. Also, you'd want to make 
    sure that the referencing context can accept multiple items. One approach 
    would be to have separate placeholders for the start target and end target, 
    as in:

<!-- referenced topic 
    -->
<steps>
...
<step 
    id="startStepID">...</step>
<step>...</step>
<step>...</step>
<step 
    id="endStepID">...</step>
...
</steps>

<!-- 
    referencing topic -->
<steps>
...
<step 
    conrefstart="topic.xml#topicID/startStepID"/>
<step 
    conrefend="endStepID"/>
...
</steps>

If adjacent start 
    and end placholders are allowed in the context, more than one replacement 
    will be valid. There are still issues, of course. Does each item have to 
    have the same element type? What if the referencing context allows a fixed 
    number of items in the context and the referenced context has more 
    items?

If we introduce a universal grouping element to contain a list 
    for referencing, the conref would no longer guarantee that the replacement 
    is valid in context. We'd also have semantically neutral containers 
    everywhere.

It's a good issue, but I'd suggest that we take it up 
    after DITA 1.0. All the more reason to move quickly on DITA 1.0 so we can 
    start improving the base.

One possible interim workaround would be to 
    model the reused steps as substeps and conref the step. Or, if the steps are 
    large enough, model each group of steps as a separate subordinate task topic 
    and use a map to reuse a subtask under several different container 
    topics.

Hoping that's useful,

Erik 
    Hennum


' 
    src="gif00029.gif" width=16>"France Baril" 
    <>

    
      
      

        
          
            
              
                "France Baril" 
                  <> 
                  
                  
09/23/2004 11:17 AM

        
          
            
            

              

                
To

              
<>

            

              

                
cc

              

            

              

                
Subject

              
[dita] Containers for steps and other 
            elements!?

          
            
            

              
              

Hi, as my project evolve I seem to get into very specific 
    issues. 
    
I'm not sure we're at this level of details yet, but 
    here it is… 
    
I have mutliple tasks that use many of the same steps. 
    Somehow, it would be very useful to be able to reuse not an element, but a 
    group of elements. I'm thinking of containers for elements. Here is an 
    example (note this is a quick unrealistic translation of French content) 
    where I am documenting an application in which there are many ways of doing 
    the same thing, so depending on where you start from and what your goal is 
    as a user, the first steps differ. 
    
Note: The hypothesis is that I am not using the standard 
    dita dtd in which a step may contain substeps and not steps; my step 
    elements may contain other "steps/step" levels. 
    
Task1: how to share a news monitoring folder with other 
    users 
... 
Steps 
Step: Click Modify Folder 
… Would like container (id=SubSetSharingOptions) 
Step: In section Sharing, select 
    Yes. 
Step: In section User 
    groups, check the groups to which you want to grant access. 
… End container 
    
Step: Click OK 
    
Task2: how to configure email alerts when new news 
    documents are added to the news monitoring folder. 
    
... 
Steps (id=ConfigureEmailAlerts) 
    
Step: Click Modify Folder 
    
… Would like container 
    (id=SubSetAlertOptions) 
Step 
    (id=SelectRecieveAlert): In section Receive Email Alerts, select 
    Yes. 
Step 
    (id=SelectDayFrequency): In section Day, select the days for which you want 
    to receive alerts. For example, Monday to Friday. 
    
Step (id=SelectHourFrequency): In section Hour, select 
    the hours for which you want to receive alerts. For example. 9 to 5. 
    
… End container 
Step: Click OK 
    
Task3 How to create a news monitoring 
    folder. 
… 
Steps (id=CreateNewsFolder) 
Step: Click Create News Monitoring 
    Folder. 
Step: In the Name 
    field, enter a name for the folder. 
Step: Set alert options which will allow you to receive email 
    notification when new news documents are added to the folder: 
    
Steps 
Container (conref = 
    SubSetAlertOptions) 
Step: 
    Set Sharing options to allow other users to view your folder's news 
    articles: 
Steps 
Container (conref = 
    SubSetSharingOptions) 
Step: 
    Click OK. 
    
I did not find such a "container" mechanism in the 
    actual DITA architecture. Is it there? If not, is it something we should 
    consider or is it something one should add in its own customized 
    specialization? Is there a no-no or a better solution? 
    
I think it would be very useful for anyone documenting 
    user interfaces. There is so much repetition because there are so many ways 
    of doing one thing from the user perspective. What is really different in 
    creating something and modifying something? Usually, it's only the steps 
    that tell you how to get there. 
    
Also, it is very interesting to document the actual user 
    actions like "share your news folder", "receive alerts", "add search 
    criteria to your news monitoring folder" rather then modify your news folder 
    in which, by the way, you may set sharing options and configure alert 
    notification and add search criteria to find relevant news documents.... It 
    this last case, the instructions on how to get there are all the same. In 
    this case, Click Modify Folder is quite straight forward, but in other cases 
    in could be longer. 
    
France Baril 
    
Documentation 
    architect/Architecte documentaire 
I X I A S O F T 
    
+1 514 279-4942 
 
[ www.ixiasoft.com ]