<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<![if !supportAnnotations]><style id="dynCom" type="text/css"><!-- --></style><script language="JavaScript"><!--
function msoCommentShow(anchor_id, com_id)
{
        if(msoBrowserCheck()) 
                {
                c = document.all(com_id);
                a = document.all(anchor_id);
                if (null != c && null == c.length && null != a && null == a.length)
                        {
                        var cw = c.offsetWidth;
                        var ch = c.offsetHeight;
                        var aw = a.offsetWidth;
                        var ah = a.offsetHeight;
                        var x  = a.offsetLeft;
                        var y  = a.offsetTop;
                        var el = a;
                        while (el.tagName != "BODY") 
                                {
                                el = el.offsetParent;
                                x = x + el.offsetLeft;
                                y = y + el.offsetTop;
                                }
                        var bw = document.body.clientWidth;
                        var bh = document.body.clientHeight;
                        var bsl = document.body.scrollLeft;
                        var bst = document.body.scrollTop;
                        if (x + cw + ah / 2 > bw + bsl && x + aw - ah / 2 - cw >= bsl ) 
                                { c.style.left = x + aw - ah / 2 - cw; }
                        else 
                                { c.style.left = x + ah / 2; }
                        if (y + ch + ah / 2 > bh + bst && y + ah / 2 - ch >= bst ) 
                                { c.style.top = y + ah / 2 - ch; }
                        else 
                                { c.style.top = y + ah / 2; }
                        c.style.visibility = "visible";
}       }       }
function msoCommentHide(com_id) 
{
        if(msoBrowserCheck())
                {
                c = document.all(com_id);
                if (null != c && null == c.length)
                {
                c.style.visibility = "hidden";
                c.style.left = -1000;
                c.style.top = -1000;
                } } 
}
function msoBrowserCheck()
{
        ms = navigator.appVersion.indexOf("MSIE");
        vers = navigator.appVersion.substring(ms + 5, ms + 6);
        ie4 = (ms > 0) && (parseInt(vers) >= 4);
        return ie4;
}
if (msoBrowserCheck())
{
        document.styleSheets.dynCom.addRule(".msocomanchor","background: infobackground");
        document.styleSheets.dynCom.addRule(".msocomoff","display: none");
        document.styleSheets.dynCom.addRule(".msocomtxt","visibility: hidden");
        document.styleSheets.dynCom.addRule(".msocomtxt","position: absolute");
        document.styleSheets.dynCom.addRule(".msocomtxt","top: -1000");
        document.styleSheets.dynCom.addRule(".msocomtxt","left: -1000");
        document.styleSheets.dynCom.addRule(".msocomtxt","width: 33%");
        document.styleSheets.dynCom.addRule(".msocomtxt","background: infobackground");
        document.styleSheets.dynCom.addRule(".msocomtxt","color: infotext");
        document.styleSheets.dynCom.addRule(".msocomtxt","border-top: 1pt solid threedlightshadow");
        document.styleSheets.dynCom.addRule(".msocomtxt","border-right: 2pt solid threedshadow");
        document.styleSheets.dynCom.addRule(".msocomtxt","border-bottom: 2pt solid threedshadow");
        document.styleSheets.dynCom.addRule(".msocomtxt","border-left: 1pt solid threedlightshadow");
        document.styleSheets.dynCom.addRule(".msocomtxt","padding: 3pt 3pt 3pt 3pt");
        document.styleSheets.dynCom.addRule(".msocomtxt","z-index: 100");
}
// --></script><![endif]><style><!--
/* Font Definitions */
@font-face
        {font-family:Cambria;
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
p.MsoCommentText, li.MsoCommentText, div.MsoCommentText
        {mso-style-priority:99;
        mso-style-link:"Comment Text Char";
        margin-top:0in;
        margin-right:0in;
        margin-bottom:10.0pt;
        margin-left:0in;
        page-break-after:avoid;
        font-size:10.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-CA;}
span.MsoCommentReference
        {mso-style-priority:99;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Balloon Text Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";}
span.EmailStyle17
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#44546A;}
span.BalloonTextChar
        {mso-style-name:"Balloon Text Char";
        mso-style-priority:99;
        mso-style-link:"Balloon Text";
        font-family:"Tahoma","sans-serif";}
span.CommentTextChar
        {mso-style-name:"Comment Text Char";
        mso-style-priority:99;
        mso-style-link:"Comment Text";
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-CA;}
p.c, li.c, div.c
        {mso-style-name:"c\,Code\,C";
        margin-top:0in;
        margin-right:0in;
        margin-bottom:10.0pt;
        margin-left:.2in;
        mso-add-space:auto;
        line-height:115%;
        page-break-after:avoid;
        font-size:11.0pt;
        font-family:Consolas;
        mso-fareast-language:EN-CA;}
p.cCxSpFirst, li.cCxSpFirst, div.cCxSpFirst
        {mso-style-name:"c\,Code\,CCxSpFirst";
        mso-style-type:export-only;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.2in;
        margin-bottom:.0001pt;
        mso-add-space:auto;
        line-height:115%;
        page-break-after:avoid;
        font-size:11.0pt;
        font-family:Consolas;
        mso-fareast-language:EN-CA;}
p.cCxSpMiddle, li.cCxSpMiddle, div.cCxSpMiddle
        {mso-style-name:"c\,Code\,CCxSpMiddle";
        mso-style-type:export-only;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.2in;
        margin-bottom:.0001pt;
        mso-add-space:auto;
        line-height:115%;
        page-break-after:avoid;
        font-size:11.0pt;
        font-family:Consolas;
        mso-fareast-language:EN-CA;}
p.cCxSpLast, li.cCxSpLast, div.cCxSpLast
        {mso-style-name:"c\,Code\,CCxSpLast";
        mso-style-type:export-only;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:10.0pt;
        margin-left:.2in;
        mso-add-space:auto;
        line-height:115%;
        page-break-after:avoid;
        font-size:11.0pt;
        font-family:Consolas;
        mso-fareast-language:EN-CA;}
span.Non-normativeBracket
        {mso-style-name:"Non-normative Bracket\,Example start\/end";
        font-style:italic;}
span.Element
        {mso-style-name:Element;
        font-family:"Calibri Light","sans-serif";}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A">From today’s discussion of this, I propose the following text.  I’m not yet convinced this is ideal, but it’s a target for further discussion.  This also intends
 to capture Francis’ comments below and in the meeting about not necessarily constraining MCE processors to ignore and preserve app-defined extension elements the way the current text does.  Implications of the simple, generalized definition of an app-defined
 extension element include: potential changes to clause 10 steps about extension elements if we want to enable behavior other than the current pass-through, or we could make pass-through the default that can be overridden by a markup specification.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A">(Background for those not at the meeting: As Rex walked through the comments on the draft 0.92 document, Murata-san indicated he didn’t like the revised text
 he had proposed.  I agreed to take a look at revised clause 9 text, with a goal of focusing on the syntactic and defining what an application-defined extension element is, but not getting into related behavior, since that’s covered in clause 10 semantic definitions. 
 I leveraged some of Murata-san’s proposed text because it had improvements.)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A">==Text of Clause 9==<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">An application-defined extension element is an element occurring in the markup configuration for which the MCE processor's processing behavior is defined by the markup specification.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">[<span class="Non-normativeBracket">Rationale</span>: This mechanism is intended, but not limited, to be used by markup specifications to create extensibility points within
 the markup specification. <span class="Non-normativeBracket">end rationale</span>]<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">[<span class="Non-normativeBracket">Note</span>: If the markup specification includes a schema, an extension element might be constrained by the schema to occur only in specific
 markup contexts. <span class="Non-normativeBracket">end note</span>]<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">[<span class="Non-normativeBracket">Note</span>: The content of an application-defined extension element might contain markup that uses Markup Compatibility constructs. A
 consuming application might invoke an MCE processor to process the content of application-defined extension elements contained in an output document constructed by an MCE processor.
