org.enhydra.shark.xpdl
Class StandardPackageValidator

java.lang.Object
  extended by org.enhydra.shark.xpdl.StandardPackageValidator
All Implemented Interfaces:
XMLValidator

public class StandardPackageValidator
extends java.lang.Object
implements XMLValidator

Represents coresponding element from XPDL schema.

Author:
Sasa Bojanic

Field Summary
static java.lang.String ALLOW_UNDEFINED_END
           
static java.lang.String ALLOW_UNDEFINED_START
           
static java.lang.String CHECK_EXTERNAL_PACKAGES
           
protected static java.lang.String CURRENT_XPDL_VERSION
           
static java.lang.String ENCODING
           
protected  java.util.Map epsValidationErrors
           
static java.lang.String GET_EXISTING_SCHEMA_VALIDATION_ERRORS
           
static java.lang.String LOCALE
           
protected  java.util.Properties properties
           
protected  java.util.Map schemaValidationErrors
           
protected  java.util.Properties settings
           
static java.lang.String VALIDATE_ACTUAL_PARAMETER_EXPRESSIONS
           
static java.lang.String VALIDATE_CONDITION_BY_TYPE
           
static java.lang.String VALIDATE_CONDITION_EXPRESSIONS
           
static java.lang.String VALIDATE_DEADLINE_EXPRESSIONS
           
static java.lang.String VALIDATE_PERFORMER_EXPRESSIONS
           
static java.lang.String VALIDATE_SUBFLOW_REFERENCES
           
static java.lang.String VALIDATE_UNUSED_VARIABLES
           
protected  XMLInterface xmlInterface
           
 
Constructor Summary
StandardPackageValidator()
           
StandardPackageValidator(java.util.Properties settings)
           
 
Method Summary
 java.lang.String additionalExpressionCheck(XMLElement el, java.lang.String expr, java.util.Map vars)
           
 boolean canBeExpression(java.lang.String expr, java.util.Map allVars, boolean evaluateToString)
           
protected  boolean checkActivityConnection(Activity act, java.util.List existingErrors, boolean fullCheck)
          Checks if given activity is well connected.
protected  boolean checkActivityId(Activity newEl)
           
protected  boolean checkANDSplit(Activity act)
           
protected  void checkBlockId(XMLAttribute bId, java.util.List existingErrors)
           
protected  void checkDeclaredTypeId(XMLAttribute dtId, java.util.List existingErrors)
           
protected  void checkExternalPackages(Package pkg, java.util.List existingErrors, boolean fullCheck)
           
protected  boolean checkGraphConformanceForWpOrAs(XMLCollectionElement wpOrAs, java.util.List existingErrors, boolean fullCheck)
          Checks if graph conforms to the given conformance class.
protected  boolean checkGraphConnectionsForWpOrAs(XMLCollectionElement wpOrAs, java.util.List existingErrors, boolean fullCheck)
           
protected  void checkMultipleOtherwiseOrDefaultExceptionTransitions(Activity act, java.util.Set outTrans, java.util.List existingErrors, boolean fullCheck)
           
protected  void checkParameterMatching(FormalParameters fps, ActualParameters aps, java.util.List existingErrors, boolean checkExpression, boolean fullCheck)
           
protected  boolean checkSubFlowId(XMLAttribute sbflwId, java.util.List existingErrors, boolean fullCheck)
           
protected  boolean checkToolId(XMLAttribute tlId, java.util.List existingErrors, boolean fullCheck)
           
protected  void checkTransitionFrom(XMLAttribute from, java.util.List existingErrors)
           
protected  boolean checkTransitionId(Transition newEl)
           
protected  void checkTransitionRefId(XMLAttribute trfId, java.util.List existingErrors, boolean fullCheck)
           
protected  void checkTransitionTo(XMLAttribute to, java.util.List existingErrors)
           
protected  boolean checkXORSplit(Activity act)
           
 void clearCache()
           
 void clearCache(Package pkg)
           
protected  boolean containsTransitionWithId(java.util.Set trans, java.lang.String id)
           
protected  boolean[][] createIncidenceMatrix(Activities activities)
           
protected  StandardPackageValidator createValidatorInstance()
           
protected  java.util.Map getActualParameterOrConditionChoices(XMLElement el)
           
protected  java.util.Map getDeadlineConditionChoices(XMLElement el)
           
 java.util.Map getExtPkgValidationErrors()
           
protected  int getNoOfANDSplitsOrJoins(java.util.Set acts, int sOrJ)
          Returns the number of activities in the given set that have split or join, depending on second parameter.
protected  int getNoOfReferences(java.lang.Class parentCls, XMLComplexElement parent, java.lang.Class elCls, XMLElement el)
           
