Clase :: XML :: analizador

Parses (y opcionalmente valida contra un DTD) un mensaje XML en una estructura de clase definida por el usuario
Descargar ahora

Clase :: XML :: analizador Clasificación y resumen

Anuncio publicitario

  • Rating:
  • Licencia:
  • Perl Artistic License
  • Precio:
  • FREE
  • Nombre del editor:
  • Mark Morgan
  • Sitio web del editor:
  • http://search.cpan.org/~mmorgan/

Clase :: XML :: analizador Etiquetas


Clase :: XML :: analizador Descripción

Parses (y opcionalmente valida contra un DTD) un mensaje XML en una estructura de clase definida por el usuario Clase :: XML :: Parser es un módulo PERL que permite que XML se analice en una jerarquía de objetos definidos por el usuario. Además, el XML se validará contra su DTD, si se define, si se define dentro del cuerpo XML, y XML :: Checker :: Parser está disponible. Una nota sobre cómo se realiza el análisis. Cuando se llama al método -> analizar, el nombre de cada elemento se revisa contra la clase actual '(ROET_CLASS de forma predeterminada) __xMl_Parse_Objects Result. Si existe una entrada para este elemento en el hash __xml_Parse_Objects, se crea una nueva instancia de la clase de destino. Todos los elementos y atributos adicionales se llamarán como mutadores en ese objeto, hasta que se encuentre la etiqueta de cierre para el elemento, momento en el cual se restaurará el objeto anterior, y todos los elementos posteriores se aplicarán predeterminados para llamar a los accesores de ese objeto. Si se encuentran elementos anidados, pero no existe una definición __xml_parse_objects para ellos, cualquier elemento de datos y atributos se plegarán con el objeto actual (los elementos de solo contenedor son * no * agregados) .synopsis # PERSONA DE RESULTADORES BASE CLASE, Simplemente define un paquete de autocargador Parseresult :: base; SUB NUEVO {BESS {}, Shift (); } Sub AutoLoad {My ($ Self, $ Val) = @_; MY $ METHT = $ AutoLoad; $ meth = ~ s /,* :: //; devolver si $ Meth EQ 'destruye'; if (definido $ val) {$ yo-> {$ meth} = $ val; } $ auto -> {$ meth}; } # Defina las clases que XML se analiza en el paquete parseresult; usar la base QW (parseresult :: base); # Definir opcionalmente las subclases de los que se analizarán los elementos específicos. # Si este método no existe, entonces todos los subelementos y atributos de los mismos # se analizarán en esta clase Sub __xml_Parse_Objects {{blah => '' parseresult :: blah ',}} # opcionalmente, haga que una clase use un constructor otro constructor que 'nuevo'. Útil # para clase :: Subdleton Objects Sub __XML_PARSE_CONSTRUCTOR {'NUEVO'} # Opcionalmente, tiene elementos alias asignados a un método que no sea el nombre del elemento XML # Sub __XML_PARSE_ALIASES {{ELEM1 => 'Bar',}} Paquete Parseresult :: Blah; usar la base QW (parseresult :: base); Paquete principal; Usar clase :: XML :: analizador; My $ XML = 'PARSERESULT', # Clase de nivel superior para analizar los resultados en PRUNN => 1, validar => 1, # DTD Validación debe hacerse map_uri => {# Maps de XML Sysid o Pubid a URLs para reemplazar. Use para evitar # tener que hacer una recuperación de HTTP del DTD, en su lugar encontrándolo en # el sistema de archivos local 'http://example.com/PARSE.DTD' => 'Archivo: /tmp/Parse.dtd',}, ) My $ TOPT = $ PARSER-> Parse ($ XML) o DIE $ PSERSER-> Last_Error; Imprimir Dumper $ TOP; # Suponiendo que el DTD existe, esto devolverá una estructura de: # $ var1 = bendice ({# 'blah' => bendice ({# 'wibble' => 'wobble', # sub-elemento de # 'a' => '20' # Los atributos también se manejan #}, 'parseresult :: blah'), # creado como nuevo objeto, como Blah # # definido en nivel de nivel superior # __xml_Parse_Objects # 'QWERTY' => 'UIOP' # Sub-element de la raíz #}, 'parseresult'); # El objeto superior es bendecido en los requisitos # # '' root_class ': · Perl


Clase :: XML :: analizador Software relacionado