OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

dita message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: RE: [dita] Attribute cascade proposal


I agree, though I'd want to allow it anywhere @props is allowed, not just on
topicrefs.

Chris

-----Original Message-----
From: Kristen James Eberlein [mailto:kris@eberleinconsulting.com] 
Sent: Tuesday, May 21, 2013 3:43 PM
To: dita@lists.oasis-open.org
Subject: Re: [dita] Attribute cascade proposal

I like #4. It would solve some of my client problems nicely.

Best,
Kris

Kristen James Eberlein
Principal consultant, Eberlein Consulting Co-chair, OASIS DITA Technical
Committee Charter member, OASIS DITA Adoption Committee
www.eberleinconsulting.com
+1 919 682-2290; kriseberlein (skype)

On 5/21/2013 3:16 PM, Robert D Anderson wrote:
> Hi,
>
> As with the branch filtering item, I'm hoping to get some initial TC 
> feedback on expected direction with the cascade item.
>
> Basic use case is a map like the following, applies to 3 platforms:
> <map platform="mac win linux">
>   ....
>      <topicref href="nested-branch.dita" platform="mac">...</topicref>
>   ....
> </map>
>
> Per the spec today, when platform cascades, values combine. This means 
> if I
> (accurately) indicate that my map applies to 3 platforms, I cannot 
> then restrict one section of that map to a specific platform - values 
> combine, so that even my mac-only branch is treated as mac/win/linux.
>
> I expect there are many cases where this is valid and proper - and 
> applications have implemented this - so we cannot simply change the 
> behavior. The other option is to provide author or tool control over 
> the behavior. Potential solutions considered:
>
> 1) Extend @lockmeta to add some control over whether attributes get
merged.
> I don't like this because it's on <topicmeta> -- so to find out if 
> @platform cascades, we might have to check parent/topicmeta/@lockmeta, 
> then parent/parent/topicmeta/@lockmeta, and so on -- too indirect and 
> likely to be confusing.
> 2) Add a token to attributes. For the nested case above, I could say 
> something like platform="#override# mac" or similar - indicate this 
> does not merge with ancestor values. Feels clunky and likely to be 
> painful to use, possibly to implement.
> 3) Change the spec to make this optional - tools can implement cascade 
> with or without merging, possibly through some tool option. Have not 
> really considered this fully, and could mean you get very different 
> behavior in different apps.
> 4) Add a new attribute in maps, something like cascade="merge | nomerge".
> Would likely leave this open to other values, with 2 (or more) 
> predefined tokens - similar to how chunking works - allowing tools to 
> expand their support to new types of merging. Default could be the 
> predefined token "merge", to keep current behavior. Not sure if this 
> attribute would itself cascade / override lower values, not fully thought
out yet.
>
> At the moment I'm leaning towards the last option in that list. The 
> first two seem too complex / difficult to use. The third I'd be 
> willing to consider but for now at least I think the goal is to have 
> this a standardized behavior, which pushes us to #4.
>
> Thoughts?
>
> Robert D Anderson
> IBM Authoring Tools Development
> Chief Architect, DITA Open Toolkit (http://dita-ot.sourceforge.net/)
>
>
> ---------------------------------------------------------------------
> To unsubscribe from this mail list, you must leave the OASIS TC that 
> generates this mail.  Follow this link to all your TCs in OASIS at:
> https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php
>
>
>
>


---------------------------------------------------------------------
To unsubscribe from this mail list, you must leave the OASIS TC that
generates this mail.  Follow this link to all your TCs in OASIS at:
https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php 




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]