Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 652aebcf

Von Johannes Grassler vor etwa 1 Jahr hinzugefügt

  • ID 652aebcf4860d72bba8ec400765b679085b057f3
  • Vorgänger 06d29e36
  • Nachfolger ea01c174

XMLInvoice: Formaterkennung umgebaut

  • Formaterkennung nun in den Unterklassen von SL::XMLInvoice
  • Interface fuer Subklassen um check_signature() und supported() ergaenzt.
  • Lade Subklassen mit Module::Load

Unterschiede anzeigen:

SL/XMLInvoice/UBL.pm
54 54

  
55 55
=cut
56 56

  
57
# XML XPath expression for
57
sub supported {
58
  my @supported = ( "Oasis Universal Business Language (UBL) invoice version 2 (urn:oasis:names:specification:ubl:schema:xsd:Invoice-2)" );
59
  return @supported;
60
}
61

  
62
sub check_signature {
63
  my ($self, $dom) = @_;
64

  
65
  my $rootnode = $dom->documentElement;
66

  
67
  foreach my $attr ( $rootnode->attributes ) {
68
    if ( $attr->getData =~ m/urn:oasis:names:specification:ubl:schema:xsd:Invoice-2/ ) {
69
      return 1;
70
      }
71
    }
72

  
73
  return 0;
74
}
75

  
76
# XML XPath expressions for scalar metadata
58 77
sub scalar_xpaths {
59 78
  return {
60 79
    currency => '//cbc:DocumentCurrencyCode',
......
72 91
  };
73 92
}
74 93

  
94
# XML XPath expressions for parsing bill items
75 95
sub item_xpaths {
76 96
  return {
77 97
    'currency' => './cbc:LineExtensionAmount[attribute::currencyID]',

Auch abrufbar als: Unified diff