Anzeige - [Hier werben / Mediadaten]
(?) Tags raten (?) atom, feed, xml (edit)
 
Reply to this topicStart new topicStart Poll
> XML: Atom Feed, Frage an XML-Experten
Adrian der Grosse
  Geschrieben am: Mi 19.04.2006, 23:51
Report PostQuote Post

AyomRank 4
********

Gruppe: Member (aktiv)
Beiträge: 113
Mitglied seit: 16.08.2005


Hallo zusammen,
Ich habe diverse Atom-Feeds. Wenn ich diese mit PHP - SimpleXML einlese gibt es Probleme.

Wenn ich nun den Beispiel Feed von http://www.atompub.org/rfc4287.html#rfc.section.1.1 nehme:
CODE
<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">

 <title>Example Feed</title>
 <link href="http://example.org/"/>
 <updated>2003-12-13T18:30:02Z</updated>

 <author>
   <name>John Doe</name>
 </author>
 <id>urn:uuid:60a76c80-d399-11d9-b93C-0003939e0af6</id>

 <entry>

   <title>Atom-Powered Robots Run Amok</title>
   <link href="http://example.org/2003/12/13/atom03"/>
   <id>urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a</id>
   <updated>2003-12-13T18:30:02Z</updated>

   <summary>Some text.</summary>
 </entry>

</feed>

Jetzt möchte ich gerne Checken um es sich um einen ATOM-Feed handelt:
CODE
$xml = simplexml_load_file('j:/atom.xml');

$atom = $xml->xpath('/feed');

if ($atom != false) {
   // Feed ist ein ATOM-Feed
   echo 'ATOM';
}

hier wird es nicht erkannt.

Wenn ich aber nun "<feed xmlns="http://www.w3.org/2005/Atom">"

"<feed xmlns:content="http://purl.org/atom/ns"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xml:lang="en">" wird es nun erkannt!

Heisst das, dass das ganze ATOM-Format einen Fehler hat(Was ich kaum glauben kann), oder wo stehe ich da auf dem Schlauch? Hat jemand eine Möglichkeit wie ich einen ATOM-Feed mit SimpleXML lesen und erkennen kann(ohne das <feed....> zu ändern)? (mit RSS funktioniert es ohne Probleme)

Besten Dank


--------------------
Mein Leben, ich und andere...
Mein Blog
Top
PMUsers WebsiteMSN
Top
 
 
jAuer
Jürgen Auer - freiberufl. Programmierer
#2 Geschrieben am: Do 20.04.2006, 09:26 (+09:34)
Report PostQuote Post

AyomRank 9
Group Icon

Gruppe: Experten Entwicklung
Beiträge: 2412
Mitglied seit: 4.02.2006


Möglichkeit 1: Deklaration eines Standard-Namespace

QUOTE (HoBbY @ Mi 19.4.2006, 23:51)

<feed xmlns="http://www.w3.org/2005/Atom">


Möglichkeit 2: Kein Standardnamespace deklariert

QUOTE (HoBbY @ Mi 19.4.2006, 23:51)
<feed xmlns:content="http://purl.org/atom/ns"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xml:lang="en">


Möglichkeit 3: Eigenes Namespace-Prefix deklarieren und verwenden:

QUOTE
<myphantasie:feed
xmlns:myphantasie="http://www.w3.org/2005/Atom"
xmlns:content="http://purl.org/atom/ns"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xml:lang="en">


Letzteres ist ein völlig korrektes Xml-Dokument + Atom, das ebenso so angeboten werden könnte.

Sprich: Eigentlich ist die zweite Version 'höchst schlampig und ungenau'.

Folglich: Erarbeite dir das Konzept des Namespace zu Xml und sieh dir dann an, wie das in dem SimpleXml verwendet wird. Letzteres nutze ich nicht, bei NET sind es eben ein paar zu deklarierende Objekte. Jeder ist berechtigt, sein Atom mit eigenem Namespace-Prefix anzubieten.


