Hallo Holger,
Das eine, hat aber mit dem anderen nicht zu tun.
Der DocType Eintrag gibt nur das hinterlegte Schema vor. Ich vermute mal du benutzt einen Parser, der nach dem DocType schaut und da er die Datei nicht findet entsprechend abbricht?
Nein, die Datei ist da, es kommt auch keine Fehlermeldung. Und wenn ich mir mit
<xsl:template match="/">
<xsl:value-of select="name(node())"/><xsl:text> </xsl:text>
<xsl:for-each select="/BMECAT/T_NEW_CATALOG/CLASSIFICATION_SYSTEM/CLASSIFICATION_GROUPS">
<xsl:apply-templates select="CLASSIFICATION_GROUP"/>
</xsl:for-each>
</xsl:template>
den Namen des aktuellen Root-Knotens ausgeben lasse, dann wird nur
BMECAT
ausgegeben. Mein Problem besteht darin, daß die for-each-Schleife bei aktiver DOCTYPE-Zeile nichts mehr findet. Leider verstehe ich den Grund dafür nicht.
Ich kann den Namen der DTD ändern, dann meldet mir der Editor einen Fehler. Ich transformiere mit Xalan unter Windows...
Wenn ich die Dateien mit Xalan prüfen lasse, bekomme ich folgende Meldung:
Warning.Occurred at file BMECatneu.xml, line 2, column 47. Element 'CUSTOMS_TARI
FF_NUMBERS' was referenced in a content model but never declared
Warning.Occurred at file BMECatneu.xml, line 2, column 47. Element 'FT_GROUPNAME
' was referenced in a content model but never declared
(mit aktiver DOCTYPE-Zeile). Da das aber "nur" Warnungen sind, habe ich da nocht nichts weiter unternommen. Kann dort der Hunde begraben liegen?
Danke und Gruß, Nils.