![]() |
[IXMLDOMDocument2] Nicht deklarierte Entität.
Liste der Anhänge anzeigen (Anzahl: 3)
Hallo DP,
ich versuche gerade ein Feed ein zu lesen. Um die Zeit zu überbrücken, in der ich auf ![]() Ergebnis:
Delphi-Quellcode:
Nun bekomme ich folgenden Fehler (xml.parseError.reason):
xml := CoDOMDocument40.Create;
xml.setProperty('NewParser', true); xml.load(AFilename); Zitat:
Als Beispiel RSS habe das aus der Wikipedia genommen. Ich hänge es mal an. [edit=1]Ich habe mir mal ein kleinen Feed selber zusammengetippt, und dort meckert er nicht rum?[/edit] [edit=2]Durch unzähliges Herumprobieren weiß ich endlich woran es liegt: Er kommt nicht mit "" zurecht. Wenn man das löscht, dann funktioniert er Ordnungsgemäß![/edit] MfG xZise |
Re: [IXMLDOMDocument2] Nicht deklarierte Entität.
Hallo Fabian,
ist dem XML-Parser nicht einfach so als Entity bekannt. Entweder du verwendest stattdessen ein character entity * oder du musst solche Entities in einer DTD definieren. Normalerweise tritt das Problem aber nur durch Medienbrüche auf. Grüße vom marabu |
Re: [IXMLDOMDocument2] Nicht deklarierte Entität.
Zitat:
Was ist ein Character Entity, und wie definiert man diese Entities? MfG xZise |
Re: [IXMLDOMDocument2] Nicht deklarierte Entität.
Da ist mir etwas missglückt und du hast nur noch die Lücke sehen können:
Zitat:
![]() |
Re: [IXMLDOMDocument2] Nicht deklarierte Entität.
Aber andere Entitäten sind ihm bekannt: z.B.
Code:
o.Ä.
>
Und das hieße: Datei downloaden > "&" durch "&#" ersetzen > Einlesen ? Und was ist, wenn das kein Entität ist (Also z.B.: A & B statt eigentlich A & B)? MfG xZise |
Re: [IXMLDOMDocument2] Nicht deklarierte Entität.
Die XML Spezifikation definiert fünf Character Entities: & > < ' " - mehr muss ein XML-Parser nicht kennen.
Was du da von Download und Ersetzen schreibst verstehe ich nicht. Magst du es näher erklären? |
Re: [IXMLDOMDocument2] Nicht deklarierte Entität.
Zitat:
Ich habe ein RSS Feed. Denn downloade ich von der jeweiligen Website. Und dannach habe ich ja einen String mit dem Inhalt. Jetzt ist die große Frage, was man damit machen soll: Möglicherweise sind die Entitäten nicht ausreichend (""). Was mache ich nun damit der Parser das versteht? MfG xZise |
Re: [IXMLDOMDocument2] Nicht deklarierte Entität.
Ganz klar: Dem WebMaster Bescheid geben, der den RSS-Feed verbrochen hat. Wenn irgendwelche Entities enthalten sind, die der XML-Parser nicht kennt, dann ist der RSS-Feed fehlerhaft.
Die Frage, wie du einem XML-Parser unbekannte Entities antrainieren kannst, hatte ich bereits in Beitrag #2 (DTD) beantwortet. Wie besorgst du dir denn den RSS-Feed? Kannst du mir einen URL geben? |
Re: [IXMLDOMDocument2] Nicht deklarierte Entität.
Zitat:
MfG xZise |
Re: [IXMLDOMDocument2] Nicht deklarierte Entität.
Der von dir in Beitrag #1 angehängte RSS-Feed (Wikipedia) ist doch korrekt, da sind keine unbekannten Entities enthalten. Du darfst stets von einem korrekten RSS-Feed ausgehen. Treten Fehler auf, dann sind es nicht deine Fehler. Für die Bekanntmachung von weiteren Entities ist der Ersteller des RSS-Feed zuständig.
|
Re: [IXMLDOMDocument2] Nicht deklarierte Entität.
Zitat:
![]() MfG xZise |
Re: [IXMLDOMDocument2] Nicht deklarierte Entität.
Wikipedia-Artikel können Fehler enthalten.
Das von dir verlinkte Beispiel ist fehlerhaft. |
Re: [IXMLDOMDocument2] Nicht deklarierte Entität.
Zitat:
MfG xZise |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:46 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz