Commit 6450b321 authored by Philip Makedonski's avatar Philip Makedonski Committed by Philip Makedonski
Browse files

+ migrated EventSpecificationTemplate, reodering, tabs vs spaces

parent 3148f108
Loading
Loading
Loading
Loading
+200 −189
Original line number Diff line number Diff line
@@ -56,6 +56,7 @@ PackageableElement returns tdl::PackageableElement:
    | Event 
    | PICS
    | StructuredTestObjective
    | EventSpecificationTemplate
    | TestPurposeDescription
;

@@ -320,7 +321,6 @@ fragment EventOccurrenceSpecificationFragment returns to::EventOccurrenceSpecifi
    (oppositeEntityReference+=OppositeEntityReference 
        (',' oppositeEntityReference+=OppositeEntityReference)*
    )?
    //DONE: add identifiers for notes? also in general? -> inherited
    (comment+=Comment)*
;

@@ -348,39 +348,6 @@ EventReference returns to::EventReference:
    event=[to::Event|Identifier] 
;

//# Event Templates
//TODO: test and validate
FirstEventTemplateOccurrence returns to::EventTemplateOccurrence:
	EventTemplateOccurrenceFragment
;

EventTemplateOccurrence returns to::EventTemplateOccurrence:
	ElementAndOrPrefix
	EventTemplateOccurrenceFragment
;

fragment EventTemplateOccurrenceFragment returns to::EventTemplateOccurrence:
	//TODO: currently ambiguous
//	EventTimingPrefix?
    'event' 
    eventTemplate=[to::EventSpecificationTemplate|Identifier]
    'occurs'
    ('with' 
    BEGIN
    	(entityBinding+=EntityBinding (',' entityBinding+=EntityBinding)*)?
		('argument' 'replaced' 'by' occurrenceArgument=Argument)?
    END
    )?
    //DONE: add identifiers for notes? also in general? -> inherited
    (comment+=Comment)*
;

EntityBinding returns to::EntityBinding:
	templateEntity=EntityReference
	'replaced' 'by'
	occurrenceEntity=EntityReference
;

//# Data

//TODO: continue with data, simplify where appropriate
@@ -399,6 +366,12 @@ Argument returns to::Value:
    | LiteralValueReferenceArgument
;

fragment ValueReferenceFragment returns to::Value:
    comment+=NotQualifier?
    comment+=ReferenceQualifier
;


LiteralOrDataReferenceAsBinding returns to::Value:
    LiteralValueAsBinding //| DataReferenceAsBinding
;
@@ -442,15 +415,9 @@ DataContent returns to::Content:
        )
        | value=Value
    )?

; 


fragment ValueReferenceFragment returns to::Value:
	comment+=NotQualifier?
   	comment+=ReferenceQualifier
;

LiteralValueReference returns to::LiteralValueReference:
    ValueReferenceFragment
    LiteralValueReferenceFragment
@@ -460,6 +427,10 @@ LiteralValueReferenceArgument returns to::LiteralValueReference:
    LiteralValueReferenceFragment
;

BindingLiteralValueReference returns to::LiteralValueReference:
    content=[to::LiteralValue|Identifier] | content=[to::LiteralValue|NIdentifier] 
;

fragment LiteralValueReferenceFragment returns to::LiteralValueReference:
    'the' 'value' 'of'
    comment+=Qualifier*
@@ -475,6 +446,10 @@ ContentReferenceAsArgument returns to::ContentReference:
    ContentReferenceFragment
;

BindingContentReference returns to::ContentReference:
    content=[to::Content|Identifier]
;

fragment ContentReferenceFragment returns to::ContentReference:
    'the' 'value' 'contained' 'in'
    // make more complex: simplify
@@ -505,6 +480,11 @@ DataReferenceAsArgument returns to::DataReference:
    DataReferenceFragment    
;

BindingDataReference returns to::DataReference:
    //TODO: review
    content=StaticDataUse
;

fragment DataReferenceFragment returns to::DataReference:
    comment+=Qualifier*
    //name=Identifier
@@ -516,26 +496,53 @@ fragment DataReferenceFragment returns to::DataReference:
    content=StaticDataUse
;

BindingLiteralValueReference returns to::LiteralValueReference:
   	content=[to::LiteralValue|Identifier] | content=[to::LiteralValue|NIdentifier] 
;

BindingContentReference returns to::ContentReference:
   	content=[to::Content|Identifier]
    

//# Event Templates

EventSpecificationTemplate returns to::EventSpecificationTemplate:
    AnnotationCommentFragment
    'Template' name=Identifier
    BEGIN
        eventSpecification=EventOccurrenceSpecification
    END
;

BindingDataReference returns to::DataReference:
	//TODO: review
   	content=StaticDataUse
//TODO: test and validate
FirstEventTemplateOccurrence returns to::EventTemplateOccurrence:
    EventTemplateOccurrenceFragment
;

EventTemplateOccurrence returns to::EventTemplateOccurrence:
    ElementAndOrPrefix
    EventTemplateOccurrenceFragment
;

//# Structured Test Objective Variants
fragment EventTemplateOccurrenceFragment returns to::EventTemplateOccurrence:
    //TODO: currently ambiguous
//    EventTimingPrefix?
    'event' 
    eventTemplate=[to::EventSpecificationTemplate|Identifier]
    'occurs'
    ('with' 
    BEGIN
        (entityBinding+=EntityBinding (',' entityBinding+=EntityBinding)*)?
        ('argument' 'replaced' 'by' occurrenceArgument=Argument)?
    END
    )?
    (comment+=Comment)*
;

Variants returns to::Variants:
	variants+=Variant+
EntityBinding returns to::EntityBinding:
    templateEntity=EntityReference
    'replaced' 'by'
    occurrenceEntity=EntityReference
;


//# Structured Test Objective Variants

Variant returns to::TestObjectiveVariant:
    'Variant' name=Identifier
    BEGIN
@@ -550,6 +557,10 @@ Variant returns to::TestObjectiveVariant:
    END
;

Variants returns to::Variants:
    variants+=Variant+
;

VariantBinding returns to::VariantBinding:
    VariantBindingValue
    | VariantBindingAttribute