For example:
I have my first main.xsd that I import in my modeler:
<?xml version="1.0" encoding="utf-8" ?>
<xs:schema xmlns:ns="http://www.url.nl/ns1" targetNamespace="http://schemas.xmlsoap.org/soap/envelope" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
    <xs:import schemaLocation="GetCase.xsd" namespace="http://www.url.nl/ns1" />
    <xs:element name="Envelope">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="Body" type="ns:ns" />
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>
This imports this one:
<?xml version="1.0" encoding="utf-8" ?>
<xs:schema xmlns:ins="http://www.url.nl/ns2" targetNamespace="http://www.url.nl/ns1" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
    <xs:import schemaLocation="getResult.xsd" namespace="http://www.url.nl/ns2" />
    <xs:complexType name="ns">
        <xs:sequence>
            <xs:element name="getResponse">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="getResult" type="ins:insp" />
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
</xs:schema>
and that one imports another one...
It takes a bit of fiddling to get it to work. Make sure you add schemaLocation="sub.xsd" in your main.xsd. Also notice that the type of the main.xsd matches the complex type of the sub.
Hopefully this helps