Uploaded image for project: 'Xerces2-J'
  1. Xerces2-J
  2. XERCESJ-1134

Xinclude: problems with empty tags

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 2.8.1
    • XInclude 1.0
    • None

    Description

      When the parser is resolving an xinclude tag and it finds an empty tag that ends with "/>" in the included document, all the following content of this document is not included properly in the "parent" document. The problem is that the parser omits all the tag contents, it only includes the included document tag names and attributes.
      When I make this changes in the documents to be included:
      <example/> to <example></example>
      there are no problems including the documents.

      Here is a real example:
      I'm trying to include a portion of an XML document using the tag:

      -----------------------------------------------------------------------------------
      <xi:include href="DI_video1.xml" xpointer="element(/1/1/6)"/>
      -----------------------------------------------------------------------------------

      the node /1/1/6 of the document is:

      -----------------------------------------------------------------------------------
      <Item>
      <Descriptor>
      <Statement mimeType="text/xml">
      <dii:Identifier>urn:gencat:aprencat:m21:dii:1f010fac747c5bf200000108d2a83d80:video_item:1</dii:Identifier>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml">
      <dip:ObjectType>urn:gencat:aprencat:m21:dip:types:video_item</dip:ObjectType>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml">
      <dip:ObjectType>urn:gencat:aprencat:m21:dip:types:item</dip:ObjectType>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml">
      <pip:Label>Etiqueta video prova</pip:Label>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Component pip:componentType="Thumbnails">
      <Resource mimeType="perfer" ref="perfer"/>
      </Component>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml" pip:descriptorType="Content Features" ref="urn:gencat:aprencat:m7:content_features:video_item:1f010fac0061aac800000108d2aaedcc"/>
      </Descriptor>
      <Component>
      <Descriptor>
      <Statement mimeType="text/xml">
      <dii:Identifier>urn:gencat:aprencat:m21:dii:1f010fac747c5bf200000108d2a83d80:video_item:1:component:1</dii:Identifier>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml">
      <dip:ObjectType>urn:gencat:aprencat:m21:dip:types:video</dip:ObjectType>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml">
      <dip:ObjectType>urn:gencat:aprencat:m21:dip:types:source_component</dip:ObjectType>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml">
      <dip:ObjectType>urn:gencat:aprencat:m21:dip:types:component</dip:ObjectType>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml">
      <pip:Label>Etiqueta component del video de prova</pip:Label>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Component pip:componentType="Thumbnails">
      <Resource mimeType="perfer" ref="perfer"/>
      </Component>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml">
      <pip:Origin>source</pip:Origin>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml" pip:descriptorType="Content Features" ref="urn:gencat:aprencat:m7:content_features:video:1f010fac35cd807f00000108e7b6e83e"/>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml" pip:descriptorType="Media Properties" ref="urn:gencat:aprencat:m7:media_properties:video:1f010fac7cad1e8100000108d2c8752f"/>
      </Descriptor>
      <Resource mimeType="" ref="p2pi2cat://md5:92b746569d936206f43e49b918bb840a"/>
      </Component>
      </Item>
      -----------------------------------------------------------------------------------

      The result of the resolved inclusion is:

      -----------------------------------------------------------------------------------
      <Item xml:base="DI_video1.xml">
      <Descriptor>
      <Statement mimeType="text/xml">
      <dii:Identifier>urn:gencat:aprencat:m21:dii:1f010fac747c5bf200000108d2a83d80:video_item:1</dii:Identifier>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml">
      <dip:ObjectType>urn:gencat:aprencat:m21:dip:types:video_item</dip:ObjectType>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml">
      <dip:ObjectType>urn:gencat:aprencat:m21:dip:types:item</dip:ObjectType>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml">
      <pip:Label>Etiqueta video prova</pip:Label>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Component pip:componentType="Thumbnails">
      <Resource mimeType="perfer" ref="perfer"/>
      </Component>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml" pip:descriptorType="Content Features" ref="urn:gencat:aprencat:m7:content_features:video_item:1f010fac0061aac800000108d2aaedcc"/>
      </Descriptor>
      <Component>
      <Descriptor>
      <Statement mimeType="text/xml">
      <dii:Identifier/>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml">
      <dip:ObjectType/>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml">
      <dip:ObjectType/>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml">
      <dip:ObjectType/>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml">
      <pip:Label/>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Component pip:componentType="Thumbnails">
      <Resource mimeType="perfer" ref="perfer"/>
      </Component>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml">
      <pip:Origin/>
      </Statement>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml" pip:descriptorType="Content Features" ref="urn:gencat:aprencat:m7:content_features:video:1f010fac35cd807f00000108e7b6e83e"/>
      </Descriptor>
      <Descriptor>
      <Statement mimeType="text/xml" pip:descriptorType="Media Properties" ref="urn:gencat:aprencat:m7:media_properties:video:1f010fac7cad1e8100000108d2c8752f"/>
      </Descriptor>
      <Resource mimeType="" ref="p2pi2cat://md5:92b746569d936206f43e49b918bb840a"/>
      </Component>
      </Item>
      -----------------------------------------------------------------------------------

      Note that the problem starts in the tag:
      <Resource mimeType="perfer" ref="perfer"/>

      Attachments

        Activity

          People

            nddelima@ca.ibm.com nddelima
            pau.moreno Pau Moreno Martín
            Votes:
            1 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: