<div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">Hi,</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">Having an issue with trying to process xml.</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">Test code is:</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div class="gmail_default"><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">#!/usr/bin/perl</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1"><br></font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">use strict;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">use warnings;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1"><br></font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">use XML::Compile::Cache;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">use XML::Compile::Util qw(pack_type);</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">use Data::Dumper;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">use Log::Report mode =&gt; &#39;DEBUG&#39;;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1"><br></font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">my $schemas = XML::Compile::Cache-&gt;new( [glob &quot;testxsd/*.xsd&quot;], &#39;allow_undeclared&#39; =&gt; 1 );</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">$schemas-&gt;declare( READER =&gt; pack_type( &#39;urn:ietf:params:xml:ns:epp-1.0&#39;, &#39;epp&#39; ) );</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">$schemas-&gt;compileAll;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1"><br></font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">my $doc = XML::LibXML-&gt;new-&gt;parse_string(&lt;&lt;&quot;END_XML&quot;);</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">&lt;epp xmlns=&quot;urn:ietf:params:xml:ns:epp-1.0&quot;&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">  &lt;response&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">    &lt;result code=&quot;1000&quot;&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">      &lt;msg&gt;Command completed successfully&lt;/msg&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">    &lt;/result&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">    &lt;resData&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">      &lt;domain:chkData xmlns:domain=&quot;urn:ietf:params:xml:ns:domain-1.0&quot;&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">        &lt;domain:cd&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">          &lt;domain:name avail=&quot;1&quot;&gt;1980s.game&lt;/domain:name&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">        &lt;/domain:cd&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">      &lt;/domain:chkData&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">    &lt;/resData&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">    &lt;extension&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">      &lt;fee:chkData xmlns:fee=&quot;urn:ietf:params:xml:ns:fee-0.7&quot;&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">        &lt;fee:cd&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">          &lt;fee:name&gt;1980s.game&lt;/fee:name&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">          &lt;fee:currency&gt;USD&lt;/fee:currency&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">          &lt;fee:command&gt;create&lt;/fee:command&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">          &lt;fee:period unit=&quot;y&quot;&gt;2&lt;/fee:period&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">          &lt;fee:class&gt;standard&lt;/fee:class&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">          &lt;fee:fee grace-period=&quot;P0D&quot; description=&quot;Domain registration (per year)&quot; refundable=&quot;1&quot;&gt;600.00&lt;/fee:fee&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">        &lt;/fee:cd&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">      &lt;/fee:chkData&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">    &lt;/extension&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">    &lt;trID&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">      &lt;clTRID&gt;4d19dd959727a0f3e1225df2ee9a55e4&lt;/clTRID&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">      &lt;svTRID&gt;eaefc4f9dd5e9c43288308348a21c30b&lt;/svTRID&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">    &lt;/trID&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">  &lt;/response&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">&lt;/epp&gt;</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">END_XML</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1"><br></font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">my $struct = $schemas-&gt;reader(pack_type(&#39;urn:ietf:params:xml:ns:epp-1.0&#39;,&#39;epp&#39;))-&gt;( $doc-&gt;documentElement );</font></div><div class="gmail_default"><font face="arial, helvetica, sans-serif" size="1">print Dumper($struct);</font></div><div style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small">Running the script presents the following output:</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><div class="gmail_default"><font size="1">trace: cache parsed file /root/craig/EPP/testxsd/domain-1.0.xsd-1490007452-14154</font></div><div class="gmail_default"><font size="1">trace: parsing XML from file testxsd/domain-1.0.xsd</font></div><div class="gmail_default"><font size="1">trace: register prefix domain for &#39;urn:ietf:params:xml:ns:domain-1.0&#39;</font></div><div class="gmail_default"><font size="1">trace: register prefix host for &#39;urn:ietf:params:xml:ns:host-1.0&#39;</font></div><div class="gmail_default"><font size="1">trace: register prefix epp for &#39;urn:ietf:params:xml:ns:epp-1.0&#39;</font></div><div class="gmail_default"><font size="1">trace: register prefix eppcom for &#39;urn:ietf:params:xml:ns:eppcom-1.0&#39;</font></div><div class="gmail_default"><font size="1">trace: cache parsed file /root/craig/EPP/testxsd/epp-1.0.xsd-1490007452-12773</font></div><div class="gmail_default"><font size="1">trace: parsing XML from file testxsd/epp-1.0.xsd</font></div><div class="gmail_default"><font size="1">trace: cache parsed file /root/craig/EPP/testxsd/eppcom-1.0.xsd-1490007452-2531</font></div><div class="gmail_default"><font size="1">trace: parsing XML from file testxsd/eppcom-1.0.xsd</font></div><div class="gmail_default"><font size="1">trace: cache parsed file /root/craig/EPP/testxsd/fee-0.7.xsd-1490007452-8524</font></div><div class="gmail_default"><font size="1">trace: parsing XML from file testxsd/fee-0.7.xsd</font></div><div class="gmail_default"><font size="1">trace: register prefix fee for &#39;urn:ietf:params:xml:ns:fee-0.7&#39;</font></div><div class="gmail_default"><font size="1">trace: declare {urn:ietf:params:xml:ns:epp-1.0}epp READER</font></div><div class="gmail_default"><font size="1">trace: schema compile READER for {urn:ietf:params:xml:ns:epp-1.0}epp</font></div><div class="gmail_default"><font size="1">trace: using preparsed XML node &lt;{urn:ietf:params:xml:ns:epp-1.0}epp&gt;</font></div><div class="gmail_default"><font size="1">trace: schema compile READER for {urn:ietf:params:xml:ns:domain-1.0}chkData</font></div><div class="gmail_default"><font size="1">trace: auto-convert known type for &#39;any&#39;: {urn:ietf:params:xml:ns:domain-1.0}chkData</font></div><div class="gmail_default"><font size="1">trace: using preparsed XML node &lt;{urn:ietf:params:xml:ns:domain-1.0}chkData&gt;</font></div><div class="gmail_default"><font size="1">trace: schema compile READER for {urn:ietf:params:xml:ns:fee-0.7}chkData</font></div><div class="gmail_default"><font size="1">trace: auto-convert known type for &#39;any&#39;: {urn:ietf:params:xml:ns:fee-0.7}chkData</font></div><div class="gmail_default"><font size="1">trace: using preparsed XML node &lt;{urn:ietf:params:xml:ns:fee-0.7}chkData&gt;</font></div><div class="gmail_default"><font size="1">error: element `{urn:ietf:params:xml:ns:fee-0.7}fee&#39; not processed for fee:chkData/cd at /*/*/*[3]/fee:chkData/fee:cd/fee:fee</font></div><div class="gmail_default"><font size="1"> at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 585</font></div><div class="gmail_default"><font size="1">Log::Report::error(&quot;Log::Report::Message=HASH(0x3291f38)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 585</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::_not_processed(&quot;XML::LibXML::Element=SCALAR(0x334ff08)&quot;, &quot;fee:chkData/cd&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 634</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x33652b8)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 502</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x33652b8)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 476</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x33652b8)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 456</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x32bc268)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 134</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x32bc268)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 632</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x32bc268)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 502</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x32bc268)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 93</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::LibXML::Element=SCALAR(0x3346390)&quot;) at /usr/local/share/perl5/XML/Compile/Cache.pm line 596</font></div><div class="gmail_default"><font size="1">XML::Compile::Cache::_convertAnyTyped(&quot;XML::Compile::Cache=HASH(0x308fdc0)&quot;, &quot;{urn:ietf:params:xml:ns:fee-0.7}chkData&quot;, &quot;ARRAY(0x3360ab0)&quot;, &quot;epp:epp/response/extension#any&quot;, &quot;XML::Compile::Translate::Reader=HASH(0x30f63b8)&quot;) at /usr/local/share/perl5/XML/Compile/Cache.pm line 96</font></div><div class="gmail_default"><font size="1">XML::Compile::Cache::__ANON__(&quot;{urn:ietf:params:xml:ns:fee-0.7}chkData&quot;, &quot;ARRAY(0x3360ab0)&quot;, &quot;epp:epp/response/extension#any&quot;, &quot;XML::Compile::Translate::Reader=HASH(0x30f63b8)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 1049</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x30f6448)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 133</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x30f6448)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 632</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x30f6448)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 502</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x30f6448)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 418</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x32436e8)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 145</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x32436e8)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 632</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x32436e8)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 502</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x32436e8)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 476</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x32436e8)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 412</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x2169f40)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 188</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x2169f40)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 632</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x2169f40)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 502</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::Compile::Iterator=HASH(0x2169f40)&quot;) at /usr/local/share/perl5/XML/Compile/Translate/Reader.pm line 93</font></div><div class="gmail_default"><font size="1">XML::Compile::Translate::Reader::__ANON__(&quot;XML::LibXML::Element=SCALAR(0x30f38d0)&quot;) at <a href="http://testnew.pl">testnew.pl</a> line 49</font></div><div class="gmail_default"><font size="1"><br></font></div><div class="gmail_default">The fee Schema is attached, if anybody could tell me what I&#39;m doing wrong that would be amazing.</div><div class="gmail_default"><br></div><div class="gmail_default">Cheers.</div><div style="font-size:small"><br></div></div><div><div class="gmail_signature"><div dir="ltr"><div dir="ltr">Craig Marchant<br></div></div></div></div>
</div>