<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html;
      charset=windows-1252">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p>Dear Amanda,</p>
    <p>Using Schematron for validating these requirements is indeed a
      better approach because the validation is done on a separate
      execution thread and doesn't affect the layout.When a rule is
      broken, the visual indicator is a squiggly yellow line (or red, if
      you want to mark it as an error) which is pretty close to the way
      you are currently marking the element in the CSS rule (a yellow
      background). <br>
    </p>
    <p><img src="cid:part1.C15E7287.9CAD6572@sync.ro" alt=""></p>
    <p>A CSS rule will give you more options on how to mark the error:
      colors, borders etc. Do you find the Schematron error marking (the
      yellow squiggly underline) enough or you would prefer to be able
      to change it to something else?<br>
    </p>
    <p>Another option would be to use our Java based API and set a <tt>StylesFilter</tt>
      [1] and change the background color from there. In such an
      extension point you can directly navigate the author node model
      which is faster than executing an XPath. <br>
    </p>
    <p>[1]
<a class="moz-txt-link-freetext" href="https://www.oxygenxml.com/doc/versions/19.1/ug-editor/topics/dg-author-css-styles-filter.html">https://www.oxygenxml.com/doc/versions/19.1/ug-editor/topics/dg-author-css-styles-filter.html</a><br>
    </p>
    <pre class="moz-signature" cols="72">Best regards,
