OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: XLink question

[ Lists Home | Date Index | Thread Index ]
  • From: Francis Norton <francis@redrice.com>
  • Date: Tue, 04 Apr 2000 14:02:32 +0100



Ravi Ramamirtham wrote:
> 
> Hi,
>         I want the ability to replace an element in one XML document with
> the contents of another XML document while parsing. Basically the element
> being replaced is described in an XML document of it's own. What's the best
> way to achieve this, if at all possible? Is XLink meant for doing things
> like this? Any pointers/suggestions would be greatly appreciated.
> 
At the risk of stating the obvious, have you considered XSLT for this?
An XSLT doc would describe "the element being replaced" (using Xpath
syntax for the actual pattern matching) and replace it using the
document() function (http://www.w3.org/TR/xslt#function-document). 

The following should do what you need:

<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

  <!-- stick an xpath expression matching to your target element here
-->
  <xsl:template match="//foo/bar[text()='bark']">
    <!-- specify your replacement file here -->
    <xsl:copy-of select="document('file:x.xml')" />
  </xsl:template>
  
  <!-- just copy everything else -->
  <xsl:template match="@*|node()">
    <xsl:copy>
      <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
  </xsl:template>

</xsl:stylesheet>

***************************************************************************
This is xml-dev, the mailing list for XML developers.
To unsubscribe, mailto:majordomo@xml.org&BODY=unsubscribe%20xml-dev
List archives are available at http://xml.org/archives/xml-dev/
***************************************************************************

  • References:



 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS