Code:
<hibernate-mapping>
<class name="Company" table="company">
<id name="cnpj" column="cnpj">
<generator class="assigned"/>
</id>
<property name="name" column="name"/>
<property name="address" column="address"/>
<one-to-one name="monthlyFee" class="MonthlyFee"
constrained="false" outer-join="false"/>
</class>
</hibernate-mapping>
<hibernate-mapping>
<class name="MonthlyFee" table="monthly_fee">
<id name="cnpj" column="cnpj">
<generator class="foreign"/>
</id>
<one-to-one name="company" class="Company" constrained="true" outer-join="auto"/>
<property name="value" column="valor"/>
<property name="dtPayment" column="date_m"/>
</class>
</hibernate-mapping>
Key one-to-one does not exist. the DTD is an essential part of the doc.