The core project for the JSR-88 plugin plug-in consists of three packages.
The .core package contains only the default plugin class used for any plug-in project in eclipse.
The .core.model package implements the interfaces declared in the javax.enterprise.deploy.model package in the specification. These interfaces include DDBean, DDBeanRoot, DeployableObject, and J2eeApplicationObject interfaces.
The entry point in the model is to feed a DeployableObject a properly packaged deployable file (such as a .war file). The model will then unpackage it, turning each descriptor file it finds into a DDBean or DDBeanRoot object as required.
The underlying DDBean implementation uses Dom4j
The .core.utils package is a group of classes concerned with utility functionality for the plug-in. The StringProperties and PreferenceStoreUtil classes are there primarily to deal with the ui's ability to store plug-in preferences, and implement how it goes about doing that. There are jar utility functions, which is primarily concerned with taking a given vendor jar and getting the jsr-88 required objects and classes from them. (Ex: DeploymentFactory, DeploymentManager, etc).
The ModelUtils class is given the responsibility of taking a list of xpaths provided by the vendor and turning them into a heirarchical CBeanXPaths object, which can then be used to visually display these nested and heirarchical xml strings to the user.