jade.content.schema
Class AggregateSchema

java.lang.Object
  |
  +--jade.content.schema.ObjectSchema
        |
        +--jade.content.schema.ObjectSchemaImpl
              |
              +--jade.content.schema.TermSchema
                    |
                    +--jade.content.schema.AggregateSchema
All Implemented Interfaces:
java.io.Serializable, Serializable

public class AggregateSchema
extends TermSchema

This class represent the schema of aggregate entities in an ontology.

Author:
Federico Bergenti - Universita` di Parma
See Also:
Serialized Form

Field Summary
static java.lang.String BASE_NAME
           
 
Fields inherited from class jade.content.schema.ObjectSchema
baseSchema, MANDATORY, OPTIONAL, UNLIMITED
 
Constructor Summary
AggregateSchema(java.lang.String typeName)
          Creates an AggregateSchema with a given type-name.
 
Method Summary
protected  boolean descendsFrom(ObjectSchema s)
          Return true if - s is the base schema for the XXXSchema class this schema is an instance of (e.g.
 boolean equals(java.lang.Object o)
          The difference between types of aggregates (such as SET and SEQUENCE) is quite fuzy.
static ObjectSchema getBaseSchema()
          Retrieve the generic base schema for all aggregates.
 AbsObject newInstance()
          Creates an Abstract descriptor to hold an aggregate of the proper type.
 void validate(AbsObject abs, Ontology onto)
          Check whether a given abstract descriptor complies with this schema.
 
Methods inherited from class jade.content.schema.TermSchema
add, add, add, add, addFacet, addSuperSchema, containsSlot, getFacets, getNames, getSchema, getTypeName, isCompatibleWith, isMandatory, toString, validateSlots
 
Methods inherited from class jade.content.schema.ObjectSchema
getEncodingByOrder, setEncodingByOrder
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

BASE_NAME

public static final java.lang.String BASE_NAME
See Also:
Constant Field Values
Constructor Detail

AggregateSchema

public AggregateSchema(java.lang.String typeName)
Creates an AggregateSchema with a given type-name.

Parameters:
typeName - The name of this AggregateSchema.
Method Detail

getBaseSchema

public static ObjectSchema getBaseSchema()
Retrieve the generic base schema for all aggregates.

Returns:
the generic base schema for all aggregates.

newInstance

public AbsObject newInstance()
                      throws OntologyException
Creates an Abstract descriptor to hold an aggregate of the proper type.

Overrides:
newInstance in class TermSchema
OntologyException

validate

public void validate(AbsObject abs,
                     Ontology onto)
              throws OntologyException
Check whether a given abstract descriptor complies with this schema.

Overrides:
validate in class jade.content.schema.ObjectSchemaImpl
Parameters:
abs - The abstract descriptor to be checked
Throws:
OntologyException - If the abstract descriptor does not complies with this schema

descendsFrom

protected boolean descendsFrom(ObjectSchema s)
Return true if - s is the base schema for the XXXSchema class this schema is an instance of (e.g. s is ConceptSchema.getBaseSchema() and this schema is an instance of ConceptSchema) - s is the base schema for a super-class of the XXXSchema class this schema is an instance of (e.g. s is TermSchema.getBaseSchema() and this schema is an instance of ConceptSchema)

Overrides:
descendsFrom in class TermSchema

equals

public boolean equals(java.lang.Object o)
The difference between types of aggregates (such as SET and SEQUENCE) is quite fuzy. Therefore we don't throw a validation exception if a SET is found where a SEQUENCE is expected and VV.

Overrides:
equals in class jade.content.schema.ObjectSchemaImpl


JADE