<span class="Non-normativeBracket">end note</span>]<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">[<span class="Non-normativeBracket">Example</span>:<o:p></o:p></span></p>
<p class="cCxSpFirst"><span style="mso-fareast-language:JA"><example<o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">  xmlns:e1="http://www.example.com/e1"<o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">  xmlns:unknown="http://www.example.com/unknown"><o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">  <e1:foo><o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">    <unknown:foo/><o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">  </e1:foo><o:p></o:p></span></p>
<p class="cCxSpLast"><span style="mso-fareast-language:JA"></example><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">In this example, the
<span class="Element"><span style="font-family:"Calibri","sans-serif"">e1:foo</span></span> element contains the
</span><span class="Element"><span style="font-family:"Cambria","serif"">unknown:foo</span></span><span style="font-family:"Cambria","serif"">
</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">element.  Suppose that a</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";mso-fareast-language:JA">n MCE processor’s
</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">markup specification contains the expanded name ("http://www.example.com/e1", "foo") and its application configuration does not contain "http://www.example.com/unknown".  Then, the element
</span><span class="Element"><span style="font-size:11.0pt;font-family:"Cambria","serif"">e1:foo</span></span><span style="font-size:11.0pt;font-family:"Cambria","serif"">
</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">is an application-defined extension element.  Although the
</span><span class="Element"><span style="font-size:11.0pt;font-family:"Cambria","serif"">unknown:foo</span></span><span style="font-size:11.0pt;font-family:"Cambria","serif"">
</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">element does not belong to an understood or ignorable namespace, according to the semantic definitions in §10, the MCE processor does not report the existence of that elements as an error.
<span class="Non-normativeBracket">end example</span>]<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-CA" style="font-size:11.0pt;font-family:"Calibri","sans-serif";mso-fareast-language:EN-CA"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A">==Move this example to Annex A==</span><span lang="EN-CA" style="font-size:11.0pt;font-family:"Calibri","sans-serif";mso-fareast-language:EN-CA"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">[<span class="Non-normativeBracket">Example</span>:<o:p></o:p></span></p>
<p class="cCxSpFirst"><span style="mso-fareast-language:JA"><example<o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">    xmlns:mce="http://schemas.openxmlformats.org/markup-compatibility/2006"<o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">    xmlns:i1="http://www.example.com/i1"<o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">    xmlns:e1="http://www.example.com/e1"><o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">  <extensionElement><o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">    <foo1<o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">    mce:Ignorable="i1"<o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">    mce:ProcessContent="i1:bar1"<o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">    mce:MustUnderstand="e1"><o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">    </foo1><o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">    <mce:AlternateContent mce:Ignorable="i1" ><o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">      <mce:Choice Requires="e1" > ... </mce:Choice><o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">      <mce:Fallback i1:foo=""> ... </mce:Fallback><o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">    </mce:AlternateContent><o:p></o:p></span></p>
<p class="cCxSpMiddle"><span style="mso-fareast-language:JA">  </extensionElement><o:p></o:p></span></p>
<p class="cCxSpLast"><span style="mso-fareast-language:JA"></example><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">In this example, M</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";mso-fareast-language:JA">CE</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">
 elements and attributes occur within the </span><span class="Element"><span style="font-size:11.0pt;font-family:"Cambria","serif"">extensionElement</span></span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""> element, which is the only child
 of the root element example.  Suppose that a</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";mso-fareast-language:JA">n MCE processor is configured to preserve extension elements of</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">
 an expanded name ("http://www.example.com/e1", "extensionElement").  Then, the MCE processor preserves the
