I have a rng file that is redefining patterns in a core rng file.  So, in the 
included rng I have 

 <define name="att.res">
    <choice>
      <value type="integer">75</value>
      <value type="integer">200</value>
      <value type="integer">300</value>
    </choice>
  </define>


and in the including rng I have 

<include href="core.rng">
        <define name="att.res">
            <choice>
                <value type="integer">75</value>
                <value type="integer">300</value>
            </choice>
        </define>
        
</include>

When I run trang conversion on including rng file and generate XSD, the output 
is

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
elementFormDefault="qualified">
  <xs:include schemaLocation="core.xsd"/>
  <xs:simpleType name="att.res">
    <xs:restriction base="xs:integer">
      <xs:enumeration value="75"/>
      <xs:enumeration value="300"/>
    </xs:restriction>
  </xs:simpleType>
</xs:schema>


To me, this XSD should be invalid, because there are essentially two simpleType 
definitions with the same name.  But when I then run validation inside Oxygen 
10.1 against an instance with the generated schema, it parses just fine.  Is 
there something about this that I don't understand?  Is the schema really 
valid, or is the validation not parsing the schema properly.

Also, if I wanted to output in this example to be one XSD schema--essentially 
printing out the resolved, flat schema--is there any way to do that?

Thanks much.



Reply via email to