Martin, That's great! Thanks a lot. I'll give it a try first thing tomorrow.
Eric On Tue, 2004-02-24 at 16:25, Martin Holz wrote: > Hello Eric > > [EMAIL PROTECTED] writes: > > > I looked into it a little bit and noticed that a new tag > > <parents></parents> has been added to the .def.xml files. Not having > > this tag seems to be the cause of the exception. Am I correct in this > > and if so is there a solution to this (beyond adding this tag to every > > resource in my older store)? > > I wrote a small stylesheet and anttask for the conversion. > Add the anttask to your build.xml and define the properties > for store.new and store.old > > <!-- =================================================================== --> > <!-- Convert filestore --> > <!-- =================================================================== --> > <target name="convert-filestore" > > <xslt basedir="${store.old}" destdir="${store.new}" > style="etc/filestoreupdate.xsl" > extension=".xml" > > > <outputproperty name="indent" value="false"/> > <include name="**/*.def.xml" /> > </xslt> > </target> > <!-- =================================================================== --> > > > You may have to modify the stylesheet. Add Rules for > removing groups and actions, that do not longer exist. > > ===================== filestoreupdate.xsl ========================================= > <?xml version="1.0" encoding="utf-8"?> > <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > version="1.0"> > > > <xsl:template match="@classname"> > <xsl:attribute name="classname"> > <xsl:choose> > <xsl:when test="starts-with(.,'sliderole')"> > <xsl:text>org.apache.slide.structure.SubjectNode</xsl:text> > </xsl:when> > <xsl:otherwise> > <xsl:value-of select="." /> > </xsl:otherwise> > </xsl:choose> > </xsl:attribute> > </xsl:template> > > <xsl:template match="childs" > > <children> > <xsl:apply-templates select="child" /> > </children> > <parents> > <xsl:if test="/data/objectnode/@uri != '/'"> > <xsl:variable name="parentname"> > <xsl:call-template name="afterLastSlash"> > <xsl:with-param name="value" select="/data/objectnode/@uri" /> > </xsl:call-template> > </xsl:variable> > <xsl:variable name="parentuuri"> > <xsl:call-template name="beforeLastSlash"> > <xsl:with-param name="rest" select="/data/objectnode/@uri" /> > </xsl:call-template> > </xsl:variable> > <parent uuri="{$parentuuri}" name="{$parentname}" > > </parent> > </xsl:if> > </parents> > </xsl:template> > > <xsl:template match="child"> > <xsl:variable name="name"> > <xsl:call-template name="afterLastSlash"> > <xsl:with-param name="value" select="@val" /> > </xsl:call-template> > </xsl:variable> > <child name="{$name}" > uuri="[EMAIL PROTECTED]" /> > </xsl:template> > > > <xsl:template name="afterLastSlash"> > <xsl:param name="value" /> > <xsl:variable name="rest" select="substring-after($value,'/')" /> > <xsl:choose> > <xsl:when test="$rest = ''"> > <xsl:value-of select="$value" /> > </xsl:when> > <xsl:otherwise> > <xsl:call-template name="afterLastSlash"> > <xsl:with-param name="value" select="$rest" /> > </xsl:call-template> > </xsl:otherwise> > </xsl:choose> > </xsl:template> > > <xsl:template name="beforeLastSlash"> > <xsl:param name="head" /> > <xsl:param name="rest" /> > <xsl:variable name="h" select="substring-before($rest,'/')" /> > <xsl:variable name="r" select="substring-after($rest,'/')" /> > <xsl:choose> > <xsl:when test="$r = ''"> > <xsl:value-of select="$head" /> > </xsl:when> > <xsl:when test="$h = ''"> > <xsl:call-template name="beforeLastSlash"> > <xsl:with-param name="rest" select="$r" /> > </xsl:call-template> > </xsl:when> > <xsl:otherwise> > <xsl:call-template name="beforeLastSlash"> > <xsl:with-param name="head" select="concat($head,'/',$h)" /> > <xsl:with-param name="rest" select="$r" /> > </xsl:call-template> > </xsl:otherwise> > </xsl:choose> > </xsl:template> > > > <!-- ===================================================================== > Default rules > =======================================================================--> > > <xsl:template match="@*|*|text()|processing-instruction()" priority="-1"> > <xsl:copy> > <xsl:apply-templates select="@*|*|text()|processing-instruction()"/> > </xsl:copy> > </xsl:template> > > </xsl:stylesheet> > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]