</span><span class="Element"><span style="font-size:11.0pt;font-family:"Cambria","serif"">extensionElement</span></span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""> element.  Therefore, MCE elements and attributes within it, namely
</span><span style="font-size:11.0pt;font-family:"Cambria","serif"">mce:Ignorable</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">="i1",
</span><span style="font-size:11.0pt;font-family:"Cambria","serif"">mce:ProcessContent</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">="i1:bar1",
</span><span style="font-size:11.0pt;font-family:"Cambria","serif"">mce:MustUnderstand</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">="e1",
</span><span style="font-size:11.0pt;font-family:"Cambria","serif"">mce:AlternateConent</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">,
</span><span style="font-size:11.0pt;font-family:"Cambria","serif"">mce:Choice</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">, and
</span><span style="font-size:11.0pt;font-family:"Cambria","serif"">mce:Fallback</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">, appear in the output document.
<span class="Non-normativeBracket">end example</span>]</span><span lang="EN-CA" style="font-size:11.0pt;font-family:"Calibri","sans-serif";mso-fareast-language:EN-CA"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A">==Related edits==<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A">Possible changes to extension element discussion in clause 10 (steps subclauses).<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A">Part 1 contains “markup consumer” and “markup producer” (18.2.10) and we may want to edit that away.  (Related to the previous change recommended by Murata-san
 to move away from those terms, below.)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A">Should the definitions in 10.1 for markup configuration and application configuration be pushed into the Terms and Definitions definitions of those terms to
 make them more explicit?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A">John<o:p></o:p></span></p>
<p class="MsoNormal"><a name="_MailEndCompose"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#44546A"><o:p> </o:p></span></a></p>
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> Francis Cave [mailto:francis@franciscave.com]
<br>
<b>Sent:</b> Thursday, August 22, 2013 8:46 AM<br>
<b>To:</b> 'SC 34/WG 4 mailing list'<br>
<b>Subject:</b> RE: Proposed text for Clause 9<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Sorry, Murata-san, I should have read the current working draft more carefully.
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">So, the behaviour of MCE processors with respect to extension elements is currently defined as part of the processing model in Clause 9. If we
 accept that ALL applications of MCE must handle extension elements as currently specified in Clause 9, this is the right place to specify such normative behaviour. If, on the other hand, we can agree that SOME applications of MCE (not OOXML) might wish to
 specify different behaviours for MCE processors with respect to extension elements, we either have to remove such normative requirements from Clause 9, or make it clear that they are not mandatory but are recommended as likely best practice, or weaken them
 further by including them purely as examples of how MCE processors might behave.
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">As I have already stated, my main concern is that, if we are revising Part 3 so that MCE can be applied in markup specifications other than OOXML,
 we should think carefully about which behaviours need to be normative for all MCE processors, regardless of MCE application, and which should be specified by the application. Clearly it makes sense to specify normatively all behaviours with respect to MCE
 constructs, i.e. constructs that are represented by elements and attributes with names in the MCE namespace. But I don’t think this necessarily applies to extension elements – which are, after all, supposed to be “application-defined”. I think it can be argued
 that if they are application-defined, the way they should be handled by MCE processors should also be application-defined. Otherwise, why not define an element in the MCE namespace called ‘mce:extension-element’ (or ‘mce:ext’, if you prefer) and leave it at
 that? I know that OOXML hasn’t done that, and maybe we feel that it should have done, but it didn’t, and therefore the question has arisen – in my mind, at least.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Kind regards,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Francis<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt">
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">
<a href="mailto:eb2mmrt@gmail.com">eb2mmrt@gmail.com</a> [<a href="mailto:eb2mmrt@gmail.com">mailto:eb2mmrt@gmail.com</a>]
<b>On Behalf Of </b>MURATA Makoto<br>
<b>Sent:</b> 22 August 2013 16:19<br>
<b>To:</b> Francis Cave<br>
<b>Cc:</b> SC 34/WG 4 mailing list<br>
<b>Subject:</b> Re: Proposed text for Clause 9<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span lang="EN-GB"><o:p> </o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-GB">2013/8/13 Francis Cave <<a href="mailto:francis@franciscave.com" target="_blank">francis@franciscave.com</a>><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB">Murata-san<br>
<br>
I understand the distinction between MCE processors and markup consumers.<o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-GB"><br>
> To me, markup consumers and MCE processors are very different.<br>
> Requirements on MCE processors have to be very clear.  Their behaviours<br>
are<o:p></o:p></span></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span lang="EN-GB">> complet[el]y predictable.  But requirements on markup consumers are much<br>
more<br>
> predictable.<br>
<br>
I think you mean that the requirements on markup consumers are much LESS<br>
predictable.<o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB">Right.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB"> <o:p></o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt">
<p class="MsoNormal" style="margin-bottom:12.0pt"><span lang="EN-GB">But if the behaviours of MCE processors are completely predictable, should<br>
these not be specified normatively somewhere? If the behaviour of an MCE<br>
processor with respect to extension elements must be completely predictable,<br>
this behaviour must be specified normatively. Where is it to be specified?<br>
Either in the MCE spec or in the markup spec.<o:p></o:p></span></p>
</blockquote>
<div>
<p class="MsoNormal"><span lang="EN-GB">At present, the behaviour of MCE processors for application-defined <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB">extension elements is normative defined in several places:<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB">  - the 4th bullet in the 1st itemized list in Step 1 in Clause 9<o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span lang="EN-GB">  - the 3rd bullet in the 2nd itemized list in Step 1 in Clause 9<br>
  - the 4rd bullet in the 3rd itemized list in Step 1 in Clause 9<br>
  - the 3rd bullet in the 1st itemized list in Step 2 in Clause 9<br>
  - the 2nd bullet in the 2nd itemized list in Step 2 in Clause 9<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB">  - The 1st, 2nd, and 3rd paragraphs in Step 4 in Clause 9<o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-GB"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB">Regards,<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB">Makoto<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt">
<p class="MsoNormal"><span lang="EN-GB">I think that my confusion is between the specification of extension elements<br>
(in the markup spec) and the specification of MCE processor behaviour (in<br>
the MCE spec). If we can completely specify MCE processor behaviour with<br>
respect to extension elements, this should be done normatively in the MCE<br>
spec. If we cannot - i.e. it depends upon how the extension elements are<br>
specified in the markup spec - we cannot say anything normative about it in<br>
the MCE spec and we probably shouldn't make too many assumptions about it.<o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-GB"><br>
Kind regards,<br>
<br>
Francis<br>
<br>
<br>
<br>
> -----Original Message-----<br>
> From: <a href="mailto:eb2mmrt@gmail.com">eb2mmrt@gmail.com</a> [mailto:<a href="mailto:eb2mmrt@gmail.com">eb2mmrt@gmail.com</a>] On Behalf Of MURATA<br>
Makoto<o:p></o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span lang="EN-GB">> Sent: 13 August 2013 13:11<br>
> To: SC 34/WG 4 mailing list<br>
> Subject: Re: Proposed text for Clause 9<br>
><br>
> Francis,<br>
><br>
> Perhaps, the problem is the ambiguity in our terminology:<br>
> markup consumer , MCE processor, and application program.<br>
> We might want to make this point clear in Clause 7.<br>
><br>
> > Your second paragraph says:<br>
> ><br>
> > "If an MCE processor is configured to recognise extension elements, it<br>
> > preserves them together with their attributes and contents."<br>
> ><br>
> > I think what you are saying is that an MCE processor that is<br>
> > configured to recognise extension elements will ALWAYS preserve them.<br>
> > In other words,<br>
><br>
> Exactly.  But I am talking about the MCE processor.  I am not talking<br>
about<br>
> markup consumers.<br>
><br>
> > "recognise" in this context means "preserve".<br>
><br>
> Well, I meant that the markup configuration, which is a set of expanded<br>
names,<br>
> contain the expanded names of application-defined extension elements.<br>
><br>
> > If this is ALWAYS the case,<br>
> > that sounds to me like a normative provision. If it is up to the<br>
> > application to specify this (as I thought we had agreed), it may not<br>
> > always be the case, in which we should not imply that in the MCE spec.<br>
><br>
> To me, markup consumers and MCE processors are very different.<br>
> Requirements on MCE processors have to be very clear.  Their behaviours<br>
are<br>
> complety predictable.  But requirements on markup consumers are much more<br>
> predictable.<br>
><br>
> Regards,<br>
> Makoto<br>
><br>
> ><br>
> > Kind regards,<br>
> ><br>
> > Francis<br>
> ><br>
> ><br>
> ><br>
> ><br>
> >> -----Original Message-----<br>
> >> From: <a href="mailto:eb2mmrt@gmail.com">eb2mmrt@gmail.com</a> [mailto:<a href="mailto:eb2mmrt@gmail.com">eb2mmrt@gmail.com</a>] On Behalf Of<br>
> >> MURATA<br>
> > Makoto<br>
> >> Sent: 13 August 2013 11:12<br>
> >> To: SC34<br>
> >> Subject: Re: Proposed text for Clause 9<br>
> >><br>
> >> Francis,<br>
> >><br>
> >> > 1. Your proposed text (expecially the first sentence of the second<br>
> >> > paragraph, and the final paragraph) defines an extension element<br>
> >> > somewhat more narrowly than I had proposed in my draft text. Yours<br>
> >> > is closer to what<br>
> >><br>
> >> I rather think that your wording states too much about application<br>
> > programs.<br>
> >> I think that we should limit our concern to behaviours of MCE<br>
> >> processors<br>
> > and<br>
> >> try to avoid describing behaviours of application programs.<br>
> >> MCE processors simply pass application defined extension elements to<br>
> >> application programs.  The behaviours of MCE processors have to be<br>
> >> very<br>
> > clear<br>
> >> for interoperability.<br>
> >><br>
> >> > is currently in OOXML, which may be a good thing (it shouldn't<br>
> >> > break any OOXML implementations), but I still wonder whether the<br>
> >> > MCE spec should be quite so proscriptive about the processing of<br>
> >> > extension elements or should instead leave it to the markup<br>
> >> > specification to define how MCE processors should handle extension<br>
> >> > elements in each specific case. Putting it another way, your<br>
> >> > proposed Clause 9 seems to be saying something normative about the<br>
> >> > processing of extension elements, although you have made it clear<br>
> >> > in the Clause heading that the<br>
> >> Clause is informative.<br>
> >><br>
> >> My 2nd para may look normative at a first glance, but it is not.  It<br>
> >> just gives a high-level overview without providing details.  Details<br>
> >> are<br>
> > provided<br>
> >> in the itemized lists in Steps 1 and 2.<br>
> >><br>
> >> ><br>
> >> > 2. At the end of the second paragraph you have a cross-reference to<br>
> >> > "Clause 9". This is self-referential, so clearly wrong. What is<br>
meant?<br>
> >><br>
> >><br>
> >> Oops.  Clause 10 Semantic Definitions and Reference Processing Model.<br>
> >><br>
> >> Regards,<br>
> >> Makoto<br>
> >><br>
> >> > Kind regards,<br>
> >> ><br>
> >> > Francis<br>
> >> ><br>
> >> ><br>
> >> ><br>
> >> >> -----Original Message-----<br>
> >> >> From: <a href="mailto:eb2mmrt@gmail.com">eb2mmrt@gmail.com</a> [mailto:<a href="mailto:eb2mmrt@gmail.com">eb2mmrt@gmail.com</a>] On Behalf Of<br>
> >> >> MURATA<br>
> >> > Makoto<br>
> >> >> Sent: 13 August 2013 10:11<br>
> >> >> To: SC34<br>
> >> >> Subject: Proposed text for Clause 9<br>
> >> >><br>
> >> >> Dear colleagues,<br>
> >> >><br>
> >> >> Here is a proposed rewrite of Clause 9.  It is based on Francis'<br>
> >> >> wording<br>
> >> > but<br>
> >> >> has been modified and further expanded by two examples.  Thanks. ><br>
> >> > Francis.<br>
> >> >><br>
> >> >> Regards,<br>
> >> >> Makoto<br>
> >> >><br>
> >> > -------------------------------------------------------------------<br>
> >> > ---<br>
> >> > ------<br>
> >> > -<br>
> >> >><br>
> >> >> 9. Extension elements defined by a markup specification<br>
> >> >> (informative)<br>
> >> >><br>
> >> >> A markup specification that uses Markup Compatibility elements and<br>
> >> > attributes<br>
> >> >> to allow extensions in namespaces other than those defined by the<br>
> >> >> markup specification may also define one or more specific<br>
> >> >> extension elements in<br>
> >> > the<br>
> >> >> namespaces that it defines. [Note: If the markup specification<br>
> >> >> includes a schema, any extension elements would normally be<br>
> >> >> constrained by the schema<br>
> >> > to<br>
> >> >> occur only in specific markup contexts. end note].<br>
> >> >><br>
> >> >> If an MCE processor is configured to recognise extension elements,<br>
> >> >> it preserves them together with their attributes and contents.<br>
> >> >> See Clause 9<br>
> >> > for<br>
> >> >> details.<br>
> >> >><br>
> >> >><br>
> >> >> [Example:<br>
> >> >><br>
> >> >><br>
> >> > <a href="https://subversion.assembla.com/svn/IS29500/trunk/Part3/TestData/Ex" target="_blank">
https://subversion.assembla.com/svn/IS29500/trunk/Part3/TestData/Ex</a><br>
> >> > ten<br>
> >> > sionEl<br>
> >> > em<br>
> >> >> ents/example1.xml<br>
> >> >><br>
> >> >> In this example, the e1:foo element contains the unknown:foo<br>
element.<br>
> >> >> Suppose that a markup configuration contains an expanded name<br>
> >> >> ("<a href="http://www.example.com/e1" target="_blank">http://www.example.com/e1</a>", "foo") and that an application<br>
> >> >> configuration does not contain "<a href="http://www.example.com/unknown" target="_blank">http://www.example.com/unknown</a>".<br>
> >> >> Then, the element e1:foo is an application-defined extension<br>
element.<br>
> >> >> Although the unknown:foo element does not belong to an understood<br>
> >> >> or<br>
> >> > ignorable<br>
> >> >> namespace, the MCE processor preserves it and does not report any<br>
> > errors.<br>
> >> > end<br>
> >> >> example]<br>
> >> >><br>
> >> >> [Example:<br>
> >> >><br>
> >> >><br>
> >> > <a href="https://subversion.assembla.com/svn/IS29500/trunk/Part3/TestData/Ex" target="_blank">
https://subversion.assembla.com/svn/IS29500/trunk/Part3/TestData/Ex</a><br>
> >> > ten<br>
> >> > sionEl<br>
> >> > em<br>
> >> >> ents/example2.xml<br>
> >> >><br>
> >> >> In this example, Markup Compatibility elements and attributes<br>
> >> >> occur within<br>
> >> > the<br>
> >> >> extensionElement element, which is the only child of the root<br>
> >> >> element<br>
> >> > example.<br>
> >> >> Suppose that a markup configuration contains an expanded name<br>
> >> >> ("<a href="http://www.example.com/e1" target="_blank">http://www.example.com/e1</a>", "extensionElement").<br>
> >> >> Then, the MCE processor preserves the extensionElement element.<br>
> >> >> Therefore, MCE elements and attributes within it, namely<br>
> >> > mce:Ignorable="i1",<br>
> >> >> mce:ProcessContent="i1:bar1", mce:MustUnderstand="e1",<br>
> >> > mce:AlternateConent,<br>
> >> >> mce:Choice, and mce:Fallback, appear in the output document.  end<br>
> >> >> example]<br>
> >> >><br>
> >> >> After receiving the output of an MCE processor, application<br>
> >> >> programs may further invoke an MCE processor to handle Markup<br>
> >> >> Compatibility elements<br>
> >> > and<br>
> >> >> attributes within extension elements.<br>
> >> ><br>
> >><br>
> >><br>
> >><br>
> >> --<br>
> >><br>
> >> Praying for the victims of the Japan Tohoku earthquake<br>
> >><br>
> >> Makoto<br>
> ><br>
><br>
><br>
><br>
> --<br>
><br>
> Praying for the victims of the Japan Tohoku earthquake<br>
><br>
> Makoto<o:p></o:p></span></p>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><span lang="EN-GB"><br>
<br clear="all">
<o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
</div>
<p class="MsoNormal"><span lang="EN-GB">-- <br>
<br>
Praying for the victims of the Japan Tohoku earthquake<br>
<br>
Makoto <o:p></o:p></span></p>
</div>
</div>
</div>
</div>
<div style="mso-element:comment-list"><![if !supportAnnotations]>
<hr class="msocomoff" align="left" size="1" width="33%">
<![endif]></div>
</body>
</html>