

![0_image_0.png](0_image_0.png)

the pattern wizard asks the user to select the columns and rows that contain populated data. In this example the pattern creates a restriction on each cell stating that all cells have a relationship, called *hasNucleation*, to an instance of the class nucleation. This pattern can be expressed in OPPL 2 with the syntax shown in Figure 4.

?cell:CLASS,
?nucleation:CLASS
BEGIN ADD ?cell SubClassOf hasNucleation some ?nucleation END;

## Fig. 4. Oppl 2 Pattern For Cells And Nucleation

There are two variables in the pattern, ?cell and ?nucleation. These variable are mapped to column A and B respectively. The pattern is to be instantiated using data from rows one to six that must be specified in the Wizard. The next step involves validating the pattern, given that *Proximal tubule epithelial* cell is unknown by the validator, the user is given the option to assign a new URI for this concept. The final step generated the full OPPL script for applying this pattern. The Manchester OWL syntax generated for row one is shown in Figure 5. A complete grammar for the OPPL 2 syntax is available here8.

8http://oppl2.sourceforge.net