Studio Guide
User Guide and Training Manual for Studio
Actions - Data creation
Studio Training Basic
- Studio - Validation rule management
- A - Basics 1 - Creating a project, adding validation rule
- A - Basics 2 - Testing a validation rule
- A - Basics 3 - Modifying rules and testing in validator
- A - Basics 4 - Group features and restricting value
- A - Basics 5 - Features for existing project
- A - Basics extra - Further tasks
Training Expert
- C - Expert 1 - Handling collections
- C - Expert 2 - Queries within collections
- C - Expert 3 - Calculations within collections
- C - Expert 4 - Display names within rulesets
Training Advanced
- B - Advanced 1 - Modifying validation rule definition
- B - Advanced 2 - Handling erroneous code
- B - Advanced 3 - Importance of context
- B - Advanced 4 - Conditional rules
- B - Advanced 5 - Tree traversal
- B - Advanced 6 - Queries
- B - Advanced 7 - Projects and rulesets as XML
XMLdation Studio Guide
OCL Rules
- About OCL Rules
- 1. Description of a rule
- 2. Concept of Context
- 3. OCL statement
- 4. Message location
- 5. Collections
- 6. Relationships
- Summary: Available methods for OCL base types
- Mapping between schema datatypes and OCL Base types
- Available methods for OCL base types
- Guidelines for writing validator return messages
- Example OCL rules
Available methods for OCL base types
- Logical operators: and, or, xor, not
- Logical operator: implies
- div
- Creation of a collection:asBag, asSet, asOrderedSet, asSequence
- =, <>, >=, <=, <, > (comparison)
- ->count()
- ->excludes()
- ->exists()
- ->forAll()
- ->includes()
- ->size()
- ->sum()
- .abs()
- .after()
- .allInstances()
- .allowedDaysInFuture()
- .allowedDaysInPast()
- .before()
- .charAt()
- .compareTo()
- .compareToIgnoreCase()
- .concat()
- .decodeBase64()
- .encoding()
- .endsWith()
- .contains()
- .isDTDpresent()
- .isNumeric()
- .isOnlyChars()
- .isValidCountryCode()
- .isValidCreditorIdentifierEPC()
- .isValidCurrencyCode()
- .isValidDate()
- .isValidIBAN()
- .isValidReference('FI')
- .isValidRF()
- .lastIndexOf()
- .matches()
- .min()
- .max()
- .minusDays() / .minusMonths() / .minusYears()
- .minusHours() / .minusMinutes() / .minusSeconds()
- .namespace()
- .noNamespaceSchemaLocation()
- .oclAsType()
- .oclIsKindOf()
- .oclIsTypeOf()
- .oclIsUndefined()
- .plusDays() / .plusMonths / .plusYears()
- .plusHours() / .plusMinutes() / .plusSeconds()
- .round()
- .schemaLocation()
- .size()
- .split()
- .standalone()
- .startsWith()
- .substring()
- .toDate()
- .toInteger()
- .toLower()
- .toString()
- .toReal()
- .toSHA1()
- .toUpper()
- .trim()
- .version()
- .xmlData()
- Available methods for OCL base types
- .xmlDataSize()
- .xmlElementBlockSize()
- .prologAttribute()
- .attribute()
- .parent()
- .namespacePrefix()