{
    "content": [
        {
            "type": "text",
            "text": "# RDF::Redland (perldoc)\n\n## NAME\n\nRDF::Redland - Redland RDF Class\n\n## SYNOPSIS\n\nuse RDF::Redland;\nmy $storage=new RDF::Redland::Storage(\"hashes\", \"test\", \"new='yes',hash-type='memory'\");\nmy $model=new RDF::Redland::Model($storage, \"\");\n...\n\n## DESCRIPTION\n\nThis class initialises the Redland RDF classes.\n\n## Sections\n\n- **NAME**\n- **SYNOPSIS**\n- **DESCRIPTION**\n- **STATIC METHODS**\n- **SEE ALSO**\n- **AUTHOR**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "RDF::Redland",
        "section": "",
        "mode": "perldoc",
        "summary": "RDF::Redland - Redland RDF Class",
        "synopsis": "use RDF::Redland;\nmy $storage=new RDF::Redland::Storage(\"hashes\", \"test\", \"new='yes',hash-type='memory'\");\nmy $model=new RDF::Redland::Model($storage, \"\");\n...",
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [],
        "examples": [],
        "see_also": [],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 6,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 8,
                "subsections": []
            },
            {
                "name": "STATIC METHODS",
                "lines": 51,
                "subsections": []
            },
            {
                "name": "SEE ALSO",
                "lines": 5,
                "subsections": []
            },
            {
                "name": "AUTHOR",
                "lines": 2,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "RDF::Redland - Redland RDF Class\n",
                "subsections": []
            },
            "SYNOPSIS": {
                "content": "use RDF::Redland;\nmy $storage=new RDF::Redland::Storage(\"hashes\", \"test\", \"new='yes',hash-type='memory'\");\nmy $model=new RDF::Redland::Model($storage, \"\");\n\n...\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "This class initialises the Redland RDF classes.\n\nSee the main classes for full detail: RDF::Redland::Node, RDF::Redland::BlankNode,\nRDF::Redland::URINode, RDF::Redland::LiteralNode, RDF::Redland::XMLLiteralNode,\nRDF::Redland::URI, RDF::Redland::Statement, RDF::Redland::Model, RDF::Redland::Storage,\nRDF::Redland::Parser, RDF::Redland::Query, RDF::Redland::QueryResults, RDF::Redland::Iterator,\nRDF::Redland::Stream and RDF::Redland::RSS.\n",
                "subsections": []
            },
            "STATIC METHODS": {
                "content": "setloghandler SUB\nSet *SUB* as the subroutine to be called on any Redland error, warning or log message. The\nsubroutine must have the followign signature:\n\nsub handler ($$$$$$$$$) {\nmy($code, $level, $facility, $message, $line, $column, $byte, $file, $uri)=@;\n# int error code\n# int log level\n# int facility causing the error (parsing, serializing, ...)\n# string error message\n# int line number (<0 if not relevant)\n# int column number (<0 if not relevant)\n# int byte number (<0 if not relevant)\n# string file name or undef\n# string URI or undef\n\n# ...do something with the information ...\n};\n\nRDF::Redland::setloghandler(\\&handler);\n\nresetloghandler\nReset redland to use the default logging handler, typically printing the message to stdout\nor stderr and exiting on a fatal error.\n\nseterrorhandler SUB\nThe method setloghandler is much more flexible than this and includes this functionality.\n\nSet *SUB* as the subroutine to be called on a Redland error with the error message as the\nsingle argument. For example:\n\nRDF::Redland::seterrorhandler(sub {\nmy $msg=shift;\n# Do something with $msg\n});\n\nThe default if this is not set, is to run die $msg\n\nsetwarninghandler SUB\nThe method setloghandler is much more flexible than this and includes this functionality.\n\nSet *SUB* as the subroutine to be called on a Redland warning with the warning message as\nthe single argument. For example:\n\nRDF::Redland::setwarninghandler(sub {\nmy $msg=shift;\n# Do something with $msg\n});\n\nThe default if this is not set, is to run warn $msg\n",
                "subsections": []
            },
            "SEE ALSO": {
                "content": "RDF::Redland::Node, RDF::Redland::BlankNode, RDF::Redland::URINode, RDF::Redland::LiteralNode,\nRDF::Redland::XMLLiteralNode, RDF::Redland::URI, RDF::Redland::Statement, RDF::Redland::Model,\nRDF::Redland::Storage, RDF::Redland::Parser, RDF::Redland::Query, RDF::Redland::QueryResults,\nRDF::Redland::Iterator, RDF::Redland::Stream and RDF::Redland::RSS.\n",
                "subsections": []
            },
            "AUTHOR": {
                "content": "Dave Beckett - http://www.dajobe.org/\n",
                "subsections": []
            }
        }
    }
}