Screen Reference Index
Plato Documentation  version 0.9, 2014.02.14
 Documentation Index    Building Object Classes
Introduction to Plato
The Basics
Plato's Display
Building Object Classes
Creating and Using Objects
Importing Objects
Creating and Managing Cross References
Creating and Managing Databases
Creating and Managing Class Libraries
Creating and Managing Markup
Markup: Document Creation
Markup: Data Import
Markup: Autoenumeration
Markup: Cross Reference Maps
Markup: Database Export
Markup: Class Library Export
Creating and Managing Scripts
External Integration
Cross References
Multi-dimensional Categories
Setting Up
Configuration: System
Configuration: Database
Configuration: Folders
Screen Reference
Properties Reference
Object Classes
Each Plato object class is defined by its name, a set of user-definable attributes, and the action associated with it. Together these elements constitute the object class definition. Object classes are always containers of data. However, in addition to this, they may also be references to other objects or files that are external to Plato databases.

Object Class Properties
Each object claass has a small set of basic, common properties: ID, name, description,
class name A short, descriptive name for the object class that quickly identify any object of its type. Good examples would be "journal," "book," "recipe," and the like. This is a mandatory field. Note that any space characters in your name will automatically be converted to underscore characters by Plato.
class description A longer description of the object class. Since this a sortable field, it can be used to globally categorize object classes, or simply to provide an expanded description of the object if the object name itself might seem ambiguous when compared to all the other object class names.
class action type Action types define the behavior of the object. For descriptions of available actions, \textcolor{blue}{see \ref{objclass:actions}}
description template Allows you to build a description in a tailored way from object class attributes. In this template, any characters may be used. Numeric characters will be interpreted to represent a field by its position in the attribute list. For example, the following attributes:

  author= James Madison
  title = Years of our Days
  publisher = Machree and Sons
  year = 1924

And this description template:

  2, 1 (4)

Will result in this description:

  Years of Our Days, James Madison (1924)

If you leave the description template blank Plato will use the contents of the first field to build the description.

Special use of backslash (/) character

If you preceed a number with a backslash the number will be ignored in the description template. Instead, the number will be used to specify which field will receive the text from imported lists.
class note format Defines the format of the note field. Choices are 'Rich text (RTF)' or 'plain text'. If you set a note field to plain text, RTF enhancements will not be available for the note. For object classes that have special use by Plato, plain text is mandatory. These object classes are: lists,
class external editor If the object class action is to load an external file, this field allows you to select a default editor with which to load the file.
class field attributes Each object class has field attributes that are user definable. This attribute is a list of these fields in the order they will appear when they are displayed. To add, edit, or delete field attributes, click the 'add fields' button. \textcolor{blue}{See \ref{objclass:actions}}
class category Categories allow you to better organize large libraries of object classes
Object Actions
Actions indicates how the object interacts with other objects in defined ways. Here is a bief list of actions and their defined interactions:
  • Open as folder Object references to other objects and contains a list of the references
  • Open as listObject references to other objects and contains a list of the references (see the more detailed descxription below for the differences between "open as list" and "open as folder")
  • Launch file with editor Object references a file external to Plato and to the application that loads the file.
  • Launch image Object references an image external to Plato
  • Launch web page Object references a web page
  • List data in notes field Object is a list of terms, phrases, or words assembled for study
  • Data only Object contains discrete data with no defined relations to other objects outside the object class
  • Bookmark Object is an internal reference to a defined portion of a note in another object
  • Family of categories Object is a member of a defined category
  • Multi-dimensional clusters Object contains references to a set of objects that are related in multiple dimensions
  • Run script Object contains a script
  • xref display settings Object contains a defined set of xref display settings
  • xref map settings Object contains a defined set of zref map settings
What follows are more detailed descriptions of each object action.

launch file with editor Objects of this type have an associated application and a filename, and when clicked will open the file with the application.
open as folder Objects of this type should be thought of as file folders, and contain other objects. When you click on them, they "open" to reveal the objects they contain. "Open as Folder" objects can appear in the database tree pane.

open as list Objects of this type are the same as "open as folder" objects, but they do not appear in the database tree pane. "Open as list" objects are useful for building nested documents.

data only Data only objects contain the usual properies and text, but beyond this do not "do" anything else.
execute script Execute script objects
launch (no file check)
launch (use file spec)
list data in notes field Objects of this type are data only, but have the special property of containing user-defined lists. User-defined lists are research and study aids.
Class Library
Class libraries are where all the objects you use in Plato are defined. Object classes are like 'templates.' When you set up an object class for 'book,' for instance, all the 'books' you create in a database will have the same characteristics as the 'book' object class.

Class libraries
Class Library List
The class library list lists all the class libraries for your system. Access the list by opening the database list and selecting 'class libraries' from the drop down box at the top of the window. A list of class libraries will appear.

From the class library list you may open (and edit), delete, or modify metadata for existing class libraries. You may also create new class libraries.

Editing Class Library Data
  • Open library and edit Select the library you want to open and double click the entry, or press ENTER.
  • Modify library metadata Select the library you want to edit, right click the mouse, and select 'edit data'.
  • Delete library Select the library you want to delete, right click the mouse, and select 'delete'. Note that you may only delete class libraries that are not attached to any databases. Plato keeps track of which class libraries are in use by which databases and will only allow you to delete class libraries that are not in use by any databases.

Creating New Class library
Class Library List Editing
Class Library Settings
Object Attribute Editing
Object Attributes
Object Class Editing
??Transferring object classes to another class library//

You can copy object classes, attributes, and markup to another class library. Select the object classes you want to copy and right click the mouse. Click "copy to another class library." A list of class libraries will pop up. Select the target class library and click the "copy" button. The items you've selected will by copied to the target class library.

??More About Copying Object Classes//

This page last updated on 2014.04.10