//if( allAtLeastOneGroup == null ) allAtLeastOneGroup = new HashMap<>();
try{
try{
Integerarg=Integer.valueOf(presCondArgs);
Integerarg=Integer.valueOf(presCondArgs);
if(arg<=0){
if(arg<=0){
...
@@ -860,6 +889,7 @@ public class DataObjectPresenceConditionValidator {
...
@@ -860,6 +889,7 @@ public class DataObjectPresenceConditionValidator {
// Parameter n: group number (> 0).
// Parameter n: group number (> 0).
// At least one of marked elements of a group n shall be present
// At least one of marked elements of a group n shall be present
// Usage in standard NSD files (version 2007B): DataObject and SubDataObject and DataAttribute and SubDataAttribute
// Usage in standard NSD files (version 2007B): DataObject and SubDataObject and DataAttribute and SubDataAttribute
//if( atLeastOne != null ) {
if(!asSuperclass){
if(!asSuperclass){
AbstractRiseClipseConsole.getConsole().verbose("[NSD validation] validation of presence condition \"AtLeastOne\" on LNodeType (id="+lNodeType.getId()+") at line "+lNodeType.getLineNumber());
AbstractRiseClipseConsole.getConsole().verbose("[NSD validation] validation of presence condition \"AtLeastOne\" on LNodeType (id="+lNodeType.getId()+") at line "+lNodeType.getLineNumber());
@@ -885,7 +915,8 @@ public class DataObjectPresenceConditionValidator {
...
@@ -885,7 +915,8 @@ public class DataObjectPresenceConditionValidator {
// presCond: "AtMostOne" :
// presCond: "AtMostOne" :
// At most one of marked elements shall be present
// At most one of marked elements shall be present
// Usage in standard NSD files (version 2007B): DataObject
// Usage in standard NSD files (version 2007B): DataObject
if(atMostOne!=null){
//if( atMostOne != null ) {
if(!asSuperclass){
AbstractRiseClipseConsole.getConsole().verbose("[NSD validation] validation of presence condition \"AtMostOne\" on LNodeType (id="+lNodeType.getId()+") at line "+lNodeType.getLineNumber());
AbstractRiseClipseConsole.getConsole().verbose("[NSD validation] validation of presence condition \"AtMostOne\" on LNodeType (id="+lNodeType.getId()+") at line "+lNodeType.getLineNumber());
intcount=0;
intcount=0;
for(Strings:atMostOne){
for(Strings:atMostOne){
...
@@ -908,7 +939,8 @@ public class DataObjectPresenceConditionValidator {
...
@@ -908,7 +939,8 @@ public class DataObjectPresenceConditionValidator {
// Parameter n: group number (> 0).
// Parameter n: group number (> 0).
// All or none of the elements of a group n shall be present
// All or none of the elements of a group n shall be present
// Usage in standard NSD files (version 2007B): DataAttribute
// Usage in standard NSD files (version 2007B): DataAttribute
if(allOrNonePerGroup!=null){
//if( allOrNonePerGroup != null ) {
if(!asSuperclass){
AbstractRiseClipseConsole.getConsole().verbose("[NSD validation] validation of presence condition \"AllOrNonePerGroup\" on LNodeType (id="+lNodeType.getId()+") at line "+lNodeType.getLineNumber());
AbstractRiseClipseConsole.getConsole().verbose("[NSD validation] validation of presence condition \"AllOrNonePerGroup\" on LNodeType (id="+lNodeType.getId()+") at line "+lNodeType.getLineNumber());
@@ -933,7 +965,8 @@ public class DataObjectPresenceConditionValidator {
...
@@ -933,7 +965,8 @@ public class DataObjectPresenceConditionValidator {
// Parameter n: group number (> 0).
// Parameter n: group number (> 0).
// All elements of only one group n shall be present
// All elements of only one group n shall be present
// Usage in standard NSD files (version 2007B): DataObject and SubDataAttribute
// Usage in standard NSD files (version 2007B): DataObject and SubDataAttribute
if(allOnlyOneGroup!=null){
//if( allOnlyOneGroup != null ) {
if((!asSuperclass)&&(allOnlyOneGroup.size()!=0)){// groupNumber == 0 not an error if empty
AbstractRiseClipseConsole.getConsole().verbose("[NSD validation] validation of presence condition \"AllOnlyOneGroup\" on LNodeType (id="+lNodeType.getId()+") at line "+lNodeType.getLineNumber());
AbstractRiseClipseConsole.getConsole().verbose("[NSD validation] validation of presence condition \"AllOnlyOneGroup\" on LNodeType (id="+lNodeType.getId()+") at line "+lNodeType.getLineNumber());
@@ -982,7 +1015,8 @@ public class DataObjectPresenceConditionValidator {
...
@@ -982,7 +1015,8 @@ public class DataObjectPresenceConditionValidator {
// Parameter n: group number (> 0).
// Parameter n: group number (> 0).
// All elements of at least one group n shall be present
// All elements of at least one group n shall be present
// Usage in standard NSD files (version 2007B): DataAttribute
// Usage in standard NSD files (version 2007B): DataAttribute
if(allAtLeastOneGroup!=null){
//if( allAtLeastOneGroup != null ) {
if((!asSuperclass)&&(allAtLeastOneGroup.size()!=0)){// groupNumber == 0 not an error if empty
AbstractRiseClipseConsole.getConsole().verbose("[NSD validation] validation of presence condition \"AllAtLeastOneGroup\" on LNodeType (id="+lNodeType.getId()+") at line "+lNodeType.getLineNumber());
AbstractRiseClipseConsole.getConsole().verbose("[NSD validation] validation of presence condition \"AllAtLeastOneGroup\" on LNodeType (id="+lNodeType.getId()+") at line "+lNodeType.getLineNumber());