protected  java.util.Map getPerformerChoices(XMLElement el)
           
protected  boolean hasAnyPostcondition(Activity act)
           
 boolean hasErrors(java.util.List l)
           
 void init(java.util.Properties props)
           
 void init(java.util.Properties pProps, XMLInterface pXmlInterface)
           
 void init(XMLInterface pXmlInterface, Package pPkg, boolean pGetExistingSchemaValidationErrors, java.lang.String pEncoding, java.lang.String pLocale)
           
static boolean isEmpty(java.lang.String str)
           
protected  boolean isIdUnique(XMLCollectionElement newEl)
           
protected  boolean isIdValid(java.lang.String id)
           
protected  boolean isRemoteSubflowIdOK(java.lang.String subflowId)
           
static void main(java.lang.String[] args)
           
 java.lang.String prepareMessageString(java.lang.String msg)
           
static void printIM(boolean[][] im, java.util.List acts)
          Used for debug only
static void printIM2(boolean[][] im, java.util.List acts)
          Used for debug only
 java.util.List reCheckExternalPackage(Package p)
           
protected  void validateAgainstXPDLSchema(Package pkg, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Activities el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Activity el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ActivitySet el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ActivitySets el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ActivityTypes el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ActualParameter el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ActualParameters el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Application el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Applications el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ApplicationTypes el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ArrayType el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Author el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Automatic el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(BasicType el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(BlockActivity el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Codepage el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Condition el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ConformanceClass el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Cost el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(CostUnit el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Countrykey el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Created el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(DataField el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(DataFields el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(DataType el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(DataTypes el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(DeadlineCondition el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Deadline el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Deadlines el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(DeclaredType el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Description el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Documentation el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Duration el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(EnumerationType el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(EnumerationValue el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ExceptionName el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ExtendedAttribute el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ExtendedAttributes el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ExternalPackage el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ExternalPackages el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ExternalReference el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(FinishMode el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(FormalParameter el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(FormalParameters el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Icon el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Implementation el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ImplementationTypes el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(InitialValue el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Join el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Length el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Limit el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ListType el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Manual el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Member el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Namespace el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Namespaces el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(No el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(PackageHeader el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Package el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Participant el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Participants el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ParticipantType el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Performer el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Priority el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(PriorityUnit el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ProcessHeader el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(RecordType el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(RedefinableHeader el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Responsible el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Responsibles el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Route el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(SchemaType el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Script el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(SimulationInformation el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Split el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(StartFinishModes el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(StartMode el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(SubFlow el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(TimeEstimation el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Tool el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Tools el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Transition el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(TransitionRef el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(TransitionRefs el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(TransitionRestriction el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(TransitionRestrictions el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Transitions el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(TypeDeclaration el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(TypeDeclarations el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(UnionType el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ValidFrom el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(ValidTo el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Vendor el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(Version el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(WaitingTime el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(WorkflowProcesses el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(WorkflowProcess el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(WorkingTime el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(XMLAttribute el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(XMLCollectionElement el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(XMLCollection el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(XMLComplexChoice el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(XMLComplexElement el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(XMLElement el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(XMLEmptyChoiceElement el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(XMLSimpleElement el, java.util.List existingErrors, boolean fullCheck)
           
 void validateElement(XPDLVersion el, java.util.List existingErrors, boolean fullCheck)
           
protected  void validateStandard(XMLElement el, java.util.List existingErrors, boolean fullCheck)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

VALIDATE_SUBFLOW_REFERENCES

public static final java.lang.String VALIDATE_SUBFLOW_REFERENCES
See Also:
Constant Field Values

VALIDATE_PERFORMER_EXPRESSIONS

public static final java.lang.String VALIDATE_PERFORMER_EXPRESSIONS
See Also:
Constant Field Values

VALIDATE_ACTUAL_PARAMETER_EXPRESSIONS

public static final java.lang.String VALIDATE_ACTUAL_PARAMETER_EXPRESSIONS
See Also:
Constant Field Values

VALIDATE_DEADLINE_EXPRESSIONS

public static final java.lang.String VALIDATE_DEADLINE_EXPRESSIONS
See Also:
Constant Field Values

VALIDATE_CONDITION_EXPRESSIONS

public static final java.lang.String VALIDATE_CONDITION_EXPRESSIONS
See Also:
Constant Field Values

VALIDATE_UNUSED_VARIABLES

public static final java.lang.String VALIDATE_UNUSED_VARIABLES
See Also:
Constant Field Values

VALIDATE_CONDITION_BY_TYPE

public static final java.lang.String VALIDATE_CONDITION_BY_TYPE
See Also:
Constant Field Values

GET_EXISTING_SCHEMA_VALIDATION_ERRORS

public static final java.lang.String GET_EXISTING_SCHEMA_VALIDATION_ERRORS
See Also:
Constant Field Values

CHECK_EXTERNAL_PACKAGES

public static final java.lang.String CHECK_EXTERNAL_PACKAGES
See Also:
Constant Field Values

ALLOW_UNDEFINED_START

public static final java.lang.String ALLOW_UNDEFINED_START
See Also:
Constant Field Values

ALLOW_UNDEFINED_END

public static final java.lang.String ALLOW_UNDEFINED_END
See Also:
Constant Field Values

ENCODING

public static final java.lang.String ENCODING
See Also:
Constant Field Values

LOCALE

public static final java.lang.String LOCALE
See Also:
Constant Field Values

CURRENT_XPDL_VERSION

protected static final java.lang.String CURRENT_XPDL_VERSION
See Also:
Constant Field Values

properties

protected java.util.Properties properties

xmlInterface

protected XMLInterface xmlInterface

epsValidationErrors

protected java.util.Map epsValidationErrors

schemaValidationErrors

protected java.util.Map schemaValidationErrors

settings

protected java.util.Properties settings
Constructor Detail

StandardPackageValidator

public StandardPackageValidator()

StandardPackageValidator

public StandardPackageValidator(java.util.Properties settings)
Method Detail

init

public void init(XMLInterface pXmlInterface,
                 Package pPkg,
                 boolean pGetExistingSchemaValidationErrors,
                 java.lang.String pEncoding,
                 java.lang.String pLocale)

clearCache

public void clearCache(Package pkg)

clearCache

public void clearCache()

getExtPkgValidationErrors

public java.util.Map getExtPkgValidationErrors()

init

public void init(java.util.Properties props)
Specified by:
init in interface XMLValidator

init

public void init(java.util.Properties pProps,
                 XMLInterface pXmlInterface)

validateElement

public void validateElement(XMLElement el,
                            java.util.List existingErrors,
                            boolean fullCheck)
Specified by:
validateElement in interface XMLValidator

validateElement

public void validateElement(XMLAttribute el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(XMLComplexChoice el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(XMLEmptyChoiceElement el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(XMLCollection el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(XMLCollectionElement el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(XMLComplexElement el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(XMLSimpleElement el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateStandard

protected void validateStandard(XMLElement el,
                                java.util.List existingErrors,
                                boolean fullCheck)

validateElement

public void validateElement(Activities el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Activity el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ActivitySet el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ActivitySets el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ActivityTypes el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ActualParameter el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ActualParameters el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Application el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Applications el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ApplicationTypes el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ArrayType el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Author el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Automatic el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(BasicType el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(BlockActivity el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Codepage el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Condition el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ConformanceClass el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Cost el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(CostUnit el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Countrykey el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Created el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(DataField el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(DataFields el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(DataType el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(DataTypes el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Deadline el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(DeadlineCondition el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Deadlines el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(DeclaredType el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Description el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Documentation el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Duration el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(EnumerationType el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(EnumerationValue el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ExceptionName el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ExtendedAttribute el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ExtendedAttributes el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ExternalPackage el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ExternalPackages el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ExternalReference el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(FinishMode el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(FormalParameter el,
                            java.util.List existingErrors,
                            boolean fullCheck)

getNoOfReferences

protected int getNoOfReferences(java.lang.Class parentCls,
                                XMLComplexElement parent,
                                java.lang.Class elCls,
                                XMLElement el)

validateElement

public void validateElement(FormalParameters el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Icon el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Implementation el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ImplementationTypes el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(InitialValue el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Join el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Length el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Limit el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ListType el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Manual el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Member el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Namespace el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Namespaces el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(No el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Package el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(PackageHeader el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Participant el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Participants el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ParticipantType el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Performer el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Priority el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(PriorityUnit el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ProcessHeader el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(RecordType el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(RedefinableHeader el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Responsible el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Responsibles el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Route el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(SchemaType el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Script el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(SimulationInformation el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Split el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(StartFinishModes el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(StartMode el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(SubFlow el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(TimeEstimation el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Tool el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Tools el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Transition el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(TransitionRef el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(TransitionRefs el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(TransitionRestriction el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(TransitionRestrictions el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Transitions el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(TypeDeclaration el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(TypeDeclarations el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(UnionType el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ValidFrom el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(ValidTo el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Vendor el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(Version el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(WaitingTime el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(WorkflowProcess el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(WorkflowProcesses el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(WorkingTime el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateElement

public void validateElement(XPDLVersion el,
                            java.util.List existingErrors,
                            boolean fullCheck)

validateAgainstXPDLSchema

protected void validateAgainstXPDLSchema(Package pkg,
                                         java.util.List existingErrors,
                                         boolean fullCheck)

checkExternalPackages

protected void checkExternalPackages(Package pkg,
                                     java.util.List existingErrors,
                                     boolean fullCheck)

reCheckExternalPackage

public java.util.List reCheckExternalPackage(Package p)

checkToolId

protected boolean checkToolId(XMLAttribute tlId,
                              java.util.List existingErrors,
                              boolean fullCheck)

checkSubFlowId

protected boolean checkSubFlowId(XMLAttribute sbflwId,
                                 java.util.List existingErrors,
                                 boolean fullCheck)

checkTransitionRefId

protected void checkTransitionRefId(XMLAttribute trfId,
                                    java.util.List existingErrors,
                                    boolean fullCheck)

containsTransitionWithId

protected boolean containsTransitionWithId(java.util.Set trans,
                                           java.lang.String id)

isRemoteSubflowIdOK

protected boolean isRemoteSubflowIdOK(java.lang.String subflowId)

checkMultipleOtherwiseOrDefaultExceptionTransitions

protected void checkMultipleOtherwiseOrDefaultExceptionTransitions(Activity act,
                                                                   java.util.Set outTrans,
                                                                   java.util.List existingErrors,
                                                                   boolean fullCheck)

checkTransitionFrom

protected void checkTransitionFrom(XMLAttribute from,
                                   java.util.List existingErrors)

checkTransitionTo

protected void checkTransitionTo(XMLAttribute to,
                                 java.util.List existingErrors)

checkDeclaredTypeId

protected void checkDeclaredTypeId(XMLAttribute dtId,
                                   java.util.List existingErrors)

checkBlockId

protected void checkBlockId(XMLAttribute bId,
                            java.util.List existingErrors)

isEmpty

public static boolean isEmpty(java.lang.String str)

isIdValid

protected boolean isIdValid(java.lang.String id)

isIdUnique

protected boolean isIdUnique(XMLCollectionElement newEl)

checkActivityId

protected boolean checkActivityId(Activity newEl)

checkTransitionId

protected boolean checkTransitionId(Transition newEl)

printIM

public static void printIM(boolean[][] im,
                           java.util.List acts)
Used for debug only


printIM2

public static void printIM2(boolean[][] im,
                            java.util.List acts)
Used for debug only


checkGraphConformanceForWpOrAs

protected boolean checkGraphConformanceForWpOrAs(XMLCollectionElement wpOrAs,
                                                 java.util.List existingErrors,
                                                 boolean fullCheck)
Checks if graph conforms to the given conformance class.

Returns:
true if graph is conformant, false otherwise

createIncidenceMatrix

protected boolean[][] createIncidenceMatrix(Activities activities)

getNoOfANDSplitsOrJoins

protected int getNoOfANDSplitsOrJoins(java.util.Set acts,
                                      int sOrJ)
Returns the number of activities in the given set that have split or join, depending on second parameter.

Parameters:
acts - The set of activities that are searched for split or join
sOrJ - 0 -> searching for split, otherwise, searching for join

checkANDSplit

protected boolean checkANDSplit(Activity act)

checkXORSplit

protected boolean checkXORSplit(Activity act)

hasAnyPostcondition

protected boolean hasAnyPostcondition(Activity act)

checkGraphConnectionsForWpOrAs

protected boolean checkGraphConnectionsForWpOrAs(XMLCollectionElement wpOrAs,
                                                 java.util.List existingErrors,
                                                 boolean fullCheck)

checkActivityConnection

protected boolean checkActivityConnection(Activity act,
                                          java.util.List existingErrors,
                                          boolean fullCheck)
Checks if given activity is well connected.

Returns:
String describing the error, or empty string if there is no connection error for giving activity.

checkParameterMatching

protected void checkParameterMatching(FormalParameters fps,
                                      ActualParameters aps,
                                      java.util.List existingErrors,
                                      boolean checkExpression,
                                      boolean fullCheck)

prepareMessageString

public java.lang.String prepareMessageString(java.lang.String msg)

hasErrors

public boolean hasErrors(java.util.List l)

canBeExpression

public boolean canBeExpression(java.lang.String expr,
                               java.util.Map allVars,
                               boolean evaluateToString)

additionalExpressionCheck

public java.lang.String additionalExpressionCheck(XMLElement el,
                                                  java.lang.String expr,
                                                  java.util.Map vars)

createValidatorInstance

protected StandardPackageValidator createValidatorInstance()

main

public static void main(java.lang.String[] args)

getActualParameterOrConditionChoices

protected java.util.Map getActualParameterOrConditionChoices(XMLElement el)

getDeadlineConditionChoices

protected java.util.Map getDeadlineConditionChoices(XMLElement el)

getPerformerChoices

protected java.util.Map getPerformerChoices(XMLElement el)