Renee Baecker > TypeLibrary-FromXSD-0.03 > TypeLibrary::FromXSD::Element

Download:
TypeLibrary-FromXSD-0.03.tar.gz

Dependencies

Annotate this POD

Website

View/Report Bugs
Module Version: 0.03   Source  

NAME ^

TypeLibrary::FromXSD::Element - Create a single type decleration from a simpleType xsd element

VERSION ^

version 0.03

SYNOPSIS ^

  use TypeLibrary::FromXSD::Element;
  use XML::LibXML;

  my $xsd  = 'test.xsd';
  my $tree = XML::LibXML->new->parse_file( $xsd )->getDocumentElement;

  my @nodes = $tree->getElementsByTagName( 'xs:simpleType' );
  
  for my $xsd_node ( @nodes ) {
      my $element = TypeLibrary::FromXSD::Element->new( $xsd_node );
      
      # to provide additional validation methods
      # my $element = TypeLibrary::FromXSD::Element->new( $xsd_node, validate => { date => 'validate_date' } );
  
      print $element->type;
  }

METHODS ^

new

Create a Element object, in contrast to other classes, this constructor wants a single parameter - a simpleType node.

This class gets all needed attributes and subnodes to create the type declaration.

type

prints the type declaration

NOTE ^

Please note that this distribution does not support all combinations of basetypes (xs:string, xs:decimal, ...) and other restrictions (xs:minLength, xs:maxLength, ...) yet.

AUTHOR ^

Renee Baecker <github@renee-baecker.de>

COPYRIGHT AND LICENSE ^

This software is Copyright (c) 2013 by Renee Baecker.

This is free software, licensed under:

  The Artistic License 2.0 (GPL Compatible)
syntax highlighting: