Monday, October 27, 2003 X-Change Technologies—Compliance proposal 1 Naming Proposal by X-Change Technologies.

Post on 01-Apr-2015

221 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

Transcript

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 1

Naming

Proposal byX-Change Technologies

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 2

Goals

• A naming scheme using a single namespace, for builders of generic model access and manipulation tools

• A single approved naming scheme that provides an identifier for each distinct element of the MOF, infrastructure, and superstructure metamodels (as does the current naming scheme)

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 3

This proposal

This proposal is for discussion and agreement in principle. It does not provide the full details that will be needed for the specification. These can be worked out once agreement is principle is reached.

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 4

This proposal

This proposal is concrete…

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 5

Outline

• Goals• org.omg.UML2, as proposed by IBM• Unique names for every class, as

in the final adopted specification• More than one name for a MOF

object• The goals, met

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 6

ODP::Namespace

2-12.3 Name space: A set of terms usable as names.

www.joaquin.net/ODP/Part2/12.html

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 7

UML2NamesThe set containing every model element

name used in a UML package or model is an ODP::namespace.

In particular, the set containing every model element name used in the UML 2 metamodel.

Let’s call that set ‘UML2Names’:{‘Class’ ‘Property’ ‘Package’ ‘Action’ …}

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 8

org.omg.UML2

Let’s have a package named, ‘org.omg.UML2’.

In fact, if this is the IBM proposal, let’s have a lot of packages with that name.

(This, our proposal, is silent on how to manage all those many packages.)

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 9

Names in org.omg.UML2

Consider the package, org.omg.UML2(the biggest such package, for the moment)

Name each element in that package with the obvious name from the set, UML2Names

The fully qualified name of an element in that package is ‘org.omg.UML2::<name>’, where <name> is the name of that element, from UML2Names.

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 10

Them other packages

And the same for all the smaller packages named, ‘org.omg.UML2’.

Name the elements in these packages the same way.

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 11

The first goal

This meets the first goal: A naming scheme using a single namespace, for builders of generic model access and manipulation tools

Whichever of the classes named ‘Class’ in the UML metamodel we provide, a tool can call this class, ‘org.omg.UML2::Class’

This avoids type casting in the tool.

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 12

FineGrainPackage

Consider any package from the current metamodels, say, Kernel::Class

Name each element in that package with the obvious name from the set, UML2Names, just as it is now named.

The fully qualified name of an element in that package is ‘Kernel::Class::<name>’, where <name> is the name of that element, from UML2Names

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 13

First Class Namespace

Enable the specification of more than one name for an element in a package,

each name being an identifier.

2-12.2 Identifier: An unambiguous name, in a given naming context.

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 14

ODP::Naming context

2-12.4 Naming context: A relation between a set of names and a set of [model elements]. The set of names belongs to a single name space.

A package, for example, specifies a relation between a set of elements (those in the package) and a set of names (their names).

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 15

The second goal

This enables meeting the second goal: An identifier for each distinct element of the MOF, infrastructure and superstructure metamodels

Whichever of the classes named ‘Class’ in the UML metamodel a tool is calling, ‘org.omg.UML2::Class’, we can call this class by a name that is an identifier.

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 16

Whatever we call them

We are not proposing today that UML conform to ODP concept names.

Whatever we call the concepts, use these concepts (name, namespace, naming context, identifier) to permit the UML and MOF specifications to provide more than one identifier for each element of a metamodel.

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 17

Both goals met

Now, an element in a particular package can have two identifiers, each meeting one of the goals.

Example: two names of the same class:

‘Kernel::Classes::Class’ ‘org.omg.UML2::Class’

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 18

Yes: Both goals met

Now, an element in a particular package can have two identifiers, each meeting one of the goals.

Example: the same class, listed twice: Kernel::Classes::Class org.omg.UML2::Classunambiguosly, using identifiers

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 19

Yes: Identifiers

‘org.omg.UML2::Class’ is an identifier.

That’s because the tools we are talking about will handle only one of the many classes named, ‘Class’, at a time.

The name is unambiguos in any given context: it names the Class the tool is currently handling

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 20

Correction requested

Is the following statement wrong?

The tools we are talking about will handle only one of the many classes named, ‘Class’, at a time.

If so, please correct us.And explain what it is we have

mistaken.Thanks.

Monday, October 27, 2003 X-Change Technologies—Compliance proposal 21

RequestIn addition to the correction requested

on the previous slide:X-Change Technologies requests:• comments that improve this proposal

or provide necessary additional detail, • an alternate proposal

that meets the same goals, or • correction of our misstatement of the

goals.

top related