Mapping of a BOM created from a Java XOM

When you create a BOM from the XOM, Rule Designer processes the Java™ compiled classes into business elements.

The following table describes the default mapping for business elements originating from a Java XOM when you keep the option Load getters and setters as attributes selected in the New BOM Entry wizard.

Table 1. Business elements originating from a Java XOM
Java XOM element Becomes element in the BOM...
Nongeneric public class. Class with the same name.

Class that implements the java.util.Collection interface.

For example:

MyCollection implements java.util.Collection

Class with a collection domain to be recognized as a collection when verbalized.

For example:

public class MyCollection implements java.util.Collection {
     domain 0, * ;
     }
Public constructor. Constructor with the same parameters.
Public attribute. Attribute with the same name and return type.
Final attribute. Read-only attribute with the same name and return type.

Public static final attributes whose types are the current class.

For example:

public class Color {
private Color(String name) {…}
public static final Color red = new Color("red");
public static final Color blue = new Color("blue");
public static final Color green = new Color("green");
}

Enumerated domain of static references of the class.

For example:

public class Color {
domain { static red, static blue, static green }
public static final readonly Color red;
public static final readonly Color blue;
public static final readonly Color green;
}

Public method that does not follow the JavaBeans convention for property accessors (void setFoo(PropertyType value) and PropertyType getFoo()).

For example:

public interface Customer
{
public boolean register(java.sql.Connection db);
}

Method with equivalent parameters.

For example:

public interface Customer
{
public abstract boolean register(java.sql.Connection arg);
}

Public method that follows the JavaBeans convention, with a get method and no set method.

For example:

public interface Customer
{
public int getAge();
}

Read-only attribute.

For example:

public interface Customer
{
public readonly int age;
}

Public method that follows the JavaBeans convention, with only a set method.

For example:

public interface Customer {
public void setBirthDate(Date date);
}

Write-only attribute.

For example:

public interface Customer
{
public writeonly java.util.Date birthDate;
}

Public method that follows the JavaBeans convention, with both a get method and a set method.

For example:

public interface Customer {
public String getName();
public void setName(String name);
}

Attribute.

For example:

public interface Customer
{
public java.lang.String name;
}

Business elements that originate from a dynamic XOM are processed differently. For information about elements that originate from a dynamic XOM, refer to Designing a BOM for an XML model.