Alex
-- 
Alex Jitianu
<oXygen/>  XML Editor, Schema Editor and XSLT Editor/Debugger
<a class="moz-txt-link-freetext" href="http://www.oxygenxml.com">http://www.oxygenxml.com</a> </pre>
    <div class="moz-cite-prefix">On 3/9/2018 8:47 PM, Amanda Galtman
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:BLUPR05MB192151205F8857C1CD59EBF183DE0@BLUPR05MB1921.namprd05.prod.outlook.com">
      <meta http-equiv="Content-Type" content="text/html;
        charset=windows-1252">
      <meta name="Generator" content="Microsoft Word 15 (filtered
        medium)">
      <style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        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;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@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]-->
      <div class="WordSection1">
        <p class="MsoNormal">Hi,<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">We’ve had a request from an author to make
          the formatting in the Author view indicate when the text of a
          certain element type does not match the text of something else
          found inside the same topic. I can do this via Oxygen CSS, but
          I am concerned that the processing slows down the opening of
          large documents. I’m not convinced that CSS is a good way to
          address the underlying requirement about helping authors
          detect when something does not have a textual match as
          expected (e.g., maybe Schematron or a build warning would be
          more appropriate).<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Before I give up, though, I wanted to see
          if anyone had specific ideas or techniques I might have
          overlooked.<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Here’s an example of variations I tried
          that work too slowly in large documents, just to give you the
          flavor.<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#006648;background:white;mso-highlight:white">/* 
            true => 255*1 => white</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white"><br>
          </span><span style="font-size:12.0pt;font-family:"Times
            New
            Roman",serif;color:#006648;background:white;mso-highlight:white">* 
            false => 255*0 => yellow */</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white"><br>
          </span><span style="font-size:12.0pt;font-family:"Times
            New
            Roman",serif;color:#640050;background:white;mso-highlight:white">refentry</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#960000;background:white;mso-highlight:white">[</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#640050;background:white;mso-highlight:white">role</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#640032;background:white;mso-highlight:white">=</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:blue;background:white;mso-highlight:white">"function"</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#960000;background:white;mso-highlight:white">]</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white">
          </span><span style="font-size:12.0pt;font-family:"Times
            New
            Roman",serif;color:#640050;background:white;mso-highlight:white">literal</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white"> 
          </span><span style="font-size:12.0pt;font-family:"Times
            New
            Roman",serif;color:#960000;background:white;mso-highlight:white">{</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white">
            <br>
          </span><span style="font-size:12.0pt;font-family:"Times
            New
            Roman",serif;color:#1E6496;background:white;mso-highlight:white">background-color</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#640032;background:white;mso-highlight:white">:</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white">
          </span><span style="font-size:12.0pt;font-family:"Times
            New
            Roman",serif;color:#000096;background:white;mso-highlight:white">oxy_xpath(</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white"> 
            <br>
          </span><span style="font-size:12.0pt;font-family:"Times
            New
            Roman",serif;color:blue;background:white;mso-highlight:white">"concat('rgb(255,255,',
            255 * number(. = ancestor::refentry//term or .='') , ')')"</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#000096;background:white;mso-highlight:white">,</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white"><br>
          </span><span style="font-size:12.0pt;font-family:"Times
            New
            Roman",serif;color:#000096;background:white;mso-highlight:white">evaluate,dynamic-once)</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#640032;background:white;mso-highlight:white">;</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white"><br>
          </span><span style="font-size:12.0pt;font-family:"Times
            New
            Roman",serif;color:#960000;background:white;mso-highlight:white">}</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#960000"><o:p></o:p></span></p>
        <p class="MsoNormal"><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#960000"><o:p> </o:p></span></p>
        <p class="MsoNormal">Alternate:<o:p></o:p></p>
        <p class="MsoNormal"><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#960000"><o:p> </o:p></span></p>
        <p class="MsoNormal"
          style="background:white;text-autospace:none"><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#640050;background:white;mso-highlight:white">refentry</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#960000;background:white;mso-highlight:white">[</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#640050;background:white;mso-highlight:white">role</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#640032;background:white;mso-highlight:white">=</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:blue;background:white;mso-highlight:white">"function"</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#960000;background:white;mso-highlight:white">]</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white">
          </span><span style="font-size:12.0pt;font-family:"Times
            New
            Roman",serif;color:#640050;background:white;mso-highlight:white">literal</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white">
          </span><span style="font-size:12.0pt;font-family:"Times
            New
            Roman",serif;color:#960000;background:white;mso-highlight:white">{</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white">
            <br>
          </span><span style="font-size:12.0pt;font-family:"Times
            New
            Roman",serif;color:#1E6496;background:white;mso-highlight:white">background-color</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#640032;background:white;mso-highlight:white">:</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white">
          </span><span style="font-size:12.0pt;font-family:"Times
            New
            Roman",serif;color:#000096;background:white;mso-highlight:white">oxy_xpath(</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white">
            <br>
          </span><span style="font-size:12.0pt;font-family:"Times
            New
            Roman",serif;color:blue;background:white;mso-highlight:white">"if
            (exists(text()) and not(some $n in
            ancestor::refentry/refsect1[@role=('inputs','outputs')]//term
            satisfies string($n)=.)) then ('yellow') else ('')"</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#000096;background:white;mso-highlight:white">,</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white"><br>
          </span><span style="font-size:12.0pt;font-family:"Times
            New
            Roman",serif;color:#000096;background:white;mso-highlight:white">evaluate,dynamic-once)</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:#640032;background:white;mso-highlight:white">;</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white"><br>
          </span><span style="font-size:12.0pt;font-family:"Times
            New
            Roman",serif;color:#960000;background:white;mso-highlight:white">}</span><span
            style="font-size:12.0pt;font-family:"Times New
            Roman",serif;color:black;background:white;mso-highlight:white"><br>
            <br>
          </span><span style="font-size:12.0pt;font-family:"Times
            New Roman",serif;background:white;mso-highlight:white"><o:p></o:p></span></p>
        <p class="MsoNormal">Thanks,<o:p></o:p></p>
        <p class="MsoNormal">Amanda<o:p></o:p></p>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
oXygen-user mailing list
<a class="moz-txt-link-abbreviated" href="mailto:oXygen-user@oxygenxml.com">oXygen-user@oxygenxml.com</a>
<a class="moz-txt-link-freetext" href="https://www.oxygenxml.com/mailman/listinfo/oxygen-user">https://www.oxygenxml.com/mailman/listinfo/oxygen-user</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>