<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://www.infopathdev.com:443/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>General</title><link>https://www.infopathdev.com:443/forums/41.aspx</link><description>If you're not sure where to ask your question, ask it here. If necessary, our moderators will make sure it gets classified in the correct board.</description><dc:language>en</dc:language><generator>CommunityServer 2007 SP3 (Build: 31118.962)</generator><item><title>InfoPath 2007:  Form Template and Abstract Complex Types (XSD)</title><link>https://www.infopathdev.com:443/forums/thread/80271.aspx</link><pubDate>Fri, 06 Jul 2012 14:36:30 GMT</pubDate><guid isPermaLink="false">033a2e2d-04e2-4a9d-be01-a4634161eefd:80271</guid><dc:creator>senecalakemonster</dc:creator><slash:comments>0</slash:comments><comments>https://www.infopathdev.com:443/forums/thread/80271.aspx</comments><wfw:commentRss>https://www.infopathdev.com:443/forums/commentrss.aspx?SectionID=41&amp;PostID=80271</wfw:commentRss><description>I am using InfoPath 2007, and I have several XML schema documents, one of which defines a complexType with the abstract attribute set to true, e.g.:

&lt;span style="font-family:courier new;"&gt;&lt;font face="Lucida Console" size="2"&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;xs:complexType name=&amp;quot;someType&amp;quot; abstract=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt; &amp;#160;&amp;lt;xs:attribute name=&amp;quot;id&amp;quot; type=&amp;quot;xs:int&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt; &amp;#160;&amp;lt;xs:attribute name=&amp;quot;version&amp;quot; type=&amp;quot;xs:positiveInteger&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt; &amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/font&gt;&lt;/span&gt;

The remaining schema documents contain derived types based on this abstract type, e.g.:

&lt;span style="font-family:courier new;"&gt;&lt;font face="Lucida Console" size="2"&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;xs:complexType name=&amp;quot;aDerivedType&amp;quot; abstract=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt; &amp;#160;&amp;lt;xs:complexContent&amp;gt;&lt;br /&gt;
&amp;#160;&amp;#160;&amp;lt;xs:restriction base=&amp;quot;ns:someType&amp;quot;&amp;gt;&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;lt;xs:attribute name=&amp;quot;id&amp;quot; type=&amp;quot;xs:int&amp;quot; fixed=&amp;quot;1&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;lt;xs:attribute name=&amp;quot;version&amp;quot; type=&amp;quot;xs:positiveInteger&amp;quot; fixed=&amp;quot;1&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;#160;&amp;#160;&amp;lt;/xs:restriction&amp;gt;&lt;br /&gt;
&amp;lt;/xs:complexContent&amp;gt;&lt;br /&gt;
&amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;&lt;br /&gt;

&amp;lt;xs:complexType name=&amp;quot;anotherDerivedType&amp;quot;&amp;gt;&lt;br /&gt; &amp;#160;&amp;lt;xs:complexContent&amp;gt;&lt;br /&gt;
&amp;#160;&amp;#160;&amp;lt;xs:extension base=&amp;quot;aDerivedType&amp;quot;&amp;gt;&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;lt;xs:element name=&amp;quot;name&amp;quot; type=&amp;quot;xs:string&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;#160;&amp;#160;&amp;lt;/xs:extension&amp;gt;&lt;br /&gt;
&amp;lt;/xs:complexContent&amp;gt;&lt;br /&gt;
&amp;lt;/xs:complexType&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/font&gt;&lt;/span&gt;

I also have a master schema document that possesses an element of the original abstract complex type (someType).&lt;font face="Lucida Console" size="2"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/font&gt;

When I design a form template based on the master schema document, InfoPath alerts me that the schema information is incomplete and that the abstract complex type (someType) needs to be specialized.  I then add the schema documents that contain the specializations to the data source.  My problem is that when I then create a section with controls and save the form template, InfoPath cannot open the resulting form, giving me the error that the abstract element is not allowed in an instance document.&lt;font face="Lucida Console" size="2"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/font&gt;

Is there some basic error that I’m making when I design the form template?  Maybe the schema documents aren’t quite right?  I’ve found that even if I don’t drag anything from my data source into the design area and save the (empty) form template that InfoPath gives the same error when I try to open the empty form.&lt;font face="Lucida Console" size="2"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/font&gt;

The MSDN website (http://msdn.microsoft.com/en-us/library/bb251017(v=office.12).aspx) indicates that abstract complex types are supported in InfoPath 2007, even giving an example (specialization of an address type).  Is this in fact the case?&lt;font face="Lucida Console" size="2"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/font&gt;

(Please note that my example XSD is somewhat contrived, but hopefully it serves to explain my problem.)</description></item></channel></rss>