Re: Exorcist Problems

Jukka Zitting <[email protected]> Wed, 23 Nov 2005 18:16:01 +0200
Newsgroups gmane.comp.web.midgard.user
Message-ID <[email protected]>
Hi,

Sonic wrote:
> I now commented out the mgd:* template in staging2live.xslt and  
> included mgd:midgard_element instead. This at least stops the host  name 
> overwriting as well as the parameter duplication. The elements  are stil 
> not replicated though.

Ah, this is caused by Exorcist treating the Midgard database as a tree 
of objects. Instead of just mapping mgd:midgard_element records for 
output, you need to select the mgd:midgard_style records that contain 
the style elements. An example XSLT file would be:

   <xsl:template match="mgd:site">
     <mgd:site>
       <xsl:apply-templates select="mgd:midgard_style"/>
     </mgd:site>
   </xsl:template>

   <xsl:template match="mgd:*">
     <xsl:copy><xsl:apply-templates/></xsl:copy>
   </xsl:template>

If you want you can add any number of xsl:apply-templates rules to 
selectively replicate parts of your database. For example:

   <!-- Replicate all the topic trees (including articles, etc.) -->
   <xsl:apply-templates select="mgd:midgard_topic"/>

   <!-- Replicate the identified topic subtree -->
   <xsl:apply-templates select=".//mgd:midgard_topic[mgd:guid='...']"/>

   <!-- Replicate all snippets -->
   <xsl:apply-templates select="mgd:midgard_snippetdir"/>

   <!-- Replicate all user accounts -->
   <xsl:apply-templates select="mgd:midgard_person"/>

The default <xsl:apply-templates/> rule replicates the entire database.

> Hm. Could this have to do with the fact that I created many of those  
> parameters in spider-admin (instead of AIS)?

It might. I've seen a few databases that do not contain GUIDs for all 
records, especially for parameters. The latest Exorcist snapshot fixes 
this problem by automatically generating any missing GUIDs.

> When will the new beta be available? At SF, there is still only beta-1

I'll post beta-2 later today.

BR,

Jukka Zitting