The obvious question George - why doesn't the docbook
section need the attach?

Curious!
regards

On 9 February 2016 at 09:11, George Bina <geo...@oxygenxml.com> wrote:
> Hi Bob,
>
> Try adding an attach action on the MathML namespace. This will attach the
> content in MathML to the validation candidate triggered by the <validate
> schema="docbook.rng"/> action. Change the NVDL script as below:
>
> <rules xmlns="http://purl.oclc.org/dsdl/nvdl/ns/structure/1.0";
> startMode="docbook">
>     <mode name="docbook">
>         <namespace ns="http://docbook.org/ns/docbook";>
>             <validate schema="docbook.rng"/>
>         </namespace>
>         <namespace ns="http://www.w3.org/1998/Math/MathML";>
>             <attach/>
>             <validate schema="../xsd/mathml3/mathml3.xsd"/>
>         </namespace>
>     </mode>
> </rules>
>
> Best Regards,
> George
> --
> George Cristian Bina
> <oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
> http://www.oxygenxml.com
>
>
> On 09/02/16 02:33, Bob Stayton wrote:
>>
>> I'm having a problem trying to process DocBook 5 documents using NVDL in
>> order to validate DocBook content that has MathML content within
>> equation or inlineequation.  The DocBook validation side is failing, but
>> only under NVDL.
>>
>> The DocBook rng schema for inlineequation is as follows:
>>
>>     <define name="db.inlineequation.content">
>>        <choice>
>>           <choice>
>>              <oneOrMore>
>>                 <ref name="db.inlinemediaobject"/>
>>              </oneOrMore>
>>              <oneOrMore>
>>                 <ref name="db.mathphrase"/>
>>              </oneOrMore>
>>           </choice>
>>           <oneOrMore>
>>              <ref name="db._any.mml"/>
>>           </oneOrMore>
>>        </choice>
>>     </define>
>>
>> This schema specifies either a) inlinemediaobject or mathphrase, or b)
>> some MathML elements.  It *allows* MathML, but it does not validate it
>> against the MathML DTD.  NVDL is capable of doing that.  But ...
>>
>> When I set up NVDL using a schema like this:
>>
>> <rules xmlns="http://purl.oclc.org/dsdl/nvdl/ns/structure/1.0";
>> startMode="docbook">
>>      <mode name="docbook">
>>          <namespace ns="http://docbook.org/ns/docbook";>
>>              <validate schema="docbook.rng"/>
>>          </namespace>
>>          <namespace ns="http://www.w3.org/1998/Math/MathML";>
>>              <validate schema="../xsd/mathml3/mathml3.xsd"/>
>>          </namespace>
>>      </mode>
>> </rules>
>>
>> This DocBook content validates against docbook.rng:
>>
>> <para><inlineequation>
>>    <math xmlns="http://www.w3.org/1998/Math/MathML";>
>>      ...
>>    </math>
>> </inlineequation></para>
>>
>> But when processed with NVDL, it fails with this message:
>>
>> Engine name: Jing
>> Severity: error
>> Description: element "inlineequation" incomplete; expected element
>> "alt", "inlinemediaobject" or "mathphrase" or an element from another
>> namespace
>>
>> I think what is happening is that Jing has sent the <math> element to be
>> validated against the MathML schema, and then it sends the remains of
>> the inlineequation element to be validated against the DocBook schema.
>> But now inlineequation is empty, and fails validation.
>>
>> I find if I insert an empty <mathphrase> inside inlineequation, then I
>> can work around this error.  Does anyone have any other ideas? That is,
>> short of customizing the docbook equation elements to allow them to be
>> empty.
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: docbook-apps-unsubscr...@lists.oasis-open.org
> For additional commands, e-mail: docbook-apps-h...@lists.oasis-open.org
>



-- 
Dave Pawson
XSLT XSL-FO FAQ.
Docbook FAQ.
http://www.dpawson.co.uk

---------------------------------------------------------------------
To unsubscribe, e-mail: docbook-apps-unsubscr...@lists.oasis-open.org
For additional commands, e-mail: docbook-apps-h...@lists.oasis-open.org

Reply via email to