--------------------
Web-Anwendung 3.0: Ein Online-Kalender für Termine vieler Filialen.

server-daten - die Single-Data-Solution: Web-Datenbanken als Online - CRM - Lösung.
Ihre Geschäftsprozesse entscheiden, was Ihre Online-Datenbank macht. Sie konzentrieren sich auf Ihr Kerngeschäft - Ihre Datenbank funktioniert.
Top
PMEmail PosterUsers Website
Top
 
Adrian der Grosse
  #3 Geschrieben am: Do 20.04.2006, 13:14 (+03:48)
Report PostQuote Post

AyomRank 4
********

Gruppe: Member (aktiv)
Beiträge: 113
Mitglied seit: 16.08.2005


Hallo,

Besten Dank für deine Antwort!

Kennst du ein gutes Buch (oder auch Onlinetutorial) (Einführung in XML), dass diese Thematik bearbeitet (ausser deiner Seite biggrin.gif)?

Wie würdest du den in .NET auf feed zugreifen (xpath/SingleNode)?

Besten Dank

PS: könnte bitte jemand mir das PM-System freischalten?


--------------------
Mein Leben, ich und andere...
Mein Blog
Top
PMUsers WebsiteMSN
Top
 
jAuer
Jürgen Auer - freiberufl. Programmierer
#4 Geschrieben am: Do 20.04.2006, 19:28 (+06:14)
Report PostQuote Post

AyomRank 9
Group Icon

Gruppe: Experten Entwicklung
Beiträge: 2412
Mitglied seit: 4.02.2006


QUOTE (HoBbY @ Do 20.4.2006, 13:14)
Wie würdest du den in .NET auf feed zugreifen (xpath/SingleNode)?

Die NET-SelectSingleNode-Methode ist überladen, da kann ein Namespacemanager übergeben werden, der die Namespacedeklarationen enthält.

QUOTE
Kennst du ein gutes Buch (oder auch Onlinetutorial) (Einführung in XML), dass diese Thematik bearbeitet (ausser deiner Seite)?


Nö.


--------------------
Web-Anwendung 3.0: Ein Online-Kalender für Termine vieler Filialen.

server-daten - die Single-Data-Solution: Web-Datenbanken als Online - CRM - Lösung.
Ihre Geschäftsprozesse entscheiden, was Ihre Online-Datenbank macht. Sie konzentrieren sich auf Ihr Kerngeschäft - Ihre Datenbank funktioniert.
Top
PMEmail PosterUsers Website
Top
 
Thema wird von 0 Benutzer(n) gelesen (0 Gäste und 0 anonyme Benutzer)
0 Mitglieder:
Trackback-Url: http://www.ayom.com/track/t/11663

Topic Options Reply to this topicStart new topicStart Poll

 


> Ähnliche Themen
RSS-Feed per Link abonnieren TTlong 77 0 Fr 12.09.2008, 09:54
Tradedoubler Product Feed: productUrl verstehen pippolino 238 5 Di 12.08.2008, 08:39
RSS Feed in Wordpress einbinden Oliver Sinz 324 2 So 27.07.2008, 21:25
RSS/Atom Feedreader JRaffael 255 4 Mo 14.07.2008, 22:46
Keine Angst vor dem Atom Sami Demirel 383 3 So 9.03.2008, 08:15
RSS-Feed Tracking? Toblerone 166 1 Di 23.10.2007, 12:00
Suche Verzeichnis für RSS-Feed-Verzeichnisse Rainer 221 0 Mo 24.09.2007, 15:57
Meinen RSS-Feed als Code für andere Webmaster SPACEart 405 4 Fr 31.08.2007, 16:24
Rss Feed script gorbi 265 2 So 26.08.2007, 18:37




Anzeige - [Hier werben / Mediadaten]



Anzeigen


[Hier werben / Mediadaten]