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] DITA v1.2 Review | Propagating attribute values

Aside from the problems I have redefining how something basic like propagation works at this late stage, I'd point out that treating attribute values determined by explicit specification versus by DTD default as different is something that should be done very carefully. 


For example, in SGML days, the (ESIS) data model made no distinction.  It was a conscious decision that there would be no way to distinguish between an attribute value that was determined by being defaulted in the DTD versus one that had an explicit assignment, and the XPointer/XSLT data model also does not allow for any such distinction.


I would be very loath--especially at this point--to say that propagation differs depending on whether an attribute's value was explicitly specified versus defaulted in the DTD.




From: Tarun Garg [mailto:tarung@adobe.com]
Sent: Wednesday, 2010 August 25 3:25
To: dita@lists.oasis-open.org
Subject: [dita] DITA v1.2 Review | Propagating attribute values


The attribute values get propagated:

·         For Keys – from key-defining element to key-referencing element.

·         For Conref – from referenced element to referencing element.


An attribute value can be specified through two ways:

·         In the DTD; as the default/fixed value.

·         In the XML instance.


So, while propagating the attribute values, I think the values specified in the XML instance itself shall only be considered for propagation. One of the reason I think so, is that the value specified in the DTD is already available in most cases and need not be propagated. Apart from this, the value specified in the XML instance, indicates the user intention to assign a specific value to an element & that needs to be propagated.




One specific case for this relates to public review comment #C011 (http://lists.oasis-open.org/archives/dita-comment/201007/msg00016.html).


For a <keydef> element the default value of @processing-role is define as “resource-only” through the DTD. Now, there is a possibility that a user assigns value to @processing-role explicitly in the xml. These two cases are different and I think the propagation of the value shall happen differently for these two scenarios as follows.

·         If the value is defined through DTD – It shall NOT be propagated from key-defining to key-referencing element.

·         If the value is explicitly specified in the XML - It shall be propagated from key-defining to key-referencing element.

This is so because, in general for key-defining element, the @processing-role is controlled through DTD because, the purpose of the element is clear and per the standard. Now, if a user is specifying a value in the XML explicitly, then I assume the user wants some different behavior and hence, the value shall be propagated.



Tarun Garg | Adobe Systems | +91-120-2444711 | tarung@adobe.com

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