xml based
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 7921
XML::SAX::Base 1.02
XML::SAX::Base is a base class SAX Drivers and Filters. more>>
XML::SAX::Base is a base Perl class with SAX Drivers and Filters.
SYNOPSIS
package MyFilter;
use XML::SAX::Base;
@ISA = (XML::SAX::Base);
This module has a very simple task - to be a base class for PerlSAX drivers and filters. Its default behaviour is to pass the input directly to the output unchanged. It can be useful to use this module as a base class so you dont have to, for example, implement the characters() callback.
The main advantages that it provides are easy dispatching of events the right way (ie it takes care for you of checking that the handler has implemented that method, or has defined an AUTOLOAD), and the guarantee that filters will pass along events that they arent implementing to handlers downstream that might nevertheless be interested in them.
WRITING SAX DRIVERS AND FILTERS
Writing SAX Filters is tremendously easy: all you need to do is inherit from this module, and define the events you want to handle. A more detailed explanation can be found at http://www.xml.com/pub/a/2001/10/10/sax-filters.html.
Writing Drivers is equally simple. The one thing you need to pay attention to is NOT to call events yourself (this applies to Filters as well). For instance:
package MyFilter;
use base qw(XML::SAX::Base);
sub start_element {
my $self = shift;
my $data = shift;
# do something
$self->{Handler}->start_element($data); # BAD
}
The above example works well as precisely that: an example. But it has several faults: 1) it doesnt test to see whether the handler defines start_element. Perhaps it doesnt want to see that event, in which case you shouldnt throw it (otherwise itll die). 2) it doesnt check ContentHandler and then Handler (ie it doesnt look to see that the user hasnt requested events on a specific handler, and if not on the default one), 3) if it did check all that, not only would the code be cumbersome (see this modules source to get an idea) but it would also probably have to check for a DocumentHandler (in case this were SAX1) and for AUTOLOADs potentially defined in all these packages. As you can tell, that would be fairly painful. Instead of going through that, simply remember to use code similar to the following instead:
package MyFilter;
use base qw(XML::SAX::Base);
sub start_element {
my $self = shift;
my $data = shift;
# do something to filter
$self->SUPER::start_element($data); # GOOD (and easy) !
}
This way, once youve done your job you hand the ball back to XML::SAX::Base and it takes care of all those problems for you!
Note that the above example doesnt apply to filters only, drivers will benefit from the exact same feature.
<<lessSYNOPSIS
package MyFilter;
use XML::SAX::Base;
@ISA = (XML::SAX::Base);
This module has a very simple task - to be a base class for PerlSAX drivers and filters. Its default behaviour is to pass the input directly to the output unchanged. It can be useful to use this module as a base class so you dont have to, for example, implement the characters() callback.
The main advantages that it provides are easy dispatching of events the right way (ie it takes care for you of checking that the handler has implemented that method, or has defined an AUTOLOAD), and the guarantee that filters will pass along events that they arent implementing to handlers downstream that might nevertheless be interested in them.
WRITING SAX DRIVERS AND FILTERS
Writing SAX Filters is tremendously easy: all you need to do is inherit from this module, and define the events you want to handle. A more detailed explanation can be found at http://www.xml.com/pub/a/2001/10/10/sax-filters.html.
Writing Drivers is equally simple. The one thing you need to pay attention to is NOT to call events yourself (this applies to Filters as well). For instance:
package MyFilter;
use base qw(XML::SAX::Base);
sub start_element {
my $self = shift;
my $data = shift;
# do something
$self->{Handler}->start_element($data); # BAD
}
The above example works well as precisely that: an example. But it has several faults: 1) it doesnt test to see whether the handler defines start_element. Perhaps it doesnt want to see that event, in which case you shouldnt throw it (otherwise itll die). 2) it doesnt check ContentHandler and then Handler (ie it doesnt look to see that the user hasnt requested events on a specific handler, and if not on the default one), 3) if it did check all that, not only would the code be cumbersome (see this modules source to get an idea) but it would also probably have to check for a DocumentHandler (in case this were SAX1) and for AUTOLOADs potentially defined in all these packages. As you can tell, that would be fairly painful. Instead of going through that, simply remember to use code similar to the following instead:
package MyFilter;
use base qw(XML::SAX::Base);
sub start_element {
my $self = shift;
my $data = shift;
# do something to filter
$self->SUPER::start_element($data); # GOOD (and easy) !
}
This way, once youve done your job you hand the ball back to XML::SAX::Base and it takes care of all those problems for you!
Note that the above example doesnt apply to filters only, drivers will benefit from the exact same feature.
Download (0.020MB)
Added: 2007-06-21 License: Perl Artistic License Price:
855 downloads
XML Hammer 1.0 RC1
XML Hammer application is a free and open-source tool that simplifies elementary XML actions. more>>
XML Hammer application is a free and open-source tool that simplifies elementary XML actions like checking for well-formedness, validation, transformation and xpath searches using any JAXP implementation.
After all these years of XML, it is still relatively difficult to simply validate or transform XML files. You are currently either forced to use extensive, sometimes expensive, and most often difficult to use tools with a lot of extra functionality unnecessary for these simple tasks and very often not flexible enough to provide what you want, or you will have to be almost a programmer and create your own application or script to handle these elementary XML related tasks.
The XML Hammer tool addresses these issues by providing a free and open-source tool that has a (relatively) simple to use user-interface however still allowing the flexibility for the user to specify anything that he/she would have been able to specify when writing a script for this same task him/herself.
The functionality of the XML Hammer tool is based on the capabilities provided by the Java API for XML Processing (JAXP) and supports the JAXP API as fully as possible. To achieve this, the functionality has been divided into four specific project types:
Transformer - Perform XSLT transformations.
XPath - Perform XPath searches on XML files.
XML Parser - Parse and validate XML files.
Schema Validator - Parse and validate Schema files.
Enhancements:
- This version features some major new functionality, including comprehensive help documentation, deactivate and activate properties, easier to use validation functionality, and more.
- Bugs with selecting items in combo-boxes using keys, issues when performing XPath searches, module initialization error handling, and other smaller bugs were fixed.
<<lessAfter all these years of XML, it is still relatively difficult to simply validate or transform XML files. You are currently either forced to use extensive, sometimes expensive, and most often difficult to use tools with a lot of extra functionality unnecessary for these simple tasks and very often not flexible enough to provide what you want, or you will have to be almost a programmer and create your own application or script to handle these elementary XML related tasks.
The XML Hammer tool addresses these issues by providing a free and open-source tool that has a (relatively) simple to use user-interface however still allowing the flexibility for the user to specify anything that he/she would have been able to specify when writing a script for this same task him/herself.
The functionality of the XML Hammer tool is based on the capabilities provided by the Java API for XML Processing (JAXP) and supports the JAXP API as fully as possible. To achieve this, the functionality has been divided into four specific project types:
Transformer - Perform XSLT transformations.
XPath - Perform XPath searches on XML files.
XML Parser - Parse and validate XML files.
Schema Validator - Parse and validate Schema files.
Enhancements:
- This version features some major new functionality, including comprehensive help documentation, deactivate and activate properties, easier to use validation functionality, and more.
- Bugs with selecting items in combo-boxes using keys, issues when performing XPath searches, module initialization error handling, and other smaller bugs were fixed.
Download (4.2MB)
Added: 2007-06-26 License: GPL (GNU General Public License) Price:
852 downloads
XML::DOM::XML_Base 0.02
XML::DOM::XML_Base Perl module can apply xml:base to attribute values. more>>
XML::DOM::XML_Base Perl module can apply xml:base to attribute values.
SYNOPSIS
use XML::DOM::XML_Base;
my $parser = XML::DOM::Parser->new();
my $xml = qq(
);
# build the DOM
my $dom = $parser->parse( $xml );
# get some elements
my $endo = $dom->getElementsByTagName( endo )->item( 0 );
my $meso = $dom->getElementsByTagName( meso )->item( 0 );
my $ecto = $dom->getElementsByTagName( ecto )->item( 0 );
print $endo->getBase()."n"; # a/b/c/
print $meso->getBase()."n"; # a/b/
print $ecto->getBase()."n"; # a/
print $endo->getAttributeWithBase( x )."n"; # a/b/c/3
print $meso->getAttributeWithBase( x )."n"; # a/b/2
print $ecto->getAttributeWithBase( x )."n"; # a/1
<<lessSYNOPSIS
use XML::DOM::XML_Base;
my $parser = XML::DOM::Parser->new();
my $xml = qq(
);
# build the DOM
my $dom = $parser->parse( $xml );
# get some elements
my $endo = $dom->getElementsByTagName( endo )->item( 0 );
my $meso = $dom->getElementsByTagName( meso )->item( 0 );
my $ecto = $dom->getElementsByTagName( ecto )->item( 0 );
print $endo->getBase()."n"; # a/b/c/
print $meso->getBase()."n"; # a/b/
print $ecto->getBase()."n"; # a/
print $endo->getAttributeWithBase( x )."n"; # a/b/c/3
print $meso->getAttributeWithBase( x )."n"; # a/b/2
print $ecto->getAttributeWithBase( x )."n"; # a/1
Download (0.003MB)
Added: 2007-07-20 License: Perl Artistic License Price:
826 downloads
XML::RSS::Parser 4.0
XML::RSS::Parser is a liberal object-oriented parser for RSS feeds. more>>
XML::RSS::Parser is a liberal object-oriented parser for RSS feeds.
SYNOPSIS
#!/usr/bin/perl -w
use strict;
use XML::RSS::Parser;
use FileHandle;
my $p = XML::RSS::Parser->new;
my $fh = FileHandle->new(/path/to/some/rss/file);
my $feed = $p->parse_file($fh);
# output some values
my $feed_title = $feed->query(/channel/title);
print $feed_title->text_content;
my $count = $feed->item_count;
print " ($count)n";
foreach my $i ( $feed->query(//item) ) {
my $node = $i->query(title);
print .$node->text_content;
print "n";
}
XML::RSS::Parser is a lightweight liberal parser of RSS feeds. This parser is "liberal" in that it does not demand compliance of a specific RSS version and will attempt to gracefully handle tags it does not expect or understand. The parsers only requirements is that the file is well-formed XML and remotely resembles RSS. Roughly speaking, well formed XML with a channel element as a direct sibling or the root tag and item elements etc.
There are a number of advantages to using this module then just using a standard parser-tree combination. There are a number of different RSS formats in use today. In very subtle ways these formats are not entirely compatible from one to another. XML::RSS::Parser makes a couple assumptions to "normalize" the parse tree into a more consistent form. For instance, it forces channel and item into a parent-child relationship. For more detail see "SPECIAL PROCESSING NOTES".
This module is leaner then XML::RSS -- the majority of code was for generating RSS files. It also provides a XPath-esque interface to the feeds tree.
While XML::RSS::Parser creates a normalized parse tree, it still leaves the mapping of overlapping and alternate tags common in the RSS format space to the developer. For this look at the XML::RAI (RSS Abstraction Interface) package which provides an object-oriented layer to XML::RSS::Parser trees that transparently maps these various tags to one common interface.
XML::RSS::Parser is based on XML::Elemental, a a SAX-based package for easily parsing XML documents into a more native and mostly object-oriented perl form.
<<lessSYNOPSIS
#!/usr/bin/perl -w
use strict;
use XML::RSS::Parser;
use FileHandle;
my $p = XML::RSS::Parser->new;
my $fh = FileHandle->new(/path/to/some/rss/file);
my $feed = $p->parse_file($fh);
# output some values
my $feed_title = $feed->query(/channel/title);
print $feed_title->text_content;
my $count = $feed->item_count;
print " ($count)n";
foreach my $i ( $feed->query(//item) ) {
my $node = $i->query(title);
print .$node->text_content;
print "n";
}
XML::RSS::Parser is a lightweight liberal parser of RSS feeds. This parser is "liberal" in that it does not demand compliance of a specific RSS version and will attempt to gracefully handle tags it does not expect or understand. The parsers only requirements is that the file is well-formed XML and remotely resembles RSS. Roughly speaking, well formed XML with a channel element as a direct sibling or the root tag and item elements etc.
There are a number of advantages to using this module then just using a standard parser-tree combination. There are a number of different RSS formats in use today. In very subtle ways these formats are not entirely compatible from one to another. XML::RSS::Parser makes a couple assumptions to "normalize" the parse tree into a more consistent form. For instance, it forces channel and item into a parent-child relationship. For more detail see "SPECIAL PROCESSING NOTES".
This module is leaner then XML::RSS -- the majority of code was for generating RSS files. It also provides a XPath-esque interface to the feeds tree.
While XML::RSS::Parser creates a normalized parse tree, it still leaves the mapping of overlapping and alternate tags common in the RSS format space to the developer. For this look at the XML::RAI (RSS Abstraction Interface) package which provides an object-oriented layer to XML::RSS::Parser trees that transparently maps these various tags to one common interface.
XML::RSS::Parser is based on XML::Elemental, a a SAX-based package for easily parsing XML documents into a more native and mostly object-oriented perl form.
Download (0.012MB)
Added: 2006-12-21 License: Perl Artistic License Price:
1038 downloads
Parsifal XML Parser 1.0.0
Parsifal XML Parser is a validating XML 1.0 parser written in ANSI C. more>>
Parsifal is a validating XML 1.0 parser written in ANSI C. Parsifal API is based on SAX2.
Parsifal can be used for parsing XML based messages (such as REST and RSS) and for application specific data processing e.g. config files, data files etc. Parsifal can also be used for document-oriented processing (e.g. XHTML xhtml1-transitional.dtd) and for parsing modular documents because it is conforming XML 1.0 parser and it supports features like internal and external general entities, DTD parameter entities and default attributes etc. Parsifal is ideal for processing large data files and streams since its SAX based and consumes very little memory not to mention it is fast enough for most purposes cos its written in C.
Using Parsifal in place of large XML processing libraries (e.g. libxml, xerces) or even in the place of small Expat (which doesnt support DTD validation) can be justified for limited memory environments and in applications requiring bundled parser; because of its modular design parsifal can be easily compiled to support DTD validation or to perform only non-validating parsing etc. If you need higher level tools, for example dom/xpath processing, you should look for other libs of course.
Main features:
- PublicID legal chars arent fully checked
- XML Namespaces 1.0 duplicate URIs arent checked
- Allows some illegal placement for parameter entity references (see conformance test results)
- Validation of TokenizedType attributes (e.g. ID) are not yet implemented nor checking for existence of valid NOTATIONs etc.
- Doesnt check non-determinism of content models in validating mode
Supported XML encodings
- UTF-8
- ISO-8859-1
- US-ASCII
When compiled with GNU libiconv support:
- UTF-16, UCS-2, UTF-32, UCS-4
- EUC-JP
- SHIFT_JIS
- ISO-8859-{1,2,3,4,5,7,9,10,13,14,15,16}
Enhancements:
- This release fixes GCC 4 issues and polishes the configuration script.
<<lessParsifal can be used for parsing XML based messages (such as REST and RSS) and for application specific data processing e.g. config files, data files etc. Parsifal can also be used for document-oriented processing (e.g. XHTML xhtml1-transitional.dtd) and for parsing modular documents because it is conforming XML 1.0 parser and it supports features like internal and external general entities, DTD parameter entities and default attributes etc. Parsifal is ideal for processing large data files and streams since its SAX based and consumes very little memory not to mention it is fast enough for most purposes cos its written in C.
Using Parsifal in place of large XML processing libraries (e.g. libxml, xerces) or even in the place of small Expat (which doesnt support DTD validation) can be justified for limited memory environments and in applications requiring bundled parser; because of its modular design parsifal can be easily compiled to support DTD validation or to perform only non-validating parsing etc. If you need higher level tools, for example dom/xpath processing, you should look for other libs of course.
Main features:
- PublicID legal chars arent fully checked
- XML Namespaces 1.0 duplicate URIs arent checked
- Allows some illegal placement for parameter entity references (see conformance test results)
- Validation of TokenizedType attributes (e.g. ID) are not yet implemented nor checking for existence of valid NOTATIONs etc.
- Doesnt check non-determinism of content models in validating mode
Supported XML encodings
- UTF-8
- ISO-8859-1
- US-ASCII
When compiled with GNU libiconv support:
- UTF-16, UCS-2, UTF-32, UCS-4
- EUC-JP
- SHIFT_JIS
- ISO-8859-{1,2,3,4,5,7,9,10,13,14,15,16}
Enhancements:
- This release fixes GCC 4 issues and polishes the configuration script.
Download (0.74MB)
Added: 2005-11-03 License: GPL (GNU General Public License) Price:
1455 downloads
XML::EasySQL 1.2
XML::EasySQL is a two-way SQL/XML base class for Perl. more>>
XML::EasySQL is a two-way SQL/XML base class for Perl.
SYNOPSIS
...
# fetch a database row as hash ref
my $data = $db->selectrow_hashref(select * from users where id = 2);
# init the new EasySQL data object
my $data_object = EasySqlChildClass->new({data=>$data});
# get the root XML element
my $xml = $data_object->getXML();
# make changes to the XML document
$xml->username->setString(curtisleefulton);
$xml->bio->setAttr(age, 22);
$xml->bio->city->setString(Portland);
$xml->history->access->setAttr(last, time());
# output entire XML doc as string to STDOUT
print $xml->getDomObj->toString();
# update the database
my $sql = $data_object->getSQL();
my $q = "update users set ".$sql->{users}." where id = 2";
$db->do($q);
Main features:
- Two-way transforms between XML and SQL data
- smart SQL updates: only altered tables are updated
- unlimited tree depth
- multiple SQL tables can merge intone XML tree, then back again
- precise control over how data is translated
- offers either an easy XML interface or plain DOM
- database independent
<<lessSYNOPSIS
...
# fetch a database row as hash ref
my $data = $db->selectrow_hashref(select * from users where id = 2);
# init the new EasySQL data object
my $data_object = EasySqlChildClass->new({data=>$data});
# get the root XML element
my $xml = $data_object->getXML();
# make changes to the XML document
$xml->username->setString(curtisleefulton);
$xml->bio->setAttr(age, 22);
$xml->bio->city->setString(Portland);
$xml->history->access->setAttr(last, time());
# output entire XML doc as string to STDOUT
print $xml->getDomObj->toString();
# update the database
my $sql = $data_object->getSQL();
my $q = "update users set ".$sql->{users}." where id = 2";
$db->do($q);
Main features:
- Two-way transforms between XML and SQL data
- smart SQL updates: only altered tables are updated
- unlimited tree depth
- multiple SQL tables can merge intone XML tree, then back again
- precise control over how data is translated
- offers either an easy XML interface or plain DOM
- database independent
Download (0.011MB)
Added: 2006-09-12 License: Perl Artistic License Price:
1137 downloads
VTD-XML 2.1
VTD-XML is a non-extractive XML processing software API implementing Virtual Token Descriptor. more>>
VTD-XML is a "non-extractive" XML processing software API implementing Virtual Token Descriptor. Currently, VTD-XML only supports built-in entity references (" &s ><<less
Download (0.64MB)
Added: 2007-06-16 License: GPL (GNU General Public License) Price:
863 downloads
Xmlbeansxx 0.7.2
Xmlbeansxx is a set of tools for binding XML to C++ objects. more>>
Xmlbeansxx is a set of tools for binding XML to C++ objects. It contains a code generator, which tranforms XML Schema to C++ classes.
It is open, memory safe, fast, and well-tested.
Main features:
- Easy access to XmlSchema based XML data through generated C++ classes.
- Easy iteration over any XML data, even with no schema file, through XmlCursor iterators (being implemented).
- Runtime XPath queries, through XQuery technology (being implemented).
- Memory safe - uses boost::smart_ptr technology.
- Clear, configurable logging - uses log4cxx.
- Fast & lightweighted
<<lessIt is open, memory safe, fast, and well-tested.
Main features:
- Easy access to XmlSchema based XML data through generated C++ classes.
- Easy iteration over any XML data, even with no schema file, through XmlCursor iterators (being implemented).
- Runtime XPath queries, through XQuery technology (being implemented).
- Memory safe - uses boost::smart_ptr technology.
- Clear, configurable logging - uses log4cxx.
- Fast & lightweighted
Download (0.49MB)
Added: 2005-10-05 License: The Apache License 2.0 Price:
1479 downloads
ResXML 0.2.2
ResXML provides software for XML-based resumes and curricula vitae. more>>
ResXML provides software for XML-based resumes and curricula vitae.
ResXML is an XML application for the presentation-oriented markup of resumes or curricula vitae.
The aim is for ResXML to support a set of features which make it a very functional tool for generating resumes for actual use from an XML source.
Main features:
- Multiple output formats can be generated from a single master XML resume:
- HTML
- PDF and PostScript (via XSLFO)
- Plain text.
- PDF output supports the following options:
- Title page
- PDF bookmarks
- PDF document security features.
- Labels for section headings are user-customisable.
- A resume can include a photograph of its author, and this can be rendered in a number of ways to each output format.
Enhancements:
- This release fixes several bugs and delivers some minor new features.
- Some primitive support has been added for targetted resumes. The stylesheet common/targets.xsl can be used to pre-process a resume and remove elements which do not have an appropriate target attribute. This is not automated in any way, and a good working knowledge of XSL processing tools will be required.
- A new top-level "Clearances" section has been added to the schema.
- Security clearances can be listed here.
- The FO and HTML stylesheets have been updated to close a number of bugs and feature requests.
<<lessResXML is an XML application for the presentation-oriented markup of resumes or curricula vitae.
The aim is for ResXML to support a set of features which make it a very functional tool for generating resumes for actual use from an XML source.
Main features:
- Multiple output formats can be generated from a single master XML resume:
- HTML
- PDF and PostScript (via XSLFO)
- Plain text.
- PDF output supports the following options:
- Title page
- PDF bookmarks
- PDF document security features.
- Labels for section headings are user-customisable.
- A resume can include a photograph of its author, and this can be rendered in a number of ways to each output format.
Enhancements:
- This release fixes several bugs and delivers some minor new features.
- Some primitive support has been added for targetted resumes. The stylesheet common/targets.xsl can be used to pre-process a resume and remove elements which do not have an appropriate target attribute. This is not automated in any way, and a good working knowledge of XSL processing tools will be required.
- A new top-level "Clearances" section has been added to the schema.
- Security clearances can be listed here.
- The FO and HTML stylesheets have been updated to close a number of bugs and feature requests.
Download (MB)
Added: 2007-01-26 License: BSD License Price:
1003 downloads
Apache XML Project
Apache XML Project provides commercial-quality standards-based XML solutions and more. more>>
Apache XML Projects goals are:
- to provide commercial-quality standards-based XML solutions that are developed in an open and cooperative fashion,
- to provide feedback to standards bodies (such as IETF and W3C) from an implementation perspective, and
- to be a focus for XML-related activities within Apache projects
The Apache XML Project used to be the home for many XML-related subprojects, many of which have moved to top-level project status recently or are currently in migration. The Apache XML Project slowly transforms into an place where you can find pointers to XML-related projects here in the Apache Software Foundation. The remaining subprojects directly under the supervision of the XML PMC are:
- AxKit - XML-based web publishing, in mod_perl
- Crimson - A Java XML parser derived from the Sun Project X Parser.
- Xang - Rapid development of dynamic server pages, in JavaScript
- Xindice - A native XML database.
- XML Commons - focussed on common code and guidelines for XML projects
- XML Security - Java and C++ implementations of the XML signature and encryption standards
<<less- to provide commercial-quality standards-based XML solutions that are developed in an open and cooperative fashion,
- to provide feedback to standards bodies (such as IETF and W3C) from an implementation perspective, and
- to be a focus for XML-related activities within Apache projects
The Apache XML Project used to be the home for many XML-related subprojects, many of which have moved to top-level project status recently or are currently in migration. The Apache XML Project slowly transforms into an place where you can find pointers to XML-related projects here in the Apache Software Foundation. The remaining subprojects directly under the supervision of the XML PMC are:
- AxKit - XML-based web publishing, in mod_perl
- Crimson - A Java XML parser derived from the Sun Project X Parser.
- Xang - Rapid development of dynamic server pages, in JavaScript
- Xindice - A native XML database.
- XML Commons - focussed on common code and guidelines for XML projects
- XML Security - Java and C++ implementations of the XML signature and encryption standards
Download (MB)
Added: 2007-05-07 License: The Apache License 2.0 Price:
904 downloads
XML Tree Object Model Parser 1.0.1
XML Tree Object Model Parser is an easy to use XML parser. more>>
XML Tree Object Model Parser is an easy to use XML parser designed to provide an easy and simple to use library for parsing XML configuration files. It is split into two components.
The first one is the Parser itself, which uses J2SE 1.4 XML Parsing API, and the second one is what I call XML Tree Object Model, which is a XMLTree containing all of the XML Nodes or Elements in that tree.
The basic idea behind XTOM is to parse the XML file into an XMLTree and then navigate the elements of that tree by refering to them by the path, such as one/two/three.
The idead behind the navigation system came from Jakartas Digester. XTOM just simplifies it to increase the developement of XML based applications.
<<lessThe first one is the Parser itself, which uses J2SE 1.4 XML Parsing API, and the second one is what I call XML Tree Object Model, which is a XMLTree containing all of the XML Nodes or Elements in that tree.
The basic idea behind XTOM is to parse the XML file into an XMLTree and then navigate the elements of that tree by refering to them by the path, such as one/two/three.
The idead behind the navigation system came from Jakartas Digester. XTOM just simplifies it to increase the developement of XML based applications.
Download (0.060MB)
Added: 2006-03-17 License: The Apache License 2.0 Price:
1317 downloads
RPC::XML 0.59
RPC::XML is a set of classes for core data, message and XML handling. more>>
RPC::XML is a set of classes for core data, message and XML handling.
SYNOPSIS
use RPC::XML;
$req = RPC::XML::request->new(fetch_prime_factors,
RPC::XML::int->new(985120528));
...
$resp = RPC::XML::Parser->new()->parse(STREAM);
if (ref($resp))
{
return $resp->value->value;
}
else
{
die $resp;
}
The RPC::XML package is an implementation of the XML-RPC standard.
The package provides a set of classes for creating values to pass to the constructors for requests and responses. These are lightweight objects, most of which are implemented as tied scalars so as to associate specific type information with the value. Classes are also provided for requests, responses, faults (errors) and a parser based on the XML::Parser package from CPAN.
This module does not actually provide any transport implementation or server basis. For these, see RPC::XML::Client and RPC::XML::Server, respectively.
<<lessSYNOPSIS
use RPC::XML;
$req = RPC::XML::request->new(fetch_prime_factors,
RPC::XML::int->new(985120528));
...
$resp = RPC::XML::Parser->new()->parse(STREAM);
if (ref($resp))
{
return $resp->value->value;
}
else
{
die $resp;
}
The RPC::XML package is an implementation of the XML-RPC standard.
The package provides a set of classes for creating values to pass to the constructors for requests and responses. These are lightweight objects, most of which are implemented as tied scalars so as to associate specific type information with the value. Classes are also provided for requests, responses, faults (errors) and a parser based on the XML::Parser package from CPAN.
This module does not actually provide any transport implementation or server basis. For these, see RPC::XML::Client and RPC::XML::Server, respectively.
Download (0.12MB)
Added: 2006-09-21 License: Perl Artistic License Price:
1128 downloads
XML::Conf 0.04
XML::Conf is a simple configuration module based on XML. more>>
XML::Conf is a simple configuration module based on XML.
SYNOPSIS
Here follows some examples as the tests are done.
use XML::Conf;
my $c = XML::Conf->new($filename);
$w = $c->FIRSTKEY();
$v = $c->NEXTKEY();
$c->EXISTS($v);
$c->DELETE($v);
$c->CLEAR();
This is the description of the class, currently it only containg only the descriptions of the private and public methods and attributes.
<<lessSYNOPSIS
Here follows some examples as the tests are done.
use XML::Conf;
my $c = XML::Conf->new($filename);
$w = $c->FIRSTKEY();
$v = $c->NEXTKEY();
$c->EXISTS($v);
$c->DELETE($v);
$c->CLEAR();
This is the description of the class, currently it only containg only the descriptions of the private and public methods and attributes.
Download (0.006MB)
Added: 2006-09-08 License: Perl Artistic License Price:
1141 downloads
XML::Code 0.04
XML::Diff is a Perl module for XML DOM-Tree based Diff & Patch Module. more>>
XML::Diff is a Perl module for XML DOM-Tree based Diff & Patch Module.
SYNOPSIS
my $diff = XML::Diff->new();
# to generate a diffgram of two XML files, use compare.
# $old and $new can be filepaths, XML as a string,
# XML::LibXML::Document or XML::LibXML::Element objects.
# The diffgram is a XML::LibXML::Document by default.
my $diffgram = $diff->compare(
-old => $old_xml,
-new => $new_xml,
);
# To patch an XML document, an patch. $old and $diffgram
# follow the same formatting rules as compare.
# The resulting XML is a XML::LibXML::Document by default.
my $patched = $diff->patch(
-old => $old,
-diffgram => $diffgram,
);
This module provides methods for generating and applying an XML diffgram of two related XML files. The basis of the algorithm is tree-wise comparison using the DOM model as provided by XML::LibXML.
The Diffgram is well-formed XML in the XVCS namespance and supports update, insert, delete and move operations. It is meant to be human and machine readable. It uses XPath expressions for locating the nodes to operate on.
<<lessSYNOPSIS
my $diff = XML::Diff->new();
# to generate a diffgram of two XML files, use compare.
# $old and $new can be filepaths, XML as a string,
# XML::LibXML::Document or XML::LibXML::Element objects.
# The diffgram is a XML::LibXML::Document by default.
my $diffgram = $diff->compare(
-old => $old_xml,
-new => $new_xml,
);
# To patch an XML document, an patch. $old and $diffgram
# follow the same formatting rules as compare.
# The resulting XML is a XML::LibXML::Document by default.
my $patched = $diff->patch(
-old => $old,
-diffgram => $diffgram,
);
This module provides methods for generating and applying an XML diffgram of two related XML files. The basis of the algorithm is tree-wise comparison using the DOM model as provided by XML::LibXML.
The Diffgram is well-formed XML in the XVCS namespance and supports update, insert, delete and move operations. It is meant to be human and machine readable. It uses XPath expressions for locating the nodes to operate on.
Download (0.017MB)
Added: 2006-09-14 License: Perl Artistic License Price:
1138 downloads
XML::Diff 0.04
XML::Diff is a Perl module for XML DOM-Tree based Diff & Patch Module. more>>
XML::Diff is a Perl module for XML DOM-Tree based Diff & Patch Module.
SYNOPSIS
my $diff = XML::Diff->new();
# to generate a diffgram of two XML files, use compare.
# $old and $new can be filepaths, XML as a string,
# XML::LibXML::Document or XML::LibXML::Element objects.
# The diffgram is a XML::LibXML::Document by default.
my $diffgram = $diff->compare(
-old => $old_xml,
-new => $new_xml,
);
# To patch an XML document, an patch. $old and $diffgram
# follow the same formatting rules as compare.
# The resulting XML is a XML::LibXML::Document by default.
my $patched = $diff->patch(
-old => $old,
-diffgram => $diffgram,
);
This module provides methods for generating and applying an XML diffgram of two related XML files. The basis of the algorithm is tree-wise comparison using the DOM model as provided by XML::LibXML.
The Diffgram is well-formed XML in the XVCS namespance and supports update, insert, delete and move operations. It is meant to be human and machine readable. It uses XPath expressions for locating the nodes to operate on. See the below DIFFGRAM section for the exact syntax.
The motivation and alogrithm used by this module is discussed in MOTIVATION below.
<<lessSYNOPSIS
my $diff = XML::Diff->new();
# to generate a diffgram of two XML files, use compare.
# $old and $new can be filepaths, XML as a string,
# XML::LibXML::Document or XML::LibXML::Element objects.
# The diffgram is a XML::LibXML::Document by default.
my $diffgram = $diff->compare(
-old => $old_xml,
-new => $new_xml,
);
# To patch an XML document, an patch. $old and $diffgram
# follow the same formatting rules as compare.
# The resulting XML is a XML::LibXML::Document by default.
my $patched = $diff->patch(
-old => $old,
-diffgram => $diffgram,
);
This module provides methods for generating and applying an XML diffgram of two related XML files. The basis of the algorithm is tree-wise comparison using the DOM model as provided by XML::LibXML.
The Diffgram is well-formed XML in the XVCS namespance and supports update, insert, delete and move operations. It is meant to be human and machine readable. It uses XPath expressions for locating the nodes to operate on. See the below DIFFGRAM section for the exact syntax.
The motivation and alogrithm used by this module is discussed in MOTIVATION below.
Download (0.017MB)
Added: 2006-09-14 License: Perl Artistic License Price:
1136 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above xml based search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed