Difference between revisions of "PrF UG meta metaclass create"

From Protege Wiki
Jump to: navigation, search
 
(One intermediate revision by the same user not shown)
Line 2: Line 2:
 
== Creating a Metaclass ==
 
== Creating a Metaclass ==
  
{{PrF_UG_TOC_meta}}<div id='prf_ug'>
+
<noinclude>{{PrF_UG_TOC_meta}}<div id='prf_ug'></noinclude>
  
 
Despite the power of metaclasses, their basic interface is very simple.
 
Despite the power of metaclasses, their basic interface is very simple.
Line 25: Line 25:
 
     is subordinate to <b>:CLASS</b>.
 
     is subordinate to <b>:CLASS</b>.
 
     </p>
 
     </p>
     <div>[[Image:PrF_UG_meta_select_standard_class.png|
+
     <div>[[Image:PrF_UG_meta_select_standard_class.png|frame|none|
           metaclasses_select_standard_class]]</div>
+
           Class Browser, ":STANDARD-CLASS" selected]]</div>
  
 
   <li><p>
 
   <li><p>
 
     Click the <b>Create Class</b>
 
     Click the <b>Create Class</b>
     [[Image:PrF_UG_classes_class.create.gif|classes_class.create]] button,
+
     ([[Image:PrF_UG_classes_class.create.gif|classes_class.create]]) button,
 
     at the right of the Class Browser.
 
     at the right of the Class Browser.
 
     The new class will be added under the highlighted class.
 
     The new class will be added under the highlighted class.
Line 36: Line 36:
 
     including any template slots.
 
     including any template slots.
 
     </p>
 
     </p>
     <div>[[Image:PrF_UG_meta_create_wines_metaclass.png|
+
     <div>[[Image:PrF_UG_meta_create_wines_metaclass.png|frame|none|
           metaclasses_create_wines_metaclass]]</div>
+
           Class Browser, "wines_Class_0" selected]]</div>
  
 
   <li><p>
 
   <li><p>
Line 50: Line 50:
 
     there is an additional slot named <i>best_wineries</i>.
 
     there is an additional slot named <i>best_wineries</i>.
 
     </p>
 
     </p>
     <div>[[Image:PrF_UG_meta_metaclass_editor.png|
+
     <div>[[Image:PrF_UG_meta_metaclass_editor.png|frame|none|
           metaclasses_metaclass_editor]]</div>
+
           wines_Class_0 instance dialog]]</div>
 
</ol>
 
</ol>
  
  
</div>
+
<noinclude></div></noinclude>

Latest revision as of 18:26, November 13, 2008

Creating a Metaclass


Protege-Frames User's Guide
Metaclasses
Understanding Metaclasses
Example: Creating and Using a Metaclass
Looking at :STANDARD- CLASS
Creating a Metaclass
Creating a Class Using a Metaclass
Changing the Metaclass of a Class
Changing the Metaclass of Subclasses
Setting the Default Metaclass
Customizing the Class or Slot Editor
Understanding Slot Metaclasses
Creating a Slot Metaclass
Changing the Slot Metaclass of a Slot
Creating a Subslot Using a Slot Metaclass
Changing the Slot Metaclass of Subslots
Setting the Default Slot Metaclass
Glossary, Editing Help

Despite the power of metaclasses, their basic interface is very simple. Creating a metaclass is almost identical to creating a class. You simply have to make sure that the class is created subordinate to :CLASS. Every metaclass is subordinate to :CLASS. By default, every class subordinate to :CLASS is a metaclass, unless you change it.

Most often, it is desirable to create a metaclass subordinate to :STANDARD-CLASS, so that the classes created using the metaclass will have the various properties defined by the :STANDARD-CLASS slots. Without these properties, you cannot name the class or add template slots.

To create a new class as a metaclass:

  1. Click on the desired superclass in the Class Browser. The selected superclass must itself be a metaclass. As mentioned above, this will be true only if the selected superclass is subordinate to :CLASS.

    Class Browser, ":STANDARD-CLASS" selected
  2. Click the Create Class (classes_class.create) button, at the right of the Class Browser. The new class will be added under the highlighted class. It will inherit the properties of the selected metaclass, including any template slots.

    Class Browser, "wines_Class_0" selected
  3. Use the Class Editor to name the class, create constraints, and attach and edit template slots. Remember that the template slots you attach to the metaclass appear as entry fields on the Class Editor for the classes you create using this metaclass. For example, the :NAME slot for :STANDARD-CLASS becomes the Name entry field when you create a class. In the Wineries example, there is an additional slot named best_wineries.

    wines_Class_0 instance dialog