Klasse :: XML :: Parser

ParSES (und validiert optional gegen eine DTD) eine XML-Nachricht in eine benutzerdefinierte Klassenstruktur
Jetzt downloaden

Klasse :: XML :: Parser Ranking & Zusammenfassung

Anzeige

  • Rating:
  • Lizenz:
  • Perl Artistic License
  • Preis:
  • FREE
  • Name des Herausgebers:
  • Mark Morgan
  • Website des Verlags:
  • http://search.cpan.org/~mmorgan/

Klasse :: XML :: Parser Stichworte


Klasse :: XML :: Parser Beschreibung

Analyse (und optional gegen eine DTD validiert) eine XML-Nachricht in eine benutzerdefinierte Klassenstruktur Klasse :: XML :: Parser ist ein Perl-Modul, mit dem XML in eine benutzerdefinierte Objekthierarchie analysiert werden kann. Darüber hinaus wird der XML gegen die DTD validiert, wenn solcher in dem XML-Körper definiert ist, und XML :: Checker :: Parser ist verfügbar Wenn die -> Parse-Methode aufgerufen wird, wird der jeweilige Elementname anhand der aktuellen Klasse '(stumpf_Class standardmäßig) __XML_PARSE_OBJECTS-Ergebnis überprüft. Wenn ein Eintrag für dieses Element in der __XML_PARSE_OBJECTS-HASH vorhanden ist, wird eine neue Instanz der Zielklasse erstellt. Alle weiteren Elemente und Attribute werden als Milfierer an diesem Objekt aufgerufen, bis das Schließungs-Tag für das Element gefunden wird, zu dem das vorherige Objekt wiederhergestellt wird, und alle weiteren Elemente werden den Zugangsoren auf diesem Objekt anrufen. Wenn verschachtelte Elemente gefunden werden, aber keine __XML_PARSE_OBJECTS-Definition für sie existiert, werden alle Datenelemente und -attribute mit dem aktuellen Objekt gefaltet (Container-Only-Elemente sind * nicht * hinzugefügt) .synopsis # Parse-Ergebnisbasisklasse, einfach ein Autoloader-Paket definiert Parseresult :: Base; sub neu {segne {}, schicht (); } sub autoload {mein ($ self, $ val) = @_; meine $ meth = $ autoload; $ meth = ~ s /.* :: //; Rückgabe, wenn $ meth EQ 'Destroy'; Wenn (definiertes $ Val) {$ self -> {$ meth} = $ Val; } $ self -> {$ meth}; } # Definieren Sie Klassen, die XML in das Paketparseresult analysiert werden; Verwenden Sie Base QW (Parseresult :: BASE); # Optional definieren Unterklassen, in die spezifische Elemente analysiert werden. # Wenn diese Methode nicht existiert, werden alle Unterelemente und Attribute davon # in diese Klasse sub __xml_parse_objects {{blah => 'parsereult :: blah',}}}}}}}}}}}}}}}}. als "neu". Nützliche Nummer für Klasse :: Singleton-Objekte SUB __XML_PARSE_CONSTRUCTOR {'NEUE'} # Optional haben Elemente, die auf ein anderes Verfahren als den XML # -Elias-Namen sub __xml_parse_aliases {{elem1 => 'bar',}} paket parseresult :: bla; Verwenden Sie Base QW (Parseresult :: BASE); Packung Main; Verwenden Sie Klasse :: XML :: PARSER; Mein $ XML = 'PARSERESULT', # TOP-Level-Klasse, um Ergebnisse in PRUNE => 1, Validate => 1, # DTD-Validierung zu erstellen, sollte MAP_URI erfolgen. MAP_URI => {# Maps von XML SYSID oder PubId an URLs, um sie zu ersetzen. Verwenden Sie, um zu vermeiden ); mein $ top = $ Parser-> Parse ($ XML) oder sterben Sie $ Parser-> Last_Error; Drucken von Dumper $ top; # vorausgesetzt, dass die DTD existiert, gibt dies eine Struktur von: # $ var1 = segn ({# 'blah' => segne ({# 'wiBble' => 'Wobble', # Unterelement von # 'a' => '20' # -attribute werden auch behandelt #}, 'parseresult :: blah'), # als neues Objekt erstellt, als blah # # definiert in übergeordneten # # __XML_PARSE_OBJECTS # 'QWERTY' => 'uiop' # Unterelement von root #}, 'parseresult'); # Top-Objekt ist gesegnet in # # # 'root_class' Anforderungen: · Perl.


Klasse :: XML :: Parser Zugehörige Software