Following is a fairly simple model for Party based on the TMF. The intent is to start with a simple model, and grow it as needed.
The need for the party concept includes:
- Vnfs are onboarded from vendors.
A Vendor is a party role. - The license model presently in ASDC also makes use of the Vendor concept.
Such agreements are between vendors and service providers (another party role). - The concept of Customer is also modeled (a 3rd party role).
It can be discussed if the concept of Customer is in scope for ONAP.
It is assumed that this will be an R5 item.
1.1 Diagrams
1.1.1 Basic Party
1.1.2 Party Names
1.1.3 Party Roles
1.2 Classes
1.2.1 AtomicOrganization
AtomicOrganization is a type of Organization that does not have any subordinate Organization. That is, an AtomicOrganization is a leaf-level Organization.
Parent class: Organization
Applied stereotypes:
- Experimental
- Reference
- reference: From TMF SID
- OpenModelClass
- support: MANDATORY
1.2.2 CompositeOrganization
CompositeOrganizaiton is a type of Organization that is formed by aggregating other Organizations, which may be atomic or composite Organizations.
Parent class: Organization
Applied stereotypes:
- Experimental
- Reference
- reference: From TMF SID
- OpenModelClass
- support: MANDATORY
1.2.3 Customer
A person or organization that buys products and services from the enterprise or receives free offers or services. This is modeled as a Party playing the role of Customer. A Customer is a type of PartyRole. Customers can also be other service providers who resell the enterprises products, other service providers that lease the enterprise's resources for utilization by the other service provider's products and services, and so forth.
Parent class: PartyRole
Applied stereotypes:
- Experimental
- Reference
- reference: From TMF SID
- OpenModelClass
- support: MANDATORY
1.2.4 Individual
Represents a single human being (a man, woman or child). The individual could be a customer, an employee or any other person that the organization needs to store information about. An Individual is a type of Party.
Parent class: Party
Applied stereotypes:
- Experimental
- Reference
- reference: From TMF SID
- OpenModelClass
- support: MANDATORY
1.2.5 IndividualName
A word, term, or phrase by which an individual is known and distinguished from other individuals.A name is an informal way of identifying an object [Fowler]This entity allows for international naming variations. An IndividualName is a type of PartyName.
Parent class: PartyName
Applied stereotypes:
- Experimental
- Reference
- reference: From TMF SID
- OpenModelClass
- support: MANDATORY
1.2.6 Organization
A group of people identified by shared interests or purpose. Examples include business, department, enterprise. Because of the complex nature of many businesses, both organizations and organization units are represented by the same business entity in this model. An Organization is a type of Party. An Organization might be composite or atomic.
Parent class: Party
Applied stereotypes:
- Experimental
- Reference
- reference: From TMF SID
- OpenModelClass
- support: MANDATORY
1.2.7 OrganizationDecompositionComponent
The OrganizationDecompositionComponent specifies the valid period for the relationship between CompositeOrganization and Organization.
Applied stereotypes:
- Experimental
- Reference
- reference: From TMF SID
- OpenModelClass
- support: MANDATORY
Attribute Name | Type | Mult. | Stereotypes | Description |
validFor | TimePeriod | 1 | OpenModelAttribute · isInvariant: false · valueRange: no range constraint · support: MANDATORY | The period during which the OrganizationDecompostionComponent is applicable. |
1.2.8 OrganizationName
A word, term, or phrase by which an organization is known and distinguished from other organizations.A name is an informal way of identifying an object [Fowler]An OrganizationName is a type of PartyName.
Parent class: PartyName
Applied stereotypes:
- Experimental
- Reference
- reference: From TMF SID
- OpenModelClass
- support: MANDATORY
1.2.9 Party
A Party represents an individual or an organization, or an organization unit that are of interest, involved or that provide value directly or indirectly from an enterprise perspective (Enterprise is to be understood here as provider, service provider or operator).
Parent class: RootEntity
Applied stereotypes:
- Experimental
- Reference
- reference: From TMF SID
- OpenModelClass
- support: MANDATORY
Attribute Name | Type | Mult. | Stereotypes | Description |
validFor | TimePeriod | 1 | OpenModelAttribute · isInvariant: false · valueRange: no range constraint · support: MANDATORY Experimental | The time period that the Party is valid for |
name | String | 0..1 | OpenModelAttribute · isInvariant: false · valueRange: no range constraint · support: MANDATORY Preliminary | Represents a user-friendly identifier of an object. It is a (possibly ambiguous) name by which the object is commonly known in some limited scope (such as an organization) and conforms to the naming conventions of the country or culture with which it is associated. It is NOT used as a naming attribute (i.e., to uniquely identify an instance of the object). |
description | String | 0..1 | OpenModelAttribute · isInvariant: false · valueRange: no range constraint · support: MANDATORY Preliminary | Defines a textual free-form description of the object. |
id | Identifier | 1 | OpenModelAttribute · isInvariant: false · valueRange: no range constraint · support: MANDATORY Preliminary | Unambiguously distinguishes different object instances. It is the naming attribute of the object. Identifier of this information element. This attribute shall be globally unique. |
1.2.10 PartyName
A word, term, or phrase by which a party (individual or organization) is known and distinguished from other parties.A name is an informal way of identifying an object [Fowler].PartyName is an abstract concept that should be used in places where the business refers to an organization name, organization unit name or individual name
Applied stereotypes:
- Experimental
- Reference
- reference: From TMF SID
- OpenModelClass
- support: MANDATORY
1.2.11 PartyRole
The part played by a party in a given context with any characteristics, such as expected pattern of behavior, attributes, and/or associations that it entails.PartyRole is an abstract concept that should be used in places where the business refers to a Party playing a Role
Parent class: RootEntity
Applied stereotypes:
- Experimental
- Reference
- reference: From TMF SID
- OpenModelClass
- support: MANDATORY
Attribute Name | Type | Mult. | Stereotypes | Description |
status | String | 1 | OpenModelAttribute · isInvariant: false · valueRange: no range constraint · support: MANDATORY | Used to track the lifecycle status, e.g. existing, prospective or former customers. |
validFor | TimePeriod | 1 | OpenModelAttribute · isInvariant: false · valueRange: no range constraint · support: MANDATORY | The time period that the PartyRole is valid for |
name | String | 0..1 | OpenModelAttribute · isInvariant: false · valueRange: no range constraint · support: MANDATORY Preliminary | Represents a user-friendly identifier of an object. It is a (possibly ambiguous) name by which the object is commonly known in some limited scope (such as an organization) and conforms to the naming conventions of the country or culture with which it is associated. It is NOT used as a naming attribute (i.e., to uniquely identify an instance of the object). |
description | String | 0..1 | OpenModelAttribute · isInvariant: false · valueRange: no range constraint · support: MANDATORY Preliminary | Defines a textual free-form description of the object. |
id | Identifier | 1 | OpenModelAttribute · isInvariant: false · valueRange: no range constraint · support: MANDATORY Preliminary | Unambiguously distinguishes different object instances. It is the naming attribute of the object. Identifier of this information element. This attribute shall be globally unique. |
1.2.12 PartyRoleSpecification
The definition of a role a party may play.
Applied stereotypes:
- Experimental
- Reference
- reference: From TMF SID
- OpenModelClass
- support: MANDATORY
1.2.13 ServiceProvider
An organization or individual which offers services and products to others in exchange for payment in some form.
Parent class: PartyRole
Applied stereotypes:
- Experimental
- Reference
- reference: From TMF SID
- OpenModelClass
- support: MANDATORY
1.2.14 Vendor
An individual or organization that sells goods or services to somone else in the value fabric.
Parent class: PartyRole
Applied stereotypes:
- Experimental
- Reference
- reference: From TMF SID
- OpenModelClass
- support: MANDATORY