Net::OSCAR::XML
Net::OSCAR::XML(3) User Contributed Perl Documentation Net::OSCAR::XML(3)
Net::OSCAR::XML -- XML functions for Net::OSCAR
We’re doing the fancy-schmancy Protocol.xml stuff here, so I’ll
explain it here.
Protocol.xml contains a number of "OSCAR protocol elements". One
<define> block is one OSCAR protocol elemennt.
When the module is first loaded, Protocol.xml is parsed and two hashes
are created, one whose keys are the names the the elements and whose
values are the contents of the XML::Parser tree which represents the
contents of those elements; the other hash has a family/subtype tuple
as a key and element names as a value.
To do something with an element, given its name, Net::OSCAR calls
"protoparse("element name")". This returns a "Net::OSCAR::XML::Tem-
plate" object, which has "pack" and "unpack" methods. "pack" takes a
hash and returns a string of binary characters, and "unpack" goes the
other way around. The objects are cached, so "protoparse" only has to
do actual work once for every protocol element.
perl v5.8.8 2007-10-23 Net::OSCAR::XML(3)