Figure 2 Component Integration Technologies
| Feature | XML | COM | Java | CORBA | 
| In-memory interoperation | None | Object references are C++-style VPTRs | Virtual machine-specific  object representation, standard code representation | None | 
| Source code interoperation | W3C DOM (recommendation only), SAX, and so on | The COM API | The Java programming language | The POA and ORB object interfaces | 
| Text-based type information interoperation | DTDs (legacy) XML Schemas/XML Data (future) | COM IDL | The Java programming language | OMG IDL | 
| Binary type information interoperation | Same as text-based type information | Type libraries | .class files | None | 
| API-level type information interoperation | None for DTDs, DTD replacement will just be XML, so any XML parser will work | LoadTypeLib, ITypeLib, and so on | java.lang.reflect | Interface repository | 
| Wire interoperation | XML (over HTTP, raw TCP, or message-based protocols) | DCOM (DCE-based) over raw TCP, SPX, and so on | RMI/JRMP, RMI/IIOP, or RMI/HTTP | IIOP over raw TCP |