Stereotypes of the .Net WCF profile

This content applies to version 7.5.1 or later. The .Net WCF profile contains stereotypes that you can apply to classes and other UML elements to represent Windows Communication Foundation (WCF) components. Each stereotype has a set of previously defined valid attributes and types.

The following table lists the stereotypes of the profile and their related attributes and types.

Note: In most instances, do not apply more than one stereotype to a UML model element. There can be scenarios where more than one stereotype can be applied. For example, a field might or might not have a «CSharp Field» stereotype. If the field is a pointer, it requires the «CSharp Pointer» stereotype. Also, if the type of the field is an array, it requires the «CSharp Array» stereotype. In this case, the UML property can have three stereotypes: «CSharp Field», «CSharp Pointer», and «CSharp Array».
Stereotype Applicable to Stereotype properties Type (Default value)
«CallbackBehavior» Class

AutomaticSessionShutdown
ConcurrencyMode
IgnoreExtensionDateObject
IncludeExceptionDetailInFaults
MaxItemsInObjectGraph
TransactionIsolationLevel
TransactionTimeout
UseSynchronizationContext
ValidateMustUnderstand

Boolean (True)
ConcurrencyMode (Single)
Boolean (False)
Boolean (False)
Integer (65536)
IsolationLevel (Unspecified)
String
Boolean (True)
Boolean (True)

«CollectionDataContract» Class, struct

ItemName
KeyName
Name
Namespace
Valuename

String
String
String
String
String

«DataContract» Class, struct, enumeration

Name
Namespace

String
String

«DataMember» Property, field

EmitDefaultValue
IsRequired
Name
Order

Boolean (True)
Boolean (False)
String
Integer (-1)

«DataContractFormat» Class, interface, method

Style

OperationFormatStyle (Document)

«DeliveryRequirements» Class, interface

QueuedDeliveryRequirements
RequireOrderedDelivery
TargetContract

QueuedDeliveryRequirementsMode (Allowed)
Boolean (False)
Type

«EnumMember» Enumeration literal Value String
«FaultContract» Method

DetailType
Name
Namespace
ProtectionLevel
Action

Type
String
String
ProtectionLevel (None)
String

«KnownType» Class, struct

MethodName
Type

String
Type

«MessageBodyMember» Property, field

Order
Name
Namespace
ProtectionLevel

Integer (-1)
String
String
ProtectionLevel (None)

«MessageContract» Class, struct

ProtectionLevel
IsWrapped
WrapperName
WrapperNamespace

ProtectionLevel (None)
Boolean (True)
String
String

«MessageHeaderArray» Property, field

Actor
MustUnderstand
Relay
Name
Namespace
ProtectionLevel

String
Boolean (False)
Boolean (False)
String
String
ProtectionLevel (None)

«MessageHeader» Property, field

Actor
MustUnderstand
Relay
Name
Namespace
ProtectionLevel

String
Boolean (False)
Boolean (False)
String
String
ProtectionLevel (None)

«MessageParameter» Parameter, return parameter

Name

String

«MessageProperty» Property, field Name String
«OperationBehavior» Method

AutoDisposeParameters
Impersonation
ReleaseInstanceMode
TransactionAutoComplete
TransactionScopeRequired

Boolean (True)
ImpersonationOption (NotAllowed)
ReleaseInstanceMode (None)
Boolean (True)
Boolean (False)

«OperationContract» Method

Action
AsyncPattern
ProtectionLevel
IsInitiating
IsTerminating
IsOneWay
Name
ReplyAction

String
Boolean (False)
ProtectionLevel (None)
Boolean (True)
Boolean (False)
Boolean (False)
String
String

«OnDeserialized» Method Not applicable Not applicable
«OnDeserializing» Method Not applicable Not applicable
«OnSerialized» Method Not applicable Not applicable
«OnSerializing» Method Not applicable Not applicable
«OptionalField» Field VersionAdded Integer (1)
«PeerHopCount» Property, field    
«ServiceBehavior» Class

AddressFilterMode
AutomaticSessionShutDown
ConcurrencyMode
ConfigurationName
IgnoreExtensionDataObject
IncludeExceptionDetailInFaults
InstanceContextMode
MaxItemsInObjectGraph
Name
Namespace
ReleaseServiceInstanceOnTransactionComplete
TransactionAutoCompleteOnSessionClose
TransactionIsolationLevel
TransactionTimeout
UseSynchronizationContext
ValidateMustUnderstand

AddressFilterMode (Exact)
Boolean (True)
ConcurrencyMode (Single)
String
Boolean (False)
Boolean (False)
InstanceContextMode (PerSession)
Integer (65536)
String
String
Boolean (True)
Boolean (False)
IsolationLevel (Unspecified)
String
Boolean (True)
Boolean (True)

«ServiceContract» Class, interface

CallbackContract
ConfigurationName
ProtectionLevel
Name
Namespace
SessionMode

Type
String
ProtectionLevel (None)
String
String
SessionMode (Allowed)

«ServiceKnownType» Class, method, interface

DeclaringType
MethodName
Type

Type
String
Type

«TransactionFlow» Method

Transactions

TransactionFlowOption

«XmlSerializerFormat» Class, interface, method

Style
Use

OperationFormatStyle (Document)
OperationFormatUse (Literal)


Feedback