Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
XML::Compile::TranslatUsereContributed PerXML::Compile::Translate::Template(3)

NAME
       XML::Compile::Translate::Template - create an XML or PERL example

INHERITANCE
	XML::Compile::Translate::Template
	  is a XML::Compile::Translate

SYNOPSIS
	my $schema = XML::Compile::Schema->new(...);
	print $schema->template(XML  =>	$type, ...);
	print $schema->template(PERL =>	$type, ...);

	# script as wrapper for	this module
	schema2example -f XML ...

DESCRIPTION
       The translator understands schemas, but does not	encode that into
       actions.	 This module interprets	the parse results of the translator,
       and creates a kind of abstract syntax tree from it, which can be	used
       for documentational purposes.  Then, it implements to ways to represent
       that knowledge: as an XML or a Perl example of the data-structure which
       the schema describes.

       Extends "DESCRIPTION" in	XML::Compile::Translate.

METHODS
       Extends "METHODS" in XML::Compile::Translate.

DETAILS
       Extends "DETAILS" in XML::Compile::Translate.

   Translator options
       Extends "Translator options" in XML::Compile::Translate.

   Processing Wildcards
       Wildcards are not (yet) supported.

   Schema hooks
       Hooks are implemented since version 0.82.  They can be used to improve
       the template output.

       hooks executed before the template is generated

       None defined yet.

       hooks executed as replacement

       The predefined hook "COLLAPSE" can be used to remove the	extensive
       listing of some elements.  Usually used with a type of which you	know
       the structure or	which is repeated often.

       hooks for post-processing, after	the data is collected

       None defined yet.

   Typemaps
       Typemaps	are currently only available to	improve	the PERL output.

       Typemaps	for PERL template output

       You can pass &function_name to indicate that the	code reference with
       variable	name $function_name will be called.  Mind the change of	"&"
       into "$".

       When $object_name is provided, then that	object is an interface object,
       which will be called for	the indicated type.

       In case class name (any bareword	will do) is specified, it is shown as
       a call to the "toXML()" instance	method call from some data object of
       the specified class.

       . Example: typemaps with	template

	 $schemas->template(PERL => $some_type,	typemap	=>
	   { $type1 => '&myfunc'   # $myfunc->('WRITER', ...)
	   , $type2 => '$interf'   # $interf->($object,	...)
	   , $type3 => 'My::Class'
	   });

SEE ALSO
       This module is part of XML-Compile distribution version 1.58, built on
       June 27,	2017. Website: http://perl.overmeer.net/xml-compile/

       Please post questions or	ideas to the mailinglist at
       http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/xml-compile .	For
       live contact with other developers, visit the "#xml-compile" channel on
       "irc.perl.org".

LICENSE
       Copyrights 2006-2017 by [Mark Overmeer].	For other contributors see
       ChangeLog.

       This program is free software; you can redistribute it and/or modify it
       under the Artistic license.  See
       http://dev.perl.org/licenses/artistic.html

perl v5.24.1			  2017-06-XML::Compile::Translate::Template(3)

NAME | INHERITANCE | SYNOPSIS | DESCRIPTION | METHODS | DETAILS | SEE ALSO | LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=XML::Compile::Translate::Template&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help