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

 


Help: OASIS Mailing Lists Help | MarkMail Help

dita-lightweight-dita message

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


Subject: Fw: A few more questions about specialization template


FYI - the discussion thread on template-based specialization between Tim and me

Michael Priestley, Senior Technical Staff Member (STSM)
Enterprise Content Technology Strategist
mpriestl@ca.ibm.com

----- Forwarded by Michael Priestley/Toronto/IBM on 10/17/2016 02:00 PM -----

From:        Tim Grantham <tim@precisioncontent.com>
To:        Michael Priestley/Toronto/IBM@IBMCA
Date:        10/17/2016 01:31 PM
Subject:        RE: A few more questions about specialization template




Sure. I have actually implemented option #1 in the version I released today.
 
From: Michael Priestley [mailto:mpriestl@ca.ibm.com]
Sent:
Monday, October 17, 2016 1:18 PM
To:
Tim Grantham <tim@precisioncontent.com>
Subject:
RE: A few more questions about specialization template

 
ok if I share this thread with list?

Michael Priestley, Senior Technical Staff Member (STSM)
Enterprise Content Technology Strategist

mpriestl@ca.ibm.com



From:        
Tim Grantham <tim@precisioncontent.com>
To:        
Michael Priestley/Toronto/IBM@IBMCA
Date:        
09/30/2016 12:37 PM
Subject:        
RE: A few more questions about specialization template





Hi, Michael.

It might not be necessary to issue an error message (well, maybe a warning message): the stylesheet could check the parent of a specialized element for its @outputclass value as well as its @specmodel value, and if @outputclass has a value and @specmodel has a value of “inherit”, the stylesheet could issue a warning, but continue on with the assumption of the value “sequence” for the parent’s @specmodel.

Options 2 and 3 can be implemented in this version of the stylesheet, I think.

Thanks,
Tim.
P.S. Please do share this thread.

From:
Michael Priestley [
mailto:mpriestl@ca.ibm.com]
Sent:
Friday, September 30, 2016 10:20 AM
To:
Tim Grantham <
tim@precisioncontent.com>
Subject:
Re: A few more questions about specialization template


Hi Tim,

Sorry for the slow reply. My new job is pretty hectic at the moment.

Quick answers:

Re specialized child elements of an element with specmodel="inherit":
- I think for specmodel=inherit, specialized child elements can cause some interesting problems. I clearly didn't think this all the way through.
- They would be ok to add to the parent's content model, if the parent's content model is a choice group (any of the child elements in any order), but would break specialization rules if they were added (appended) to a sequence. For example, if you specialized the root topic element with specmodel="inherit", and had a specialized child body element, you wouldn't want to add that to the existing topic content model and get 2 body elements...
- I think we've got a few options:
      1) create some kind of list of which base elements have content models that are choices and which are sequences, so we can make a rule like "if the parent's existing content model is a choice, the new elements are added; if the parent's existing content model is a sequence, the new elements replace the existing"
      2) say that specialized child elements always replace their ancestor (and if someone wants to add instead of replace, they can override this by adding an unspecialized child element alongside the specialized one)
      3) just say that specmodel="inherit" is incompatible with specialized child elements - if you want to inherit the ancestor content model, you do so wholesale, with no tweaks/specializations

I think 1) or 2) are probably most useful, but more work to implement; I'd be fine with 3) for a first release, with potential enhancements in the future, for what it's worth.

How about you go ahead with option 3 (basically, give an error message if specmodel="inherit" has child elements with outputclass) for now, and we can discuss the other options via the list? OK if I share this thread?

Re your other questions:
- for specmodel="choice" or "sequence", yes that's right the child elements will replace the existing content model
- for specrole, I'd say ignore it for now - can add support later. First priority is getting the schema construction logic down - specrole is all about single-sourcing the template for additional purposes, for now let's just stick with the main purpose.

Michael Priestley, Senior Technical Staff Member (STSM)
Enterprise Content Technology Strategist

mpriestl@ca.ibm.com



From:        
Tim Grantham <tim@precisioncontent.com>
To:        
Michael Priestley/Toronto/IBM@IBMCA
Date:        
09/22/2016 11:52 AM
Subject:        
A few more questions about specialization template






Hi, Michael.

Am I right in assuming that specialized child elements of an element that has specmodel=“inherit” are addedto the content model of the parent element? And that if the parent element has specmodel=”choice” or specmodel=”sequence”, the child elements replace the content model of the parent element?

Also, I need clarification about the various purposes of the specrole attribute. I not even sure what questions to ask about it, as I’m having trouble parsing what the slide in your presentation says about it:
“•whether the content of an element is intended to be generated by the transform, editable by the author, an editor prompt, documentation, or used for content modeling purposes only (or any mix of the above)
•if unset, element content is editable by author (part of template)”

Do you have time for a short call to discuss?

Thanks,
Tim.

Tim Grantham

Director of Publishing Solutions
Precision Content Authoring Solutions Inc.











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