OASIS DocBook TC2

  • 1.  testing xinclude in assembly

    Posted 02-11-2019 19:24
    Hi Larry, I loaded the assemblyxi.rng into Oxygen XML for testing. I opened your test file that you included in the zip file assembly-with-xinclude.xml and I see that it XIncludes a file containing a <resources> element. But when I try to add a structure element after the <xi:include> element, it won't let me. I think a common scenario would be to XInclude a common resources file and then create a structure using those resources. I am able to add a structure element after the literal resources element in the test file and before the xi:include, but not after the xi:include. I don't see what in the schema prevents that. -- Bob Stayton Sagehill Enterprises bobs@sagehill.net


  • 2.  Re: [docbook-tc] testing xinclude in assembly

    Posted 02-11-2019 22:40




    I think the include is in the wrong location? Shouldn t it be more like this:
     
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-model href= type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?>
    <assembly xmlns = "http://docbook.org/ns/docbook"
    xmlns:xi = "http://www.w3.org/2001/XInclude" >
      <resources>
        <resource xml:id = "local-file" fileref = "some/path/file.xml" />
        <resource><xi:include href = "stock-blocks.xml" xpointer = "standard.disclaimers"
    parse = "xml" >
          <xi:fallback>
            <para><emphasis role = "strong" > Boilerplate got lost! </emphasis></para>
          </xi:fallback>
        </xi:include></resource>
      </resources>
      <structure>
        <info>
          <title> My Test Assembly </title>
          <author>
            <personname> Some Poor Volunteer </personname>
            <affiliation><orgname> DocBook TC </orgname></affiliation>
          </author>
        </info>
        <module resourceref = "standard.disclaimers" />
      </structure>
      <xi:include href = "./resource-block.xml" />
    </assembly>
     
    ?
     
    Thanks,
     
    --Scott
     

    From:
    <docbook-tc@lists.oasis-open.org> on behalf of Bob Stayton <bobs@sagehill.net>
    Date: Monday, February 11, 2019 at 12:24 PM
    To: DocBook Technical Committee <docbook-tc@lists.oasis-open.org>, "Rowland, Larry" <larry.rowland@hpe.com>
    Subject: [docbook-tc] testing xinclude in assembly


     

    Hi Larry,
    I loaded the assemblyxi.rng into Oxygen XML for testing.  I opened your test file that you included in the zip file "assembly-with-xinclude.xml" and I see that it XIncludes a file containing a <resources> element.   But when I try
    to add a structure element after the <xi:include> element, it won't let me.  I think a common scenario would be to XInclude a common resources file and then create a structure using those resources.  

    I am able to add a structure element after the literal resources element in the test file and before the xi:include, but not after the xi:include.  I don't see what in the schema prevents that.
    --
    Bob Stayton
    Sagehill Enterprises
    bobs@sagehill.net






  • 3.  Re: [docbook-tc] testing xinclude in assembly

    Posted 02-11-2019 23:50
    Well, the assembly schema says resources elements should appear before any structure elements. The XInclude is pulling in a resources element, so this example would place it after structure, which is not valid. Bob Stayton Sagehill Enterprises bobs@sagehill.net On 2/11/2019 2:39 PM, Scott Hudson wrote: I think the include is in the wrong location? Shouldn t it be more like this: <?xml version= 1.0 encoding= UTF-8 ?> <?xml-model href= type= application/xml schematypens= http://relaxng.org/ns/structure/1.0 ?> <assembly xmlns = http://docbook.org/ns/docbook xmlns:xi = http://www.w3.org/2001/XInclude > <resources> <resource xml:id = local-file fileref = some/path/file.xml /> <resource><xi:include href = stock-blocks.xml xpointer = standard.disclaimers parse = xml > <xi:fallback> <para><emphasis role = strong > Boilerplate got lost! </emphasis></para> </xi:fallback> </xi:include></resource> </resources> <structure> <info> <title> My Test Assembly </title> <author> <personname> Some Poor Volunteer </personname> <affiliation><orgname> DocBook TC </orgname></affiliation> </author> </info> <module resourceref = standard.disclaimers /> </structure> <xi:include href = ./resource-block.xml /> </assembly> ? Thanks, --Scott From: <docbook-tc@lists.oasis-open.org> on behalf of Bob Stayton <bobs@sagehill.net> Date: Monday, February 11, 2019 at 12:24 PM To: DocBook Technical Committee <docbook-tc@lists.oasis-open.org> , Rowland, Larry <larry.rowland@hpe.com> Subject: [docbook-tc] testing xinclude in assembly Hi Larry, I loaded the assemblyxi.rng into Oxygen XML for testing. I opened your test file that you included in the zip file assembly-with-xinclude.xml and I see that it XIncludes a file containing a <resources> element. But when I try to add a structure element after the <xi:include> element, it won't let me. I think a common scenario would be to XInclude a common resources file and then create a structure using those resources. I am able to add a structure element after the literal resources element in the test file and before the xi:include, but not after the xi:include. I don't see what in the schema prevents that. -- Bob Stayton Sagehill Enterprises bobs@sagehill.net


  • 4.  Re: [docbook-tc] testing xinclude in assembly

    Posted 02-11-2019 23:51




    Hm. This example validated against that schema
     
    --Scott
     

    From:
    <docbook-tc@lists.oasis-open.org> on behalf of Bob Stayton <bobs@sagehill.net>
    Date: Monday, February 11, 2019 at 4:49 PM
    To: "docbook-tc@lists.oasis-open.org" <docbook-tc@lists.oasis-open.org>
    Subject: Re: [docbook-tc] testing xinclude in assembly


     

    Well, the assembly schema says resources elements should appear before any structure elements.  The XInclude is pulling in a resources element, so this example would place it after
    structure, which is not valid.
    Bob Stayton
    Sagehill Enterprises
    bobs@sagehill.net

    On 2/11/2019 2:39 PM, Scott Hudson wrote:


    I think the include is in the wrong location? Shouldn t it be more like this:
     
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-model href= type="application/xml" schematypens= "http://relaxng.org/ns/structure/1.0" ?>
    <assembly xmlns = "http://docbook.org/ns/docbook"
    xmlns:xi = "http://www.w3.org/2001/XInclude" >
      <resources>
        <resource
    xml:id = "local-file" fileref = "some/path/file.xml" />
        <resource><xi:include href = "stock-blocks.xml" xpointer = "standard.disclaimers"
    parse = "xml" >
          <xi:fallback>
            <para><emphasis role = "strong" > Boilerplate got lost! </emphasis></para>
          </xi:fallback>
        </xi:include></resource>
      </resources>
      <structure>
        <info>
          <title> My Test Assembly </title>
          <author>
            <personname> Some Poor Volunteer </personname>
            <affiliation><orgname> DocBook TC </orgname></affiliation>
          </author>
        </info>
        <module resourceref = "standard.disclaimers" />
      </structure>
      <xi:include href = "./resource-block.xml" />
    </assembly>
     
    ?
     
    Thanks,
     
    --Scott
     

    From:
    <docbook-tc@lists.oasis-open.org> on behalf of Bob Stayton
    <bobs@sagehill.net>
    Date: Monday, February 11, 2019 at 12:24 PM
    To: DocBook Technical Committee
    <docbook-tc@lists.oasis-open.org> , "Rowland, Larry"
    <larry.rowland@hpe.com>
    Subject: [docbook-tc] testing xinclude in assembly


     

    Hi Larry,
    I loaded the assemblyxi.rng into Oxygen XML for testing.  I opened your test file that you included in the zip file "assembly-with-xinclude.xml" and I see that it XIncludes a file containing a <resources> element.   But when I try
    to add a structure element after the <xi:include> element, it won't let me.  I think a common scenario would be to XInclude a common resources file and then create a structure using those resources.  

    I am able to add a structure element after the literal resources element in the test file and before the xi:include, but not after the xi:include.  I don't see what in the schema prevents that.
    --
    Bob Stayton
    Sagehill Enterprises
    bobs@sagehill.net







  • 5.  Re: [docbook-tc] testing xinclude in assembly

    Posted 02-12-2019 00:33
    Yes, that one validated for me as well. But when you resolve the XInclude, the resulting file is not valid because a resources element appears after the structure element. This file does not validate, even though the result after XInclude resolution is valid: <assembly> <xi:include href = ./resource-block.xml /> <structure>...</structure> </assembly> Bob Stayton Sagehill Enterprises bobs@sagehill.net On 2/11/2019 3:50 PM, Scott Hudson wrote: Hm. This example validated against that schema --Scott From: <docbook-tc@lists.oasis-open.org> on behalf of Bob Stayton <bobs@sagehill.net> Date: Monday, February 11, 2019 at 4:49 PM To: docbook-tc@lists.oasis-open.org <docbook-tc@lists.oasis-open.org> Subject: Re: [docbook-tc] testing xinclude in assembly Well, the assembly schema says resources elements should appear before any structure elements. The XInclude is pulling in a resources element, so this example would place it after structure, which is not valid. Bob Stayton Sagehill Enterprises bobs@sagehill.net On 2/11/2019 2:39 PM, Scott Hudson wrote: I think the include is in the wrong location? Shouldn t it be more like this: <?xml version= 1.0 encoding= UTF-8 ?> <?xml-model href= type= application/xml schematypens= http://relaxng.org/ns/structure/1.0 ?> <assembly xmlns = http://docbook.org/ns/docbook xmlns:xi = http://www.w3.org/2001/XInclude > <resources> <resource xml:id = local-file fileref = some/path/file.xml /> <resource><xi:include href = stock-blocks.xml xpointer = standard.disclaimers parse = xml > <xi:fallback> <para><emphasis role = strong > Boilerplate got lost! </emphasis></para> </xi:fallback> </xi:include></resource> </resources> <structure> <info> <title> My Test Assembly </title> <author> <personname> Some Poor Volunteer </personname> <affiliation><orgname> DocBook TC </orgname></affiliation> </author> </info> <module resourceref = standard.disclaimers /> </structure> <xi:include href = ./resource-block.xml /> </assembly> ? Thanks, --Scott From: <docbook-tc@lists.oasis-open.org> on behalf of Bob Stayton <bobs@sagehill.net> Date: Monday, February 11, 2019 at 12:24 PM To: DocBook Technical Committee <docbook-tc@lists.oasis-open.org> , Rowland, Larry <larry.rowland@hpe.com> Subject: [docbook-tc] testing xinclude in assembly Hi Larry, I loaded the assemblyxi.rng into Oxygen XML for testing. I opened your test file that you included in the zip file assembly-with-xinclude.xml and I see that it XIncludes a file containing a <resources> element. But when I try to add a structure element after the <xi:include> element, it won't let me. I think a common scenario would be to XInclude a common resources file and then create a structure using those resources. I am able to add a structure element after the literal resources element in the test file and before the xi:include, but not after the xi:include. I don't see what in the schema prevents that. -- Bob Stayton Sagehill Enterprises bobs@sagehill.net


  • 6.  RE: [docbook-tc] testing xinclude in assembly

    Posted 02-12-2019 14:38




    I think I have found the issue and will have a fix in place as soon as possible.  I m somewhat concerned that the schema has an ordered sequence of valid elements and I m going to end up with xi:include elements
    being valid anywhere in the sequence.  I think that means anything can be pulled in anywhere.  Maybe I don t understand enough about xi:include to be doing this change.  I m way behind on things for tomorrow s meeting.
     
    Regards,
    Larry Rowland
     


    From: docbook-tc@lists.oasis-open.org [mailto:docbook-tc@lists.oasis-open.org]
    On Behalf Of Bob Stayton
    Sent: Monday, February 11, 2019 5:32 PM
    To: docbook-tc@lists.oasis-open.org
    Subject: Re: [docbook-tc] testing xinclude in assembly


     
    Yes, that one validated for me as well.  But when you resolve the XInclude, the resulting file is not valid because a resources element appears after the structure element.
    This file does not validate, even though the result after XInclude resolution is valid:
     <assembly>
      <xi:include href = "./resource-block.xml" />
      <structure>...</structure>
    </assembly>
    Bob Stayton
    Sagehill Enterprises
    bobs@sagehill.net

    On 2/11/2019 3:50 PM, Scott Hudson wrote:


    Hm. This example validated against that schema
     
    --Scott
     

    From:
    <docbook-tc@lists.oasis-open.org> on behalf of Bob Stayton
    <bobs@sagehill.net>
    Date: Monday, February 11, 2019 at 4:49 PM
    To: "docbook-tc@lists.oasis-open.org"
    <docbook-tc@lists.oasis-open.org>
    Subject: Re: [docbook-tc] testing xinclude in assembly


     

    Well, the assembly schema says resources elements should appear before any structure elements.  The XInclude is pulling in a resources element, so this example would
    place it after structure, which is not valid.
    Bob Stayton
    Sagehill Enterprises
    bobs@sagehill.net

    On 2/11/2019 2:39 PM, Scott Hudson wrote:


    I think the include is in the wrong location? Shouldn t it be more like this:
     
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-model href= type="application/xml" schematypens= "http://relaxng.org/ns/structure/1.0" ?>
    <assembly xmlns = "http://docbook.org/ns/docbook"
    xmlns:xi = "http://www.w3.org/2001/XInclude" >
      <resources>
        <resource
    xml:id = "local-file" fileref = "some/path/file.xml" />
        <resource><xi:include href = "stock-blocks.xml" xpointer = "standard.disclaimers"
    parse = "xml" >
          <xi:fallback>
            <para><emphasis role = "strong" > Boilerplate got lost! </emphasis></para>
          </xi:fallback>
        </xi:include></resource>
      </resources>
      <structure>
        <info>
          <title> My Test Assembly </title>
          <author>
            <personname> Some Poor Volunteer </personname>
            <affiliation><orgname> DocBook TC </orgname></affiliation>
          </author>
        </info>
        <module resourceref = "standard.disclaimers" />
      </structure>
      <xi:include href = "./resource-block.xml" />
    </assembly>
     
    ?
     
    Thanks,
     
    --Scott
     

    From:
    <docbook-tc@lists.oasis-open.org> on behalf of Bob Stayton
    <bobs@sagehill.net>
    Date: Monday, February 11, 2019 at 12:24 PM
    To: DocBook Technical Committee
    <docbook-tc@lists.oasis-open.org> , "Rowland, Larry"
    <larry.rowland@hpe.com>
    Subject: [docbook-tc] testing xinclude in assembly


     

    Hi Larry,
    I loaded the assemblyxi.rng into Oxygen XML for testing.  I opened your test file that you included in the zip file "assembly-with-xinclude.xml" and I see that it XIncludes a file containing a <resources> element.   But when I try
    to add a structure element after the <xi:include> element, it won't let me.  I think a common scenario would be to XInclude a common resources file and then create a structure using those resources.  

    I am able to add a structure element after the literal resources element in the test file and before the xi:include, but not after the xi:include.  I don't see what in the schema prevents that.
    --
    Bob Stayton
    Sagehill Enterprises
    bobs@sagehill.net








  • 7.  RE: [docbook-tc] testing xinclude in assembly

    Posted 02-12-2019 23:01




    I hate to admit this, but it appears I combined an early proposal of the assembly schema (that still allowed  fileref attributes instead of using href and other things that were not implemented) with parts of
    the 5.1 and 5.2 versions of the DocBook schema.  It s not really worth trying to get thigns working based on the schema I sent.  Don t know how that happened, but as I was trying to work through things, it became obvious that things were just wrong.  I am
    pulling down a clean copy of the V5.2b05 release of the schema and will redo things to get a clean schema based on the current working schema.  My working model is going to be:
     
    1.      
    Add the modifications for xi:include to assembly.rng to create a new assemblyxi.rng.
    2.      
    Modify the old assembly-sample-6.xml (renaming it) to make it validate against the existing assembly schema.
    3.      
    Break it up into chunks in other files and reference them using the xi:include to create a new version of the file with includes at various levels to reflect the discussion at https://github.com/docbook/docbook/issues/54.
     
    I apologize for the confusion.  I worked on this part of last night and parts of today trying to understand what was happening and why it was so confusing and it took most of that to figure out what was going
    on.  I also realized I made a mistake in the assembly extension when I copied how include was implemented in other areas of DocBook and will fix that problem.  I ll get this to the team as soon as possible.
     
    Regards,
    Larry Rowland


    From: docbook-tc@lists.oasis-open.org [mailto:docbook-tc@lists.oasis-open.org]
    On Behalf Of Rowland, Larry
    Sent: Tuesday, February 12, 2019 7:38 AM
    To: Bob Stayton <bobs@sagehill.net>; docbook-tc@lists.oasis-open.org
    Subject: RE: [docbook-tc] testing xinclude in assembly


     
    I think I have found the issue and will have a fix in place as soon as possible.  I m somewhat concerned that the schema has an ordered sequence of valid elements and I m going to end up with xi:include elements
    being valid anywhere in the sequence.  I think that means anything can be pulled in anywhere.  Maybe I don t understand enough about xi:include to be doing this change.  I m way behind on things for tomorrow s meeting.
     
    Regards,
    Larry Rowland
     


    From:
    docbook-tc@lists.oasis-open.org [ mailto:docbook-tc@lists.oasis-open.org ]
    On Behalf Of Bob Stayton
    Sent: Monday, February 11, 2019 5:32 PM
    To: docbook-tc@lists.oasis-open.org
    Subject: Re: [docbook-tc] testing xinclude in assembly


     
    Yes, that one validated for me as well.  But when you resolve the XInclude, the resulting file is not valid because a resources element appears after the structure element.
    This file does not validate, even though the result after XInclude resolution is valid:
     <assembly>
      <xi:include href = "./resource-block.xml" />
      <structure>...</structure>
    </assembly>
    Bob Stayton
    Sagehill Enterprises
    bobs@sagehill.net

    On 2/11/2019 3:50 PM, Scott Hudson wrote:


    Hm. This example validated against that schema
     
    --Scott
     

    From:
    <docbook-tc@lists.oasis-open.org> on behalf of Bob Stayton
    <bobs@sagehill.net>
    Date: Monday, February 11, 2019 at 4:49 PM
    To: "docbook-tc@lists.oasis-open.org"
    <docbook-tc@lists.oasis-open.org>
    Subject: Re: [docbook-tc] testing xinclude in assembly


     

    Well, the assembly schema says resources elements should appear before any structure elements.  The XInclude is pulling in a resources element, so this example would
    place it after structure, which is not valid.
    Bob Stayton
    Sagehill Enterprises
    bobs@sagehill.net

    On 2/11/2019 2:39 PM, Scott Hudson wrote:


    I think the include is in the wrong location? Shouldn t it be more like this:
     
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-model href= type="application/xml" schematypens= "http://relaxng.org/ns/structure/1.0" ?>
    <assembly xmlns = "http://docbook.org/ns/docbook"
    xmlns:xi = "http://www.w3.org/2001/XInclude" >
      <resources>
        <resource
    xml:id = "local-file" fileref = "some/path/file.xml" />
        <resource><xi:include href = "stock-blocks.xml" xpointer = "standard.disclaimers"
    parse = "xml" >
          <xi:fallback>
            <para><emphasis role = "strong" > Boilerplate got lost! </emphasis></para>
          </xi:fallback>
        </xi:include></resource>
      </resources>
      <structure>
        <info>
          <title> My Test Assembly </title>
          <author>
            <personname> Some Poor Volunteer </personname>
            <affiliation><orgname> DocBook TC </orgname></affiliation>
          </author>
        </info>
        <module resourceref = "standard.disclaimers" />
      </structure>
      <xi:include href = "./resource-block.xml" />
    </assembly>
     
    ?
     
    Thanks,
     
    --Scott
     

    From:
    <docbook-tc@lists.oasis-open.org> on behalf of Bob Stayton
    <bobs@sagehill.net>
    Date: Monday, February 11, 2019 at 12:24 PM
    To: DocBook Technical Committee
    <docbook-tc@lists.oasis-open.org> , "Rowland, Larry"
    <larry.rowland@hpe.com>
    Subject: [docbook-tc] testing xinclude in assembly


     

    Hi Larry,
    I loaded the assemblyxi.rng into Oxygen XML for testing.  I opened your test file that you included in the zip file "assembly-with-xinclude.xml" and I see that it XIncludes a file containing a <resources> element.   But when I try
    to add a structure element after the <xi:include> element, it won't let me.  I think a common scenario would be to XInclude a common resources file and then create a structure using those resources.  

    I am able to add a structure element after the literal resources element in the test file and before the xi:include, but not after the xi:include.  I don't see what in the schema prevents that.
    --
    Bob Stayton
    Sagehill Enterprises
    bobs@sagehill.net