Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: dsl/architecture/sdm/extracted
Source used for this grammar: Albin Jossic, SDM.ecore
, 2005/06/13
String
, Integer
, Boolean
, SystemDefinitionModel
, Information
, Import
, ImportNamespaceIdentity
, SDMCommunicationDefinition
, SDMContainmentDefinition
, SDMDelegationDefinition
, SDMReferenceDefinition
, SDMEndpointDefinition
, SDMResourceDefinition
, SDMSystemDefinition
, SDMConstraintDefinition
, SDMManager
, ManagerDeclaration
, ObjectDefinition
, OBFlow
, OBRelationshipConstraint
, OBConstraint
, OBConstraintGroup
, OBEndpointDefinition
, OBSystemDefinition
, OBResourceDefinition
, OBCommunicationDefinition
, OBContainmentDefinition
, OBDelegationDefinition
, OBReferenceDefinition
, OBHostingDefinition
, OBEndpoint
, OBSubsystem
, OBResource
, OBHosting
, OBContainment
, OBConnection
, OBDelegation
, OBReference
, SystemDefinition
, EndpointDefinition
, ResourceDefinition
, RelationshipDefinition
, RDObjectConstraint
, RDConstraint
, RDConstraintGroup
, RDFlow
, RDConnection
, RDHosting
, RDDelegation
, RDReference
, RDContainment
, CommunicationDefinition
, HostingDefinition
, ContainmentDefinition
, DelegationDefinition
, ReferenceDefinition
, Member
, MembSettingValue
, MembSettingValueList
, ObjectMember
, RelationshipMember
, SystemMember
, EndpointMember
, ResourceMember
, HostingMember
, CommunicationMember
, ContainmentMember
, DelegationMember
, ReferenceMember
, DesignData
, NameSpace
, ObjectConstraint
, OCConstraint
, OCRelationshipConstraint
, OCConstraintGroup
, RelationshipConstraint
, RCConstraint
, RCRelationshipConstraint
, RCObjectConstraint
, RCConstraintGroup
, ConstraintGroup
, CGConstraint
, CGRelationshipConstraint
, CGObjectConstraint
, StructuralConstraint
, ConstraintDefinition
, CDRelationshipConstraint
, CDConstraintGroup
, CDObjectConstraint
, CDConstraint
, ConstraintMember
, Definition
, DefSettingDeclaration
, DefSettingValue
, DefSettingValueList
, SimpleName
, QualifiedName
, Path
, SettingPath
, NamespaceIdentity
, FlowDefinition
, FlowMember
, ValueTransfer
, Output
, Input
, SettingDefinitions
, SettingMember
, SettingsAttributes
, SettingMemberAccess
, SettingMemberSecure
, Facet
, SettingValue
, SettingValueList
, Value
, SettingValueAttributes
, Description
, Entry
, DescriptionEntry
, Substitute
, PathList
, MaxOccurs
, MinOccurs
, FourPartVersionType
, PublicKeyType
, PublicKeyTokenType
, CompilationHashType
, RolesList
, Culture
, CultureNeutral
, ProcessorArchitectures
, Platform
, ConstraintEvaluation
, Element
), 0 root (—), 9 top (Integer
, ManagerDeclaration
, StructuralConstraint
, ValueTransfer
, SettingValue
, SettingValueList
, PathList
, ProcessorArchitectures
, Element
), 0 bottom (—).[information]
, [import]
2, [designData]
6, [settingDefinitions]
, [communicationDefinition]
2, [containmentDefinition]
2, [delegationDefinition]
2, [referenceDefinition]
2, [endpointDefinition]
2, [resourceDefinition]
2, [systemDefinition]
2, [constraintDefinition]
5, [manager]
6, [nameSpace]
3, [namespaceIdentity]
, [documentLanguage]
, [compilationHash]
, [sdm]
11, [friendlyname]
, [companyname]
, [copyright]
, [trademark]
, [description]
7, [comments]
, [compilerversion]
, [alias]
, [identity]
, [name]
10, [assemblyName]
, [version]
2, [publicKeyToken]
2, [culture]
2, [platform]
2, [sourcePath]
, [flow]
2, [relationshipConstraint]
6, [constraint]
6, [constraintGroup]
6, [hostingDefinition]
, [endpoint]
, [subsystem]
, [resource]
, [hosting]
2, [containment]
2, [connection]
2, [delegation]
2, [obreference]
, [layer]
, [extends]
2, [abstract]
2, [objectDefinition]
20, [simulationRoot]
2, [objectConstraint]
5, [reference]
3, [relationshipDefinition]
10, [clientDefinition]
, [serverDefinition]
, [guestDefinition]
, [hostDefinition]
, [parentDefinition]
, [memberDefinition]
, [proxyDefinition]
, [delegateDefinition]
, [dependentDefinition]
, [sourceDefinition]
, [settingValue]
3, [settingValueList]
3, [definition]
4, [member]
2, [minOccurs]
3, [maxOccurs]
3, [proxy]
, [guestMember]
, [hostMember]
, [clientMember]
, [serverMember]
, [childMember]
, [proxyMember]
, [delegateMember]
, [dependentMember]
, [sourceMember]
, [primaryRole]
, [primaryObjectDefinition]
, [secondaryRole]
, [secondaryObjectDefinition]
, [objectConstraint_OC]
2, [targetRole]
, [targetObjectDefinition]
, [delegationAware]
, [relationshipConstraint_RC]
3, [constraintGroup_CG]
2, [evaluate]
2, [raiseError]
2, [returnEarly]
2, [targetDefinition]
, [input]
2, [settingDeclaration]
2, [className]
2, [definition_DSD]
, [value]
14, [publicKey]
, [output]
, [path]
3, [cast]
2, [convert]
3, [fixed]
2, [replace]
, [clrNameSpace]
, [facet]
, [settingAttributes]
, [list]
, [access]
, [secure]
2, [deploymentTime]
, [required]
, [canBeNull]
, [elementsCanBeNull]
, [defaultRead]
, [defaultWrite]
, [ReadWrite]
, [ReadOnly]
, [WriteOnly]
, [Always]
, [PerInstance]
, [Never]
2, [contents]
2, [settingValueAttributes]
2, [null]
2, [unset]
, [entry]
, [resourceId]
2, [substitute]
, [descriptionEntry]
, [settingPath]
, [Host]
, [Guest]
, [Parent]
, [Member]
, [Source]
, [Dependent]
, [Proxy]
, [Delegate]
, [Client]
, [Server]
, [x86]
2, [ia64]
2, [amd64]
2, [wow64]
2, [msil]
2, [shx]
2, [arm]
2, [data]
2, [*]
, [neutral]
, [Design]
.String ::= string
Integer ::= integer
Boolean ::= "true" "false"
SystemDefinitionModel ::= [information]::Information [import]::Import[designData]::DesignData [settingDefinitions]::SettingDefinitions [communicationDefinition]::SDMCommunicationDefinition [containmentDefinition]::SDMContainmentDefinition [delegationDefinition]::SDMDelegationDefinition [referenceDefinition]::SDMReferenceDefinition [endpointDefinition]::SDMEndpointDefinition [resourceDefinition]::SDMResourceDefinition [systemDefinition]::SDMSystemDefinition [constraintDefinition]::SDMConstraintDefinition [manager]::SDMManager [nameSpace]::NameSpace [namespaceIdentity]::NamespaceIdentity [documentLanguage]::Culture [compilationHash]::CompilationHashType
Information ::= [sdm]::SystemDefinitionModel [friendlyname]::String [companyname]::String [copyright]::String [trademark]::String [description]::Description [comments]::String [compilerversion]::FourPartVersionType
Import ::= [sdm]::SystemDefinitionModel [alias]::SimpleName [identity]::ImportNamespaceIdentity
ImportNamespaceIdentity ::= [import]::Import
SDMCommunicationDefinition ::= [sdm]::SystemDefinitionModel
SDMContainmentDefinition ::= [sdm]::SystemDefinitionModel
SDMDelegationDefinition ::= [sdm]::SystemDefinitionModel
SDMReferenceDefinition ::= [sdm]::SystemDefinitionModel
SDMEndpointDefinition ::= [sdm]::SystemDefinitionModel
SDMResourceDefinition ::= [sdm]::SystemDefinitionModel
SDMSystemDefinition ::= [sdm]::SystemDefinitionModel
SDMConstraintDefinition ::= [sdm]::SystemDefinitionModel
SDMManager ::= [sdm]::SystemDefinitionModel
ManagerDeclaration ::= SDMManager
ManagerDeclaration ::= [description]::Description [name]::SimpleName [assemblyName]::String [version]::FourPartVersionType [publicKeyToken]::PublicKeyTokenType [culture]::CultureNeutral [platform]::Platform [sourcePath]::Path
ObjectDefinition ::= SystemDefinition
ObjectDefinition ::= EndpointDefinition
ObjectDefinition ::= ResourceDefinition
ObjectDefinition ::= [flow]::OBFlow[relationshipConstraint]::OBRelationshipConstraint [constraint]::OBConstraint [constraintGroup]::OBConstraintGroup [endpointDefinition]::OBEndpointDefinition [systemDefinition]::OBSystemDefinition [resourceDefinition]::OBResourceDefinition [communicationDefinition]::OBCommunicationDefinition [containmentDefinition]::OBContainmentDefinition [delegationDefinition]::OBDelegationDefinition [referenceDefinition]::OBReferenceDefinition [hostingDefinition]::OBHostingDefinition [endpoint]::OBEndpoint [subsystem]::OBSubsystem [resource]::OBResource [hosting]::OBHosting [containment]::OBContainment [connection]::OBConnection [delegation]::OBDelegation [obreference]::OBReference [layer]::String [extends]::QualifiedName [abstract]::Boolean
OBFlow ::= [objectDefinition]::ObjectDefinition
OBRelationshipConstraint ::= [objectDefinition]::ObjectDefinition
OBConstraint ::= [objectDefinition]::ObjectDefinition
OBConstraintGroup ::= [objectDefinition]::ObjectDefinition
OBEndpointDefinition ::= [objectDefinition]::ObjectDefinition
OBSystemDefinition ::= [objectDefinition]::ObjectDefinition
OBResourceDefinition ::= [objectDefinition]::ObjectDefinition
OBCommunicationDefinition ::= [objectDefinition]::ObjectDefinition
OBContainmentDefinition ::= [objectDefinition]::ObjectDefinition
OBDelegationDefinition ::= [objectDefinition]::ObjectDefinition
OBReferenceDefinition ::= [objectDefinition]::ObjectDefinition
OBHostingDefinition ::= [objectDefinition]::ObjectDefinition
OBEndpoint ::= [objectDefinition]::ObjectDefinition
OBSubsystem ::= [objectDefinition]::ObjectDefinition
OBResource ::= [objectDefinition]::ObjectDefinition
OBHosting ::= [objectDefinition]::ObjectDefinition
OBContainment ::= [objectDefinition]::ObjectDefinition
OBConnection ::= [objectDefinition]::ObjectDefinition
OBDelegation ::= [objectDefinition]::ObjectDefinition
OBReference ::= [objectDefinition]::ObjectDefinition
SystemDefinition ::= SDMSystemDefinition
SystemDefinition ::= OBSystemDefinition
SystemDefinition ::= [simulationRoot]::Boolean
EndpointDefinition ::= SDMEndpointDefinition
EndpointDefinition ::= OBEndpointDefinition
EndpointDefinition ::= SDMEndpointDefinition OBEndpointDefinition
ResourceDefinition ::= SDMResourceDefinition
ResourceDefinition ::= OBResourceDefinition
ResourceDefinition ::= SDMResourceDefinition OBResourceDefinition
RelationshipDefinition ::= CommunicationDefinition
RelationshipDefinition ::= HostingDefinition
RelationshipDefinition ::= ContainmentDefinition
RelationshipDefinition ::= DelegationDefinition
RelationshipDefinition ::= ReferenceDefinition
RelationshipDefinition ::= [objectConstraint]::RDObjectConstraint[constraint]::RDConstraint [constraintGroup]::RDConstraintGroup [flow]::RDFlow [connection]::RDConnection [hosting]::RDHosting [delegation]::RDDelegation [reference]::RDReference [containment]::RDContainment [extends]::QualifiedName [abstract]::Boolean
RDObjectConstraint ::= [relationshipDefinition]::RelationshipDefinition
RDConstraint ::= [relationshipDefinition]::RelationshipDefinition
RDConstraintGroup ::= [relationshipDefinition]::RelationshipDefinition
RDFlow ::= [relationshipDefinition]::RelationshipDefinition
RDConnection ::= [relationshipDefinition]::RelationshipDefinition
RDHosting ::= [relationshipDefinition]::RelationshipDefinition
RDDelegation ::= [relationshipDefinition]::RelationshipDefinition
RDReference ::= [relationshipDefinition]::RelationshipDefinition
RDContainment ::= [relationshipDefinition]::RelationshipDefinition
CommunicationDefinition ::= SDMCommunicationDefinition
CommunicationDefinition ::= OBCommunicationDefinition
CommunicationDefinition ::= [clientDefinition]::QualifiedName [serverDefinition]::QualifiedName
HostingDefinition ::= OBHostingDefinition
HostingDefinition ::= [guestDefinition]::QualifiedName [hostDefinition]::QualifiedName [simulationRoot]::Boolean
ContainmentDefinition ::= SDMContainmentDefinition
ContainmentDefinition ::= OBContainmentDefinition
ContainmentDefinition ::= [parentDefinition]::QualifiedName [memberDefinition]::QualifiedName
DelegationDefinition ::= SDMDelegationDefinition
DelegationDefinition ::= OBDelegationDefinition
DelegationDefinition ::= [proxyDefinition]::QualifiedName [delegateDefinition]::QualifiedName
ReferenceDefinition ::= SDMReferenceDefinition
ReferenceDefinition ::= OBReferenceDefinition
ReferenceDefinition ::= [dependentDefinition]::QualifiedName [sourceDefinition]::QualifiedName
Member ::= ObjectMember
Member ::= RelationshipMember
Member ::= ConstraintMember
Member ::= FlowMember
Member ::= SettingMember
Member ::= [description]::Description[designData]::DesignData [settingValue]::MembSettingValue [settingValueList]::MembSettingValueList [name]::SimpleName [definition]::QualifiedName
MembSettingValue ::= [member]::Member
MembSettingValueList ::= [member]::Member
ObjectMember ::= SystemMember
ObjectMember ::= EndpointMember
ObjectMember ::= ResourceMember
ObjectMember ::= [minOccurs]::MinOccurs [maxOccurs]::MaxOccurs [reference]::Boolean [proxy]::Boolean
RelationshipMember ::= HostingMember
RelationshipMember ::= CommunicationMember
RelationshipMember ::= ContainmentMember
RelationshipMember ::= DelegationMember
RelationshipMember ::= ReferenceMember
RelationshipMember ::= HostingMember CommunicationMember ContainmentMember DelegationMember ReferenceMember
SystemMember ::= OBSubsystem
EndpointMember ::= OBEndpoint
ResourceMember ::= OBResource
HostingMember ::= OBHosting
HostingMember ::= RDHosting
HostingMember ::= [guestMember]::Path [hostMember]::Path
CommunicationMember ::= OBConnection
CommunicationMember ::= RDConnection
CommunicationMember ::= [clientMember]::Path [serverMember]::Path
ContainmentMember ::= OBContainment
ContainmentMember ::= RDContainment
ContainmentMember ::= [childMember]::Path
DelegationMember ::= OBDelegation
DelegationMember ::= RDDelegation
DelegationMember ::= [proxyMember]::Path [delegateMember]::Path
ReferenceMember ::= OBReference
ReferenceMember ::= RDReference
ReferenceMember ::= [dependentMember]::Path [sourceMember]::Path
DesignData ::=
[nameSpace]::NameSpace
NameSpace ::= [designData]::DesignData
ObjectConstraint ::= RDObjectConstraint
ObjectConstraint ::= RCObjectConstraint
ObjectConstraint ::= CGObjectConstraint
ObjectConstraint ::= CDObjectConstraint
ObjectConstraint ::= [constraint]::OCConstraint[relationshipConstraint]::OCRelationshipConstraint [constraintGroup]::OCConstraintGroup [primaryRole]::RolesList [primaryObjectDefinition]::QualifiedName [secondaryRole]::RolesList [secondaryObjectDefinition]::QualifiedName [minOccurs]::MinOccurs [maxOccurs]::MaxOccurs
OCConstraint ::= [objectConstraint]::ObjectConstraint
OCRelationshipConstraint ::= [objectConstraint_OC]::ObjectConstraint
OCConstraintGroup ::= [objectConstraint_OC]::ObjectConstraint
RelationshipConstraint ::= OBRelationshipConstraint
RelationshipConstraint ::= OCRelationshipConstraint
RelationshipConstraint ::= RCRelationshipConstraint
RelationshipConstraint ::= CGRelationshipConstraint
RelationshipConstraint ::= CDRelationshipConstraint
RelationshipConstraint ::= [constraint]::RCConstraint[relationshipConstraint]::RCRelationshipConstraint [objectConstraint]::RCObjectConstraint [constraintGroup]::RCConstraintGroup [relationshipDefinition]::QualifiedName [targetRole]::RolesList [targetObjectDefinition]::QualifiedName [minOccurs]::MinOccurs [maxOccurs]::MaxOccurs [delegationAware]::Boolean
RCConstraint ::= [relationshipConstraint]::RelationshipConstraint
RCRelationshipConstraint ::= [relationshipConstraint_RC]::RelationshipConstraint
RCObjectConstraint ::= [relationshipConstraint_RC]::RelationshipConstraint
RCConstraintGroup ::= [relationshipConstraint_RC]::RelationshipConstraint
ConstraintGroup ::= OBConstraintGroup
ConstraintGroup ::= RDConstraintGroup
ConstraintGroup ::= OCConstraintGroup
ConstraintGroup ::= RCConstraintGroup
ConstraintGroup ::= CDConstraintGroup
ConstraintGroup ::= [constraint]::CGConstraint[relationshipConstraint]::CGRelationshipConstraint [objectConstraint]::CGObjectConstraint
CGConstraint ::= [constraintGroup]::ConstraintGroup
CGRelationshipConstraint ::= [constraintGroup_CG]::ConstraintGroup
CGObjectConstraint ::= [constraintGroup_CG]::ConstraintGroup
StructuralConstraint ::= ObjectConstraint
StructuralConstraint ::= RelationshipConstraint
StructuralConstraint ::= ConstraintGroup
StructuralConstraint ::= [description]::Description [designData]::DesignData [name]::SimpleName [evaluate]::ConstraintEvaluation [raiseError]::Boolean [returnEarly]::Boolean
ConstraintDefinition ::= SDMConstraintDefinition
ConstraintDefinition ::= [relationshipConstraint]::CDRelationshipConstraint[constraintGroup]::CDConstraintGroup [objectConstraint]::CDObjectConstraint [constraint]::CDConstraint [targetDefinition]::QualifiedName [returnEarly]::Boolean
CDRelationshipConstraint ::= [constraintDefinition]::ConstraintDefinition
CDConstraintGroup ::= [constraintDefinition]::ConstraintDefinition
CDObjectConstraint ::= [constraintDefinition]::ConstraintDefinition
CDConstraint ::= [constraintDefinition]::ConstraintDefinition
ConstraintMember ::= OBConstraint
ConstraintMember ::= RDConstraint
ConstraintMember ::= OCConstraint
ConstraintMember ::= RCConstraint
ConstraintMember ::= CGConstraint
ConstraintMember ::= CDConstraint
ConstraintMember ::=
[input]::Input
[raiseError]::Boolean [evaluate]::ConstraintEvaluationDefinition ::= ObjectDefinition
Definition ::= RelationshipDefinition
Definition ::= ConstraintDefinition
Definition ::= FlowDefinition
Definition ::= [description]::Description [designData]::DesignData [settingDeclaration]::DefSettingDeclaration[settingValue]::DefSettingValue [settingValueList]::DefSettingValueList [name]::SimpleName [manager]::QualifiedName [className]::String
DefSettingDeclaration ::= [definition_DSD]::Definition
DefSettingValue ::= [definition]::Definition
DefSettingValueList ::= [definition]::Definition
SimpleName ::= [value]::String
QualifiedName ::= [value]::String
Path ::= [value]::String
SettingPath ::= [value]::String
NamespaceIdentity ::= ImportNamespaceIdentity
NamespaceIdentity ::= [name]::Path [version]::FourPartVersionType [publicKey]::PublicKeyType [publicKeyToken]::PublicKeyTokenType [culture]::CultureNeutral [platform]::Platform
FlowDefinition ::= [description]::Description [designData]::DesignData [settingDeclaration]::DefSettingDeclaration[settingValue]::DefSettingValue [settingValueList]::DefSettingValueList [name]::SimpleName [manager]::QualifiedName [className]::String
FlowMember ::= OBFlow
FlowMember ::= RDFlow
FlowMember ::= [input]::Input[output]::Output
ValueTransfer ::= Output
ValueTransfer ::= Input
ValueTransfer ::= [name]::SimpleName [path]::SettingPath [cast]::Boolean [convert]::Boolean
Output ::= [fixed]::Boolean [replace]::Boolean
Input ::= [name]::SimpleName [path]::SettingPath [cast]::Boolean [convert]::Boolean
SettingDefinitions ::= [nameSpace]::NameSpace [manager]::QualifiedName [clrNameSpace]::String
SettingMember ::= DefSettingDeclaration
SettingMember ::=
[facet]::Facet
[settingAttributes]::SettingsAttributesSettingsAttributes ::= [list]::Boolean [access]::SettingMemberAccess [secure]::SettingMemberSecure [deploymentTime]::Boolean [required]::Boolean [canBeNull]::Boolean [elementsCanBeNull]::Boolean [defaultRead]::String [defaultWrite]::String
SettingMemberAccess ::= [ReadWrite]::ε [ReadOnly]::ε [WriteOnly]::ε
SettingMemberSecure ::= [Always]::ε [PerInstance]::ε [Never]::ε
Facet ::= [name]::SimpleName
SettingValue ::= MembSettingValue
SettingValue ::= DefSettingValue
SettingValue ::=
[contents]::String
[settingValueAttributes]::SettingValueAttributesSettingValueList ::= MembSettingValueList
SettingValueList ::= DefSettingValueList
SettingValueList ::=
[value]::Value
[settingValueAttributes]::SettingValueAttributesValue ::=
[contents]::String
[null]::BooleanSettingValueAttributes ::= [path]::SettingPath [null]::Boolean [fixed]::Boolean [unset]::Boolean [definition]::QualifiedName [convert]::Boolean [secure]::Boolean [reference]::Boolean
Description ::=
[entry]::Entry
[resourceId]::String [manager]::QualifiedNameEntry ::= [description]::Description
DescriptionEntry ::= Entry
DescriptionEntry ::= [name]::String [resourceId]::String [manager]::QualifiedName [substitute]::Substitute
Substitute ::= [descriptionEntry]::DescriptionEntry
PathList ::= Substitute
PathList ::=
[settingPath]::SettingPath
MaxOccurs ::= [value]::String
MinOccurs ::= [value]::String
FourPartVersionType ::= [value]::String
PublicKeyType ::= [value]::String
PublicKeyTokenType ::= [value]::String
CompilationHashType ::= [value]::String
RolesList ::= [Host]::ε [Guest]::ε [Parent]::ε [Member]::ε [Source]::ε [Dependent]::ε [Proxy]::ε [Delegate]::ε [Client]::ε [Server]::ε
Culture ::= [value]::String
CultureNeutral ::= [value]::String
ProcessorArchitectures ::= [x86]::ε [ia64]::ε [amd64]::ε [wow64]::ε [msil]::ε [shx]::ε [arm]::ε [data]::ε
Platform ::= [x86]::ε [ia64]::ε [amd64]::ε [wow64]::ε [msil]::ε [shx]::ε [arm]::ε [data]::ε [*]::ε [neutral]::ε
ConstraintEvaluation ::= [Design]::ε [Never]::ε
Element ::= NameSpace
Element ::= SimpleName
Element ::= QualifiedName
Element ::= Path
Element ::= SettingPath
Element ::= MaxOccurs
Element ::= MinOccurs
Element ::= FourPartVersionType
Element ::= PublicKeyType
Element ::= PublicKeyTokenType
Element ::= CompilationHashType
Element ::= Culture
Element ::= CultureNeutral
Element ::= [value]::String