Hi,<br>In <a href="http://rs.tdwg.org/tapir/1.0/schema/tapir.xsd">http://rs.tdwg.org/tapir/1.0/schema/tapir.xsd</a>, the definition of the &lt;custom&gt; element is such that any elements may be included, however the &lt;xsd:any&gt; element definition does not include a &quot;processContents&quot; attribute, in which case a validator will use the default of &quot;strict&quot; which requires that a definition of the contents are available and valid (
i.e. an appropriate schema is available to validate the element content).&nbsp; The relevant XML schema reference is: <a href="http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-any">http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-any
</a><br><br>I&#39;m curious if that was the intent of the TAPIR design?&nbsp; If not, then including an attribute in &lt;xsd:any&gt; of processContents=&quot;lax&quot; (validate if possible but ignore problems) or processContents=&quot;skip&quot; (don&#39;t validate) would enable quick evaluation of TAPIR response documents using xml schema validation tools without requiring that providers explicitly include a schema defining the content of the &lt;custom&gt; element (which seems overly restrictive).&nbsp; An appropriate change could be:
<br><br><span style="font-family: courier new,monospace;">&nbsp; &lt;xsd:element name=&quot;custom&quot;&gt;</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&nbsp; &nbsp; &lt;xsd:annotation&gt;
</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;xsd:documentation&gt;Extension slot for additional information not defined in the schema.&lt;/xsd:documentation&gt;
</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&nbsp;&nbsp;&nbsp; &lt;/xsd:annotation&gt;</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">
&nbsp;&nbsp;&nbsp; &lt;xsd:complexType&gt;</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&nbsp;&nbsp; &nbsp;&nbsp; &lt;xsd:sequence&gt;</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &lt;xsd:any minOccurs=&quot;0&quot; maxOccurs=&quot;unbounded&quot; processContents=&quot;lax&quot; &gt;</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &lt;xsd:annotation&gt;
</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &lt;xsd:documentation&gt;For any custom extension. E.g what security related</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; capabilities does the provider have? Encryption, access restriction,</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; etc.&lt;/xsd:documentation&gt;</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/xsd:annotation&gt;</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/xsd:any&gt;</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&nbsp;&nbsp;&nbsp; &nbsp; &lt;/xsd:sequence&gt;</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">&nbsp;&nbsp;&nbsp; &lt;/xsd:complexType&gt;</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&nbsp; &lt;/xsd:element&gt;</span><br style="font-family: courier new,monospace;">
<br>I do not believe this will change any functionality of TAPIR providers, but it will enable validation of responses such as:<br><br><span style="font-family: courier new,monospace;">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?&gt;
</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&lt;response xmlns=&quot;<a href="http://rs.tdwg.org/tapir/1.0">http://rs.tdwg.org/tapir/1.0</a>&quot; </span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; xmlns:xsi=&quot;<a href="http://www.w3.org/2001/XMLSchema-instance">http://www.w3.org/2001/XMLSchema-instance</a>&quot;</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; xsi:schemaLocation=&quot;<a href="http://rs.tdwg.org/tapir/1.0/schema/tapir.xsd">http://rs.tdwg.org/tapir/1.0/schema/tapir.xsd</a>&quot;&gt;</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">&nbsp; &lt;header&gt;</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&nbsp;&nbsp;&nbsp; &lt;source accesspoint=&quot;<a href="http://lsid.herbimi.info/TapirDotNET/tapir.aspx/herbIMI">
http://lsid.herbimi.info/TapirDotNET/tapir.aspx/herbIMI</a>&quot; </span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sendtime=&quot;2007-11-09T05:15:05&quot;&gt;
</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;software name=&quot;TapirDotNET&quot; version=&quot;0.1 (revision )&quot;/&gt;</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">&nbsp;&nbsp;&nbsp; &lt;/source&gt;</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&nbsp;&nbsp;&nbsp; &lt;destination&gt;<a href="http://128.111.242.127">
128.111.242.127</a>&lt;/destination&gt;</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&nbsp; &nbsp; &lt;custom&gt;&lt;skin&gt;default&lt;/skin&gt;&lt;/custom&gt;</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">&nbsp; &lt;/header&gt;</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">&nbsp; &lt;pong/&gt;</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">&lt;/response&gt;</span><br style="font-family: courier new,monospace;"><br>which does not validate according to the current TAPIR schema.<br><br>Other places in the schema that may be a problem (because processContents is not explicitly stated) are:
<br><br>/xsd:schema/xsd:group[1]/xsd:sequence[1]/xsd:element[1]/xsd:complexType[1]/xsd:choice[1]/xsd:any[1]<br>/xsd:schema/xsd:complexType[34]/xsd:sequence[1]<br><br><br>regards,<br>&nbsp; Dave V.<br><br>