{
    "content": [
        {
            "type": "text",
            "text": "# RPC::XML::Parser::XMLParser (perldoc)\n\n## NAME\n\nRPC::XML::Parser::XMLParser - A container class for XML::Parser\n\n## SYNOPSIS\n\n# This class should rarely (if ever) be used directly:\nuse RPC::XML::ParserFactory 'XML::Parser';\n...\n$P = RPC::XML::ParserFactory->new();\n$P->parse($message);\n\n## DESCRIPTION\n\nThis class implements the interface defined in the RPC::XML::Parser factory-class (see\nRPC::XML::Parser) using the XML::Parser module to handle the actual manipulation of XML.\n\n## Sections\n\n- **NAME**\n- **SYNOPSIS**\n- **DESCRIPTION**\n- **SUBROUTINES/METHODS**\n- **DIAGNOSTICS**\n- **EXTERNAL ENTITIES**\n- **BUGS**\n- **SUPPORT**\n- **LICENSE AND COPYRIGHT**\n- **CREDITS**\n- **SEE ALSO**\n- **AUTHOR**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "RPC::XML::Parser::XMLParser",
        "section": "",
        "mode": "perldoc",
        "summary": "RPC::XML::Parser::XMLParser - A container class for XML::Parser",
        "synopsis": "# This class should rarely (if ever) be used directly:\nuse RPC::XML::ParserFactory 'XML::Parser';\n...\n$P = RPC::XML::ParserFactory->new();\n$P->parse($message);",
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [],
        "examples": [],
        "see_also": [],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 7,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "SUBROUTINES/METHODS",
                "lines": 23,
                "subsections": []
            },
            {
                "name": "DIAGNOSTICS",
                "lines": 4,
                "subsections": []
            },
            {
                "name": "EXTERNAL ENTITIES",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "BUGS",
                "lines": 4,
                "subsections": []
            },
            {
                "name": "SUPPORT",
                "lines": 24,
                "subsections": []
            },
            {
                "name": "LICENSE AND COPYRIGHT",
                "lines": 6,
                "subsections": []
            },
            {
                "name": "CREDITS",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "SEE ALSO",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "AUTHOR",
                "lines": 2,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "RPC::XML::Parser::XMLParser - A container class for XML::Parser\n",
                "subsections": []
            },
            "SYNOPSIS": {
                "content": "# This class should rarely (if ever) be used directly:\n\nuse RPC::XML::ParserFactory 'XML::Parser';\n...\n$P = RPC::XML::ParserFactory->new();\n$P->parse($message);\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "This class implements the interface defined in the RPC::XML::Parser factory-class (see\nRPC::XML::Parser) using the XML::Parser module to handle the actual manipulation of XML.\n",
                "subsections": []
            },
            "SUBROUTINES/METHODS": {
                "content": "This module implements the public-facing methods as described in RPC::XML::Parser:\n\nnew [ ARGS ]\nThe constructor only recognizes the two parameters specified in the base class (for the\nRPC::XML::base64 file-spooling operations).\n\nparse [ STRING | STREAM ]\nThe parse() method accepts either a string of XML, a filehandle of some sort, or no argument\nat all. In the latter case, the return value is a parser instance that acts as a push-parser\n(a non-blocking parser). For the first two types of input, the return value is either a\nmessage object (one of RPC::XML::request or RPC::XML::response) or an error.\n\nparsemore STRING\n(Only callable on a push-parser instance) Parses the chunk of XML, which does not have to\ndescribe a complete document, and adds it to the current running document. If this method is\ncalled on a parser instance that is not a push-parser, an exception is thrown.\n\nparsedone\n(Only callable on a push-parser instance) Finishes the parsing process and returns either a\nmessage object (one of RPC::XML::request or RPC::XML::response) or an error (if the document\nwas incomplete, not well-formed, or not valid). If this method is called on a parser\ninstance that is not a push-parser, an exception is thrown.\n",
                "subsections": []
            },
            "DIAGNOSTICS": {
                "content": "All methods return some type of reference on success. The new and parse methods return message\nstrings on errors. The parsemore and parsedone methods may throw exceptions on errors, if the\nerror occurs at the XML::Parser level.\n",
                "subsections": []
            },
            "EXTERNAL ENTITIES": {
                "content": "As of version 1.24 of this module (version 0.75 of the RPC::XML suite), external entities whose\nURI is a \"file:/\" scheme (local file) are explicitly ignored. This is for security purposes.\n",
                "subsections": []
            },
            "BUGS": {
                "content": "Please report any bugs or feature requests to \"bug-rpc-xml at rt.cpan.org\", or through the web\ninterface at <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=RPC-XML>. I will be notified, and\nthen you'll automatically be notified of progress on your bug as I make changes.\n",
                "subsections": []
            },
            "SUPPORT": {
                "content": "*   RT: CPAN's request tracker\n\n<http://rt.cpan.org/NoAuth/Bugs.html?Dist=RPC-XML>\n\n*   AnnoCPAN: Annotated CPAN documentation\n\n<http://annocpan.org/dist/RPC-XML>\n\n*   CPAN Ratings\n\n<http://cpanratings.perl.org/d/RPC-XML>\n\n*   Search CPAN\n\n<http://search.cpan.org/dist/RPC-XML>\n\n*   MetaCPAN\n\n<https://metacpan.org/release/RPC-XML>\n\n*   Source code on GitHub\n\n<http://github.com/rjray/rpc-xml>\n",
                "subsections": []
            },
            "LICENSE AND COPYRIGHT": {
                "content": "This file and the code within are copyright (c) 2011 by Randy J. Ray.\n\nCopying and distribution are permitted under the terms of the Artistic License 2.0\n(<http://www.opensource.org/licenses/artistic-license-2.0.php>) or the GNU LGPL 2.1\n(<http://www.opensource.org/licenses/lgpl-2.1.php>).\n",
                "subsections": []
            },
            "CREDITS": {
                "content": "The XML-RPC standard is Copyright (c) 1998-2001, UserLand Software, Inc. See\n<http://www.xmlrpc.com> for more information about the XML-RPC specification.\n",
                "subsections": []
            },
            "SEE ALSO": {
                "content": "RPC::XML, RPC::XML::Parser, XML::Parser\n",
                "subsections": []
            },
            "AUTHOR": {
                "content": "Randy J. Ray <rjray@blackperl.com>\n",
                "subsections": []
            }
        }
    }
}