schema2template.model
Interface PuzzleComponent

All Known Subinterfaces:
QNamedPuzzleComponent
All Known Implementing Classes:
PuzzlePiece, PuzzlePieceSet

public interface PuzzleComponent

The first purpose of this interface is to provide a kind of "piece of a puzzle" representing the key definitions of a schema and their relationship:

The second purpose of this interface is to hide the differences between one definition and a Collection of definitions. By this you will be able to use single definitions and collections of definitions as method parameters. The method getCollection() is a helper method for this.


Method Summary
 boolean canHaveText()
          Determines whether this PuzzleComponent allows a text node as child.
 PuzzlePieceSet getAttributes()
          ELEMENT PuzzlePiece only: Get all attribute Definitions
 PuzzlePieceSet getChildElements()
          ELEMENT PuzzlePiece only: Get all child element Definitions
 Collection<PuzzlePiece> getCollection()
          Method to treat NamedDefined as a Collection of PuzzlePiece
 PuzzlePieceSet getDatatypes()
          ATTRIBUTE PuzzlePiece only: Get all datatype Definitions
 PuzzlePieceSet getParents()
          Get all parent Definitions
 MSVExpressionType getType()
          Get type of PuzzlePiece [ELEMENT, ATTRIBUTE, VALUE, DATA]
 PuzzlePieceSet getValues()
          ATTRIBUTE PuzzlePiece only: Get all value Definitions
 boolean isSingleton(PuzzleComponent child)
          Determines whether the child PuzzlePiece(s) is/are singleton(s) Convention: If child is a collection this method returns false if one child element is no singleton.
 

Method Detail

getChildElements

PuzzlePieceSet getChildElements()
ELEMENT PuzzlePiece only: Get all child element Definitions

Returns:
The child Definitions of this PuzzleComponent

getAttributes

PuzzlePieceSet getAttributes()
ELEMENT PuzzlePiece only: Get all attribute Definitions

Returns:
The attribute Definitions of this PuzzleComponent

getDatatypes

PuzzlePieceSet getDatatypes()
ATTRIBUTE PuzzlePiece only: Get all datatype Definitions

Returns:
The datatype Definitions of this PuzzleComponent

getValues

PuzzlePieceSet getValues()
ATTRIBUTE PuzzlePiece only: Get all value Definitions

Returns:
The constant value Definitions of this PuzzleComponent

getParents

PuzzlePieceSet getParents()
Get all parent Definitions

Returns:
The parent Definitions of this PuzzleComponent

getType

MSVExpressionType getType()
Get type of PuzzlePiece [ELEMENT, ATTRIBUTE, VALUE, DATA]

Returns:
The type of this PuzzleComponent

canHaveText

boolean canHaveText()
Determines whether this PuzzleComponent allows a text node as child.

Returns:
True if a text node is allowed, false otherwise

isSingleton

boolean isSingleton(PuzzleComponent child)
Determines whether the child PuzzlePiece(s) is/are singleton(s) Convention: If child is a collection this method returns false if one child element is no singleton. If this is a collection this method returns false if child is no singleton for one element of this.

Parameters:
child - PuzzleComponent child
Returns:
True if child is defined as Singleton, falso otherwise.

getCollection

Collection<PuzzlePiece> getCollection()
Method to treat NamedDefined as a Collection of PuzzlePiece

Returns:
Collection of PuzzlePiece objects


Copyright © 2010-2011 The Apache Software Foundation. All Rights Reserved.