Ok, 
Although you still cannot combine join and joined-sublass becasue it is prevented by the DTD,  I have a workaround for this problem using <join> and <subclass>.
Basically, you combine the <join> and <subclass> with a discriminator, but "fake" the discriminator with a 
formula attribute.
So now, your hibernate mapping would look as follows:
(pay special attention to the <class> <discriminator> element and the discriminator attributes of the subclasses)
Code:
<hibernate-mapping> 
   <class name="com.infozeal.tools.test.hibernate.Events" table="izdv.events"> 
      <id name="id"> 
         <generator class="increment"/> 
      </id> 
      <discriminator>
         <formula>
              CASE
                    WHEN (SELECT COUNT(*) FROM izdv.conf_event WHERE 
      izdv.conf_event.id = id) > 0 THEN 'CONFERENCE'
                   ELSE 'NETWORKING'
                   END
         </formula>
      </discriminator>
      <property name="eventName" column="EVENT_NAME"/> 
      
      <join table="IZDV.subevents"> 
         <key column="id"/> 
         <property name="eName" column="ename"/> 
      </join>
      <subclass name="com.infozeal.tools.test.hibernate.ConferenceEvent" discriminator-value="CONFERENCE">
         <join table="izdv.conf_event">
            <key column="id"/>
            <property name="seats"/>
         </join>
      <subclass> 
      <subclass name="com.infozeal.tools.test.hibernate.NetworkingEvent" discriminator-value="NETWORKING">
         <join table="izdv.net_event">
            <key column="id"/>
            <property name="foodName"/>
         </join>
      <subclass> 
</class> 
</hibernate-mapping>