Khronos Public Bugzilla
Bug 191 - Texturing in 1.5 causes validation errors in Instance Documents
Texturing in 1.5 causes validation errors in Instance Documents
Status: NEW
Product: COLLADA
Classification: Unclassified
Component: Schema
1.5.0
All All
: P3 normal
: ---
Assigned To: Fabrice Robinet
COLLADA Work Group email alias
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2009-06-29 08:58 PDT by Christoph Nenning
Modified: 2014-01-07 10:23 PST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Christoph Nenning 2009-06-29 08:58:59 PDT
In COLLADA 1.5 fx_sampler2D_type is derived from fx_sampler_type. fx_sampler_type has a child element <instance_image> which is of type instance_image_type. As fx_sampler2D_type inherits fx_sampler_type via xs:restriction, it does NOT inherit <instance_image> as child. If inheritance would be done via xs:extension the child would be inherited.

Example:

      <effect id="blinn3-fx">
         <profile_COMMON>
            <newparam sid="file2-sampler">
               <sampler2D>
                  <instance_image url="#image-id" />
               </sampler2D>
            </newparam>
            <technique sid="common">

              ...

            </technique>
         </profile_COMMON>
      </effect>

Altova XML spy gives the following validation error:

The content of complex type definition 'fx_sampler2D_type' is 'empty'. This forbids any content for element <sampler2D>.
Error location: COLLADA / library_effects / effect / profile_COMMON / newparam / sampler2D

Details:
cvc-complex-type.2.1: The content of complex type definition 'fx_sampler2D_type' is 'empty'. This forbids any content for element <sampler2D>.
cvc-elt.5.2.1: The element <sampler2D> is not valid with respect to the actual type definition 'fx_sampler2D_type'.



Moreover instance_image_type inherits instance_with_extra_type via xs:restriction, too. That means instance_image_type does not inherit the child element of instance_with_extra_type.