Paddy: Checkbox in Word mittels XSL

Hallo,

ich habe folgendes Problem:

meine xml Datei liefert mir <Test>False</Test>.

Folgendes steht in meinem xsl file:
<xsl:if test=". ='False'">
<input checked="checked" name="Freigabe" type="checkbox"/>
<!--xsl:textNein</xsl:text>-->
</xsl:if>

Da ich mittels Word 2003 die Transformation durchführe bekomme ich folgende Fehlermeldung:

"Diese Datei konnte nicht geöffnet werden, da ein xml-Element in einem unzulässigen Bereich gefunden wurde"

Nehm ich den auskommentierten Teil, bekomm ich zwar keine Checkbox aber es funktioniert. Kann mir jemand sagen wie ich da ne Checkbox hinbekomme???

THANX
Paddy

  1. Hallo,

    ich habe folgendes Problem:

    meine xml Datei liefert mir <Test>False</Test>.

    Folgendes steht in meinem xsl file:
    <xsl:if test=". ='False'">
    <input checked="checked" name="Freigabe" type="checkbox"/>
    <!--xsl:textNein</xsl:text>-->
    </xsl:if>

    Wenn das "Nein" hier ein HTML-Kommentar sind soll, dann so:
    xsl:commentNein</xsl:comment>

    sonst muss du uns sagen, was xsl:textNein</xsl:text> sein soll.
    außerdem aus dem Fragment ist der Kontext nicht zu erkennen, daher kann man nur mutmaßen, dass der Ausruck ".='False'" an diesem Platz nie zutrifft.

    Grüße
    Thomas

    --
    Surftip: kennen Sie schon Pipolino's Clowntheater?
    http://www.clowntheater-pipolino.net/
    1. Hallo,

      ich habe folgendes Problem:

      meine xml Datei liefert mir <Test>False</Test>.

      Folgendes steht in meinem xsl file:
      <xsl:if test=". ='False'">
      <input checked="checked" name="Freigabe" type="checkbox"/>
      <!--xsl:textNein</xsl:text>-->
      </xsl:if>

      Wenn das "Nein" hier ein HTML-Kommentar sind soll, dann so:
      xsl:commentNein</xsl:comment>

      sonst muss du uns sagen, was xsl:textNein</xsl:text> sein soll.
      außerdem aus dem Fragment ist der Kontext nicht zu erkennen, daher kann man nur mutmaßen, dass der Ausruck ".='False'" an diesem Platz nie zutrifft.

      Grüße
      Thomas

      Hallo Thomas,

      ok ich geb zu die Beschreibung war ein wenig dürftig ;-)

      Ich habe ein xml file das mir Daten aus einer Datenbank liefert, z.B
      ob ein Mitarbeiter an Werktagen arbeitet. --><is_Do>False</is_DO> in diesem Fall arbeitet er Donnerstags nicht.

      Nun will ich statt dem 'False' eine  Checkbox die nicht gechecked ist in meinem Formular erstellt haben. Mit dem folgenden Befehl klappt das nicht:
      ---xsl Datei---
      <xsl:if test=". ='False'">
      <input name="Freigabe" type="checkbox"/>
      </xsl:if>

      Dann hab ich nur getestet ob es so klappen würde( ich wollte damit sicher gehen, dass <xsl:if test=". ='False'"> funktioniert. Funzt auch.

      <xsl:if test=". ='False'">
      xsl:textNein</xsl:text>
      </xsl:if>

      so würde jetzt halt in meinem Word Dokument Do = Nein drinstehen. Ich hätte aber gern eine Checkbox hinter dem Do.

      Die Transformation(xsl mit dem checkbox-Element) wird durchgeführt aber beim öffnen des Word.xml files kommt diese Fehlermeldung
      "Diese Datei konnte nicht geöffnet werden, da ein xml-Element in einem unzulässigen Bereich gefunden wurde".

      Ich hoffe es ist jetzt verständlicher

      Grüße
      Paddy

      1. Hallo,

        Die Transformation(xsl mit dem checkbox-Element) wird durchgeführt aber beim öffnen des Word.xml files kommt diese Fehlermeldung
        "Diese Datei konnte nicht geöffnet werden, da ein xml-Element in einem unzulässigen Bereich gefunden wurde".

        Ich hoffe es ist jetzt verständlicher

        Ja.
        Aber leider kann ich dir hier nicht effetiv wieterhelfen: die Fehlermeldung sagt nur sehr wenig aus:
        a) entweder steht im XML ein Element tatsächlich an einer Falschen stelle:
        öffe das XML-Datie im IE, ohne dass du dabei eine Transformation durchzuführen versuchst. Wenn dort keine Fehlermeldung kommt, dürfte das XML in Ordnung sein.
        b) dein XSL ist fehlerhaft in dem Sinne, dass es kein woghlgeformtes XML ergibt. (öffne das XSL direkt mit dem IE (wie vorhin beschrieben)
        c) Word versucht irgendwelche DTDs auf die XML- oder XSL-Datei (letzteres wäre zwar unsinnig, aber es ist Word) anzuwenden und die DTD verbietet an dieser Stelle ein Element wodurch es zu dieser Meldung kommt.

        Mehr kann man ohne das XML und das XSL zu sehen wirklich nicht sagen.

        Grüße
        Thomas

        --
        Surftip: kennen Sie schon Pipolino's Clowntheater?
        http://www.clowntheater-pipolino.net/
        1. Ja.

          Aber leider kann ich dir hier nicht effetiv wieterhelfen: die Fehlermeldung sagt nur sehr wenig aus:
          a) entweder steht im XML ein Element tatsächlich an einer Falschen stelle:
          öffe das XML-Datie im IE, ohne dass du dabei eine Transformation durchzuführen versuchst. Wenn dort keine Fehlermeldung kommt, dürfte das XML in Ordnung sein.
          b) dein XSL ist fehlerhaft in dem Sinne, dass es kein woghlgeformtes XML ergibt. (öffne das XSL direkt mit dem IE (wie vorhin beschrieben)
          c) Word versucht irgendwelche DTDs auf die XML- oder XSL-Datei (letzteres wäre zwar unsinnig, aber es ist Word) anzuwenden und die DTD verbietet an dieser Stelle ein Element wodurch es zu dieser Meldung kommt.

          Mehr kann man ohne das XML und das XSL zu sehen wirklich nicht sagen.

          Grüße
          Thomas

          Hi Thomas,

          danke mal soweit, so wie es aussieht liegt es an den DTD's, da die anderen Punkt a und b funktionieren

          mal schauen was sich da machen lässt

          Grüße
          Paddy