# DOM and XOM interfaces

In the DOM interface (package `net.sf.saxon.dom`) Saxon now has compile-time dependencies on methods that are only available in DOM level 3, that is, in JDK 1.5 or JAXP 1.3. This puts the DOM package in the same situation as the XPath package: if you want to use Saxon's DOM interface, you need to use JDK 1.5 or the JAXP 1.3 package installed over JDK 1.4.

The Saxon code as issued is compiled under JDK 1.4, but using the JAXP 1.3 versions of the JAXP and DOM interfaces. If you want to recompile the Saxon code (for example to apply patches) then you can either recompile it under JDK 1.5 (in which case it will only run under JDK 1.5), or you can recompile it under JDK 1.4, in which case you will need to install the JAXP 1.3 versions of the `dom.jar` and `jaxp-api.jar` JAR files in `%java%/jre/lib/endorsed` to ensure that they are chosen in preference to the versions packaged with the JDK.

In the XOM interface, IDREF attributes are now recognized, so the `idref()` function now works correctly.

Next