Provided by: librdf-rdfa-generator-perl_0.204-2_all bug

NAME

       RDF::RDFa::Generator - Generate data for RDFa serialization

DESCRIPTION

   Constructor
       "$gen = RDF::RDFa::Generator->new(style => $style, %options)"
           Creates  a  new generator object. $style is one of the following case-sensitive strings: 'HTML::Head'
           (the default), 'HTML::Hidden' or 'HTML::Pretty'. You can also construct an object like this:

             $gen = RDF::RDFa::Generator::HTML::Head->new(%options);

           Options include:

           •   base - the base URL where the output data will be published. This allows in some  cases  for  the
               generated RDFa to include relative URIs.

           •   data_context  - if non-null, an Attean Blank or IRI object or an RDF::Trine::Node which indicates
               the context (named graph) containing the data to generate RDFa for.

           •   namespacemap - a URI::NamespaceMap object  containing  preferred  CURIE  prefixes.  This  is  the
               preferred method, see note below.

           •   namespaces - a {prefix=>uri} hashref of preferred CURIE prefixes.

           •   ns - a {uri=>prefix} hashref of preferred CURIE prefixes. DEPRECATED - use namespaces instead.

           •   prefix_attr - use the @prefix attribute for CURIE prefixes (RDFa 1.1 only).  Boolean, defaults to
               false.

           •   safe_xml_literals  -  prevents  XML  literals  from  injecting  arbitrary  XHTML into the output.
               Boolean, defaults to FALSE.

           •   title - assign a <title> element for generated XHTML documents.

           •   version - set generated RDFa version. Valid values are '1.0' (the default) or '1.1'.

   Public Methods
       "$gen->create_document($model, %opts)"
           Creates a new RDFa file containing triples. $model is an Attean::QuadModel (where the graph  name  is
           not  used)  object  providing  the  triples.  Returns  an  XML::LibXML::Document  object suitable for
           serializing using its "toString" method.

           If you're planning on serving the RDFa with the text/html media type, then it is recommended that you
           use HTML::HTML5::Writer to serialize the document rather than "toString".

           Can also be called as a class method:

            $document = RDF::RDFa::Generator->create_document($model)
            # Same as:
            # $document = RDF::RDFa::Generator->new->create_document($model)

           Options can also be passed as a HASH. This is typically used for style-specific options.

       "$gen->inject_document($document, $model)"
           Injects an existing document with triples. $document is an  XML::LibXML::Document  to  inject,  or  a
           well-formed  XML  string.  $model  is  an Attean::QuadModel (where the graph name is not used) object
           providing the triples. Returns an XML::LibXML::Document object suitable  for  serializing  using  its
           "toString" method.

           See "create_document" for information about serving the RDFa with the text/html media type.

           Can also be called as a class method. See "create_document" for details.

       "$gen->nodes($model)"
           Provides   triple-laden   XML::LibXML::Elements   to   be   added   to  a  document.   $model  is  an
           Attean::QuadModel (where the graph name is not used) object providing the triples. If called in  list
           context,  returns  a list of XML::LibXML::Element objects which can be added to a document; otherwise
           returns an XML::LibXML::NodeList containing a list of such elements.

           Can also be called as a class method. See "create_document" for details.

           The HTML::Pretty generator can be passed a couple of additional options:

             $gen->nodes($model, notes_heading=>'Additional Info', notes=>\@notes);

           The notes are a list of RDF::RDFa::Generator::HTML::Pretty::Note objects which are added as notes  to
           the end of each subject's data.

UPGRADING TO 0.200

       The  recommended upgrade path is to migrate your application to use Attean rather than RDF::Trine as your
       RDF library. If that is not an option, you may continue to  use  RDF::Trine,  by  using  a  compatibility
       layer.  If you are using this module directly, to upgrade from earlier releases, you would simply add

        use RDF::TrineX::Compatibility::Attean;

       alongside  the import of this module. It is in a separate distribution that needs to be installed. If you
       use the RDF::Trine::Serializer methods, you should instead use RDF::Trine::Serializer::RDFa.

NOTE

       Version 0.200 introduced a large number of changes to be compatible with both Attean and RDF::Trine. Some
       of  these  were  backwards-incompatible,  some  were  to  support  new  features,  such  as  the  use  of
       URI::NamespaceMap.

   Backwards-incompatible changes
       The  methods  "serialize_model_to_file",  "serialize_model_to_string",  "serialize_iterator_to_file"  and
       "serialize_iterator_to_string" that were  provided  for  compatibility  with  the  RDF::Trine::Serializer
       interface have been moved to a module RDF::Trine::Serializer::RDFa that has to be installed separately to
       use this with RDF::Trine.

       "data_context"  previously  accepted  a plain-text string URI. Now, it requires an appropriate object, as
       documented.

       Since RDF 1.1 abandons untyped literals, this module also ceases to emit them.

   Namespace mappings
       The way namespace mappings are handled have been rewritten. Now, the preferred method to add them  is  to
       pass an URI::NamespaceMap object to "namespacemap". This will override any other options.

       The namespace mappings for the following prefixes will always be added: "rdfa", "rdf", "rdfs" and "xsd".

       If  URI::NamespaceMap  is not used, but "namespaces" is given as a hashref of prefix-URI pairs, the pairs
       will be added. If neither are given, all mappings from  RDF::NS::Curated,  which  includes  all  if  RDFa
       Initial  Context  will  be added. Finally, any pairs from the deprecated "ns" option will be added, but a
       warning will be emitted.

BUGS

       Please report any bugs to <https://github.com/kjetilk/p5-rdf-rdfa-generator/issues>.

SEE ALSO

       You   may   want   to   use   the   framework-specific   frontends:    RDF::Trine::Serializer::RDFa    or
       AtteanX::Serializer::RDFa.

       Other relevant modules:

       HTML::HTML5::Writer, XML::LibXML, RDF::RDFa::Parser, RDF::Trine, URI::NamespaceMap, Attean.

AUTHOR

       Toby Inkster <tobyink@cpan.org>.

       Kjetil Kjernsmo <kjetilk@cpan.org>.

COPYRIGHT AND LICENCE

       Copyright (C) 2010 by Toby Inkster, 2017, 2018 Kjetil Kjernsmo

       This  library  is  free  software;  you can redistribute it and/or modify it under the same terms as Perl
       itself, either Perl version 5.8 or, at your option, any later version of Perl 5 you may have available.

   Icons
       RDF::RDFa::Generator::HTML::Pretty       uses       the       FamFamFam       Silk       icons;       see
       <http://famfamfam.com/lab/icons/silk/>.

perl v5.40.0                                       2025-01-21                          RDF::RDFa::Generator(3pm)