Issue 9466: Multiple classifiers for an instance in MOF and RDF as defined in ODM (mof2core-rtf) Source: Model Driven Solutions (Mr. Cory B. Casanave, cory-c(at)modeldriven.com) Nature: Uncategorized Issue Severity: Summary: This is a question involving ODM as well as MOF XMI and Life-cycle. In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. But can you? In RDF & OWL an instance (at any M level) can have (and frequently does have) multiple types – it is classified by more than one class. While this is perfectly legal in UML and even in the MOF meta model, I don’t think the concept is supported in XMI or the current life-cycle. So, can you actually represent RDF in MOF? If not, the ODM models are not valid – I hope I am wrong about this. The ability for an instance to be classified by more than one class is a major advantage of RDF and of ontology languages, the C++ heritage in MOF of an instance statically being a member of a single class puts MOF at a disadvantage in relation to these other technologies. It makes it very difficult to represent different aspects of an instance, as can be seen from the package merge complexities - which would not have been required is we had multiple classification in MOF. If this is actually a semantic mis-match between MOF and ODM, is may make more sense to add the capability to MOF since the MOF meta model does not preclude this capability – it is only a restriction of the MOF-PSM (XMI). Resolution: Revised Text: Actions taken: March 22, 2006: received issue January 20, 2011: closed issue; Closed; No Change April 25, 2011: closed issue Discussion: This is outside the scope of the RTF and is being addressed by the SMOF RFP Disposition: Closed, no change End of Annotations:===== m: "Cory Casanave" To: , Subject: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Tue, 3 Jan 2006 23:11:42 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcYQ5PM8x8wmoKDkScKg49Vh+9FT1Q== X-OriginalArrivalTime: 04 Jan 2006 04:11:45.0443 (UTC) FILETIME=[F9B22F30:01C610E4] This is a question involving ODM as well as MOF XMI and Life-cycle. In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. But can you? In RDF & OWL an instance (at any M level) can have (and frequently does have) multiple types . it is classified by more than one class. While this is perfectly legal in UML and even in the MOF meta model, I don.t think the concept is supported in XMI or the current life-cycle. So, can you actually represent RDF in MOF? If not, the ODM models are not valid . I hope I am wrong about this. The ability for an instance to be classified by more than one class is a major advantage of RDF and of ontology languages, the C++ heritage in MOF of an instance statically being a member of a single class puts MOF at a disadvantage in relation to these other technologies. It makes it very difficult to represent different aspects of an instance, as can be seen from the package merge complexities - which would not have been required is we had multiple classification in MOF. If this is actually a semantic mis-match between MOF and ODM, is may make more sense to add the capability to MOF since the MOF meta model does not preclude this capability . it is only a restriction of the MOF-PSM (XMI). Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Wed, 4 Jan 2006 09:27:05 -0600 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Multiple classifiers for an instance in MOF and RDF as defined in ODM Thread-Index: AcYQ5PM8x8wmoKDkScKg49Vh+9FT1QAW/CEQ From: "Cummins, Fred A" To: "Cory Casanave" , , X-OriginalArrivalTime: 04 Jan 2006 15:27:19.0793 (UTC) FILETIME=[5A0D2610:01C61143] Cory, This is a meta-discussion, so my explanation may not be the best, but I'll give it a try. I believe we are mixing two different meta-meta-models here. There is the MOF meta meta model that can be used to represent (i.e., implement) other languages. A represented language may have its own meta-meta-model. The MOF implementation represents all meta levels as simply MOF classes and instances. The classic example is a manfacturing application. There are parts (instances), and there are part specifications (classes), but a manufacturing application should not create an OO class for each part specification. Both the part and the specification are instances of OO classes. As we get into more sophisticated modeling languages, they will be reflective--capable of describing themselves. To do this they have their own meta-concepts. From a MOF standpoint, these are just more concepts that have IsA relationships between types and instances of the specified language. I don't believe MOF needs to be, or should be extended. Fred -------------------------------------------------------------------------------- From: Cory Casanave [mailto:cbc@enterprisecomponent.com] Sent: Tuesday, January 03, 2006 11:12 PM To: ontology@omg.org; adtf@omg.org Subject: Multiple classifiers for an instance in MOF and RDF as defined in ODM This is a question involving ODM as well as MOF XMI and Life-cycle. In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. But can you? In RDF & OWL an instance (at any M level) can have (and frequently does have) multiple types . it is classified by more than one class. While this is perfectly legal in UML and even in the MOF meta model, I don.t think the concept is supported in XMI or the current life-cycle. So, can you actually represent RDF in MOF? If not, the ODM models are not valid . I hope I am wrong about this. The ability for an instance to be classified by more than one class is a major advantage of RDF and of ontology languages, the C++ heritage in MOF of an instance statically being a member of a single class puts MOF at a disadvantage in relation to these other technologies. It makes it very difficult to represent different aspects of an instance, as can be seen from the package merge complexities - which would not have been required is we had multiple classification in MOF. If this is actually a semantic mis-match between MOF and ODM, is may make more sense to add the capability to MOF since the MOF meta model does not preclude this capability . it is only a restriction of the MOF-PSM (XMI). X-IronPort-AV: i="3.99,330,1131339600"; d="scan'208"; a="191369648:sNHT32660364" Date: Wed, 04 Jan 2006 11:27:10 -0500 From: "Manfred R. Koethe" User-Agent: Mozilla Thunderbird 1.0.6 (Windows/20050716) X-Accept-Language: en-us, en To: Cory Casanave CC: ontology@omg.org, adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Cory, You are correct that the MOF metamodel has dynamic typing capabilities built in, they just have to be utilized... However, I like to correct you in one thing: You wrote in your last sentence "... the MOF-PSM (XMI)". Here is my take on that: 1. There is no such thing as *THE* PSM for a PIM. Any PIM may be mapped to an infinite number of PSMs, and there is no guarantee that any of these PSMs is a *complete* representation of the PIM. 2. XMI is *NOT* "THE" MOF PSM. It is actually a model transport representation, allowing the *transportation* of a model (on whatsoever M-level) from one MOF implementation to another MOF implementation and allowing a rebuilding of a (hopefully) semantically complete replication of the model in the target MOF implementation. 3. As I said, XMI is a *transportation* technology. It is restricted by the capabilities of its underlying technology (XML Schema). It was never intended as a *runtime* representation, any use of XMI as a runtime format is (IMHO) a regretful and serious mistake. XMI is a compromise to make model exchange (and archiving) possible for a wide community. It lives from techniques of *rebuilding* a runtime model out of its transport representation. Btw., the thing you are bringing up here is nothing new (just the names are different...). ISO 10303 (STEP) is dealing with the very same issue since more than 15 years.... [what we can learn from history is that we don't learn from history...] Kind regards, Manfred Cory Casanave wrote: This is a question involving ODM as well as MOF XMI and Life-cycle. In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. But can you? In RDF & OWL an instance (at any M level) can have (and frequently does have) multiple types ­ it is classified by more than one class. While this is perfectly legal in UML and even in the MOF meta model, I don.t think the concept is supported in XMI or the current life-cycle. So, can you actually represent RDF in MOF? If not, the ODM models are not valid ­ I hope I am wrong about this. The ability for an instance to be classified by more than one class is a major advantage of RDF and of ontology languages, the C++ heritage in MOF of an instance statically being a member of a single class puts MOF at a disadvantage in relation to these other technologies. It makes it very difficult to represent different aspects of an instance, as can be seen from the package merge complexities - which would not have been required is we had multiple classification in MOF. If this is actually a semantic mis-match between MOF and ODM, is may make more sense to add the capability to MOF since the MOF meta model does not preclude this capability ­ it is only a restriction of the MOF-PSM (XMI). -- ___________________ / Manfred R. Koethe \_____________________________________ 88solutions Corp. E-Mail: koethe@88solutions.com 37 Mague Avenue Tel: +1 (617) 848 0525 Newton, MA 02465-1553 FAX: +1 (617) 848 8819 U.S.A. _____________________________"We make your business flow"_ From: "Larry L. Johnson" To: "'Manfred R. Koethe'" Cc: , Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Wed, 4 Jan 2006 12:05:47 -0500 X-Mailer: Microsoft Outlook, Build 10.0.6626 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - capricorn.lunarpages.com X-AntiAbuse: Original Domain - omg.org X-AntiAbuse: Originator/Caller UID/GID - [0 0] / [47 12] X-AntiAbuse: Sender Address Domain - TethersEnd.com X-Source: X-Source-Args: X-Source-Dir: Hi Manfred, I.ll ignore the red herring PIM/PSM stuff & leave it that I know what Cory meant. (He didn.t even imply there is only one PSM per PIM... whatever PIM & PSM mean). The key issue in Cory.s memo is an instance being of multiple types, not necessarily through transitive type casting up an .is-a. tree. To what degree does the MOF dynamic typing support this? ISO 10303 does allow an instance to be of multiple types, but only of multiple subtypes of some common supertype (categorical as opposed to partitioning subtyping). Though if you disagree, I defer without further argument to your deeper knowledge of EXPRESS. Regards, Larry -----Original Message----- From: Manfred R. Koethe [mailto:koethe@88solutions.com] Sent: Wednesday, January 04, 2006 11:27 AM To: Cory Casanave Cc: ontology@omg.org; adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Cory, You are correct that the MOF metamodel has dynamic typing capabilities built in, they just have to be utilized... However, I like to correct you in one thing: You wrote in your last sentence "... the MOF-PSM (XMI)". Here is my take on that: 1. There is no such thing as *THE* PSM for a PIM. Any PIM may be mapped to an infinite number of PSMs, and there is no guarantee that any of these PSMs is a *complete* representation of the PIM. 2. XMI is *NOT* "THE" MOF PSM. It is actually a model transport representation, allowing the *transportation* of a model (on whatsoever M-level) from one MOF implementation to another MOF implementation and allowing a rebuilding of a (hopefully) semantically complete replication of the model in the target MOF implementation. 3. As I said, XMI is a *transportation* technology. It is restricted by the capabilities of its underlying technology (XML Schema). It was never intended as a *runtime* representation, any use of XMI as a runtime format is (IMHO) a regretful and serious mistake. XMI is a compromise to make model exchange (and archiving) possible for a wide community. It lives from techniques of *rebuilding* a runtime model out of its transport representation. Btw., the thing you are bringing up here is nothing new (just the names are different...). ISO 10303 (STEP) is dealing with the very same issue since more than 15 years.... [what we can learn from history is that we don't learn from history...] Kind regards, Manfred Cory Casanave wrote: > This is a question involving ODM as well as MOF XMI and Life-cycle. > > > > In ODM we have RDF and OWL defined as MOF meta models, the assumption > being, of course, that you can have MOF instances of RDF graphs. But > can you? In RDF & OWL an instance (at any M level) can have (and > frequently does have) multiple types . it is classified by more than one > class. While this is perfectly legal in UML and even in the MOF meta > model, I don.t think the concept is supported in XMI or the current > life-cycle. So, can you actually represent RDF in MOF? If not, the ODM > models are not valid . I hope I am wrong about this. > > The ability for an instance to be classified by more than one class is a > major advantage of RDF and of ontology languages, the C++ heritage in > MOF of an instance statically being a member of a single class puts MOF > at a disadvantage in relation to these other technologies. It makes it > very difficult to represent different aspects of an instance, as can be > seen from the package merge complexities - which would not have been > required is we had multiple classification in MOF. > > If this is actually a semantic mis-match between MOF and ODM, is may > make more sense to add the capability to MOF since the MOF meta model > does not preclude this capability . it is only a restriction of the > MOF-PSM (XMI). > -- ___________________ / Manfred R. Koethe \_____________________________________ 88solutions Corp. E-Mail: koethe@88solutions.com 37 Mague Avenue Tel: +1 (617) 848 0525 Newton, MA 02465-1553 FAX: +1 (617) 848 8819 U.S.A. _____________________________"We make your business flow"_ From: "Cory Casanave" To: "'Cummins, Fred A'" , , Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Wed, 4 Jan 2006 12:37:07 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcYQ5PM8x8wmoKDkScKg49Vh+9FT1QAW/CEQAATmHLA= X-OriginalArrivalTime: 04 Jan 2006 17:37:11.0029 (UTC) FILETIME=[7DFD6A50:01C61155] Fred, Perhaps but I don.t think so. There is no restriction in RDF as to what meta level it supports, I can have .instances. of multiple meta classes or classes. In addition Ontologies can contain instances. So I think we need to test this and see if arbitrary Ontologies (with multiple typs) can be imported into MOF and represented in the full suite of MOF technologies . including XMI and supported by MOF life-cycle. If you can.t represent an ontology in XMI I don.t see the spec as very useful. Again- perhaps I am wrong but lets not leave it to opinion . lets know. -Cory -------------------------------------------------------------------------------- From: Cummins, Fred A [mailto:fred.cummins@eds.com] Sent: Wednesday, January 04, 2006 10:27 AM To: Cory Casanave; ontology@omg.org; adtf@omg.org Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Cory, This is a meta-discussion, so my explanation may not be the best, but I'll give it a try. I believe we are mixing two different meta-meta-models here. There is the MOF meta meta model that can be used to represent (i.e., implement) other languages. A represented language may have its own meta-meta-model. The MOF implementation represents all meta levels as simply MOF classes and instances. The classic example is a manfacturing application. There are parts (instances), and there are part specifications (classes), but a manufacturing application should not create an OO class for each part specification. Both the part and the specification are instances of OO classes. As we get into more sophisticated modeling languages, they will be reflective--capable of describing themselves. To do this they have their own meta-concepts. From a MOF standpoint, these are just more concepts that have IsA relationships between types and instances of the specified language. I don't believe MOF needs to be, or should be extended. Fred -------------------------------------------------------------------------------- From: Cory Casanave [mailto:cbc@enterprisecomponent.com] Sent: Tuesday, January 03, 2006 11:12 PM To: ontology@omg.org; adtf@omg.org Subject: Multiple classifiers for an instance in MOF and RDF as defined in ODM This is a question involving ODM as well as MOF XMI and Life-cycle. In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. But can you? In RDF & OWL an instance (at any M level) can have (and frequently does have) multiple types . it is classified by more than one class. While this is perfectly legal in UML and even in the MOF meta model, I don.t think the concept is supported in XMI or the current life-cycle. So, can you actually represent RDF in MOF? If not, the ODM models are not valid . I hope I am wrong about this. The ability for an instance to be classified by more than one class is a major advantage of RDF and of ontology languages, the C++ heritage in MOF of an instance statically being a member of a single class puts MOF at a disadvantage in relation to these other technologies. It makes it very difficult to represent different aspects of an instance, as can be seen from the package merge complexities - which would not have been required is we had multiple classification in MOF. If this is actually a semantic mis-match between MOF and ODM, is may make more sense to add the capability to MOF since the MOF meta model does not preclude this capability . it is only a restriction of the MOF-PSM (XMI). Reply-To: From: "John C. Butler" To: "'Larry L. Johnson'" , "'Manfred R. Koethe'" , Cc: , Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Wed, 4 Jan 2006 14:33:06 -0500 Organization: Everware X-Mailer: Microsoft Office Outlook, Build 11.0.5510 Thread-Index: AcYRUZ4m7hKycvRoTKOUL3SgfoQB2gAEnwpg Hi Cory et al, My understanding of the MOF (though not as extensive as others on this thread) is that InstanceSpecification (I.m assuming this is what you mean by your use of Instance below) can have multiple Classifiers at the same time. Since Classifiers are specializations of Type it seems as though the issue you raise is not a problem for MOF. I must say that I don.t know enough about XMI to determine whether it can handle this or not though it would be silly if it didn.t. There is one point of confusion for me, however. There is a metaclass called TypedElement that can be related to at most one Type. InstanceSpecification is not a kind of TypedElement. Can someone explain that to me? I.d have thought that InstanceSpecification would be a specialization thereof and that the .classifier. association on it would be a specialization of the .type. association on TypedElement but apparently that.s not the case. Regards, - jb -------------------------------------------------------------------------------- From: Larry L. Johnson [mailto:Larry.Johnson@TethersEnd.com] Sent: Wednesday, January 04, 2006 12:06 PM To: 'Manfred R. Koethe' Cc: ontology@omg.org; adtf@omg.org Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Hi Manfred, I.ll ignore the red herring PIM/PSM stuff & leave it that I know what Cory meant. (He didn.t even imply there is only one PSM per PIM... whatever PIM & PSM mean). The key issue in Cory.s memo is an instance being of multiple types, not necessarily through transitive type casting up an .is-a. tree. To what degree does the MOF dynamic typing support this? ISO 10303 does allow an instance to be of multiple types, but only of multiple subtypes of some common supertype (categorical as opposed to partitioning subtyping). Though if you disagree, I defer without further argument to your deeper knowledge of EXPRESS. Regards, Larry -----Original Message----- From: Manfred R. Koethe [mailto:koethe@88solutions.com] Sent: Wednesday, January 04, 2006 11:27 AM To: Cory Casanave Cc: ontology@omg.org; adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Cory, You are correct that the MOF metamodel has dynamic typing capabilities built in, they just have to be utilized... However, I like to correct you in one thing: You wrote in your last sentence "... the MOF-PSM (XMI)". Here is my take on that: 1. There is no such thing as *THE* PSM for a PIM. Any PIM may be mapped to an infinite number of PSMs, and there is no guarantee that any of these PSMs is a *complete* representation of the PIM. 2. XMI is *NOT* "THE" MOF PSM. It is actually a model transport representation, allowing the *transportation* of a model (on whatsoever M-level) from one MOF implementation to another MOF implementation and allowing a rebuilding of a (hopefully) semantically complete replication of the model in the target MOF implementation. 3. As I said, XMI is a *transportation* technology. It is restricted by the capabilities of its underlying technology (XML Schema). It was never intended as a *runtime* representation, any use of XMI as a runtime format is (IMHO) a regretful and serious mistake. XMI is a compromise to make model exchange (and archiving) possible for a wide community. It lives from techniques of *rebuilding* a runtime model out of its transport representation. Btw., the thing you are bringing up here is nothing new (just the names are different...). ISO 10303 (STEP) is dealing with the very same issue since more than 15 years.... [what we can learn from history is that we don't learn from history...] Kind regards, Manfred Cory Casanave wrote: > This is a question involving ODM as well as MOF XMI and Life-cycle. > > > > In ODM we have RDF and OWL defined as MOF meta models, the assumption > being, of course, that you can have MOF instances of RDF graphs. But > can you? In RDF & OWL an instance (at any M level) can have (and > frequently does have) multiple types . it is classified by more than one > class. While this is perfectly legal in UML and even in the MOF meta > model, I don.t think the concept is supported in XMI or the current > life-cycle. So, can you actually represent RDF in MOF? If not, the ODM > models are not valid . I hope I am wrong about this. > > The ability for an instance to be classified by more than one class is a > major advantage of RDF and of ontology languages, the C++ heritage in > MOF of an instance statically being a member of a single class puts MOF > at a disadvantage in relation to these other technologies. It makes it > very difficult to represent different aspects of an instance, as can be > seen from the package merge complexities - which would not have been > required is we had multiple classification in MOF. > > If this is actually a semantic mis-match between MOF and ODM, is may > make more sense to add the capability to MOF since the MOF meta model > does not preclude this capability . it is only a restriction of the > MOF-PSM (XMI). > -- ___________________ / Manfred R. Koethe \_____________________________________ 88solutions Corp. E-Mail: koethe@88solutions.com 37 Mague Avenue Tel: +1 (617) 848 0525 Newton, MA 02465-1553 FAX: +1 (617) 848 8819 U.S.A. _____________________________"We make your business flow"_ From: "Ed Seidewitz" To: , "'Larry L. Johnson'" , "'Manfred R. Koethe'" , Cc: , Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Wed, 4 Jan 2006 14:49:32 -0500 Organization: Data Access Technologies X-Mailer: Microsoft Office Outlook, Build 11.0.6353 Thread-Index: AcYRUZ4m7hKycvRoTKOUL3SgfoQB2gAEnwpgAADPA+A= X-OriginalArrivalTime: 04 Jan 2006 19:49:37.0656 (UTC) FILETIME=[FE8C7780:01C61167] John -- TypedElement is generally used for "container" sorts of things that can "hold" values, like attributes and parameters. These always have a single type to which their contents must conform. An InstanceSpecification, on the other hand, is a model of an instance, which is one of the things that can be held by TypedElements. UML allows instances to be multiply classified. A TypedElement can hold an instance for which any of its classifiers conforms to the type of the TypedElement. (UML minutiae I can answer about. Cory's question I am still trying to understand...) -- Ed -------------------------------------------------------------------------------- From: John C. Butler [mailto:jbutler@everware.com] Sent: Wednesday, January 04, 2006 2:33 PM To: 'Larry L. Johnson'; 'Manfred R. Koethe'; cory-c@enterprisecomponent.com Cc: ontology@omg.org; adtf@omg.org Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Hi Cory et al, My understanding of the MOF (though not as extensive as others on this thread) is that InstanceSpecification (I.m assuming this is what you mean by your use of Instance below) can have multiple Classifiers at the same time. Since Classifiers are specializations of Type it seems as though the issue you raise is not a problem for MOF. I must say that I don.t know enough about XMI to determine whether it can handle this or not though it would be silly if it didn.t. There is one point of confusion for me, however. There is a metaclass called TypedElement that can be related to at most one Type. InstanceSpecification is not a kind of TypedElement. Can someone explain that to me? I.d have thought that InstanceSpecification would be a specialization thereof and that the .classifier. association on it would be a specialization of the .type. association on TypedElement but apparently that.s not the case. Regards, - jb -------------------------------------------------------------------------------- From: Larry L. Johnson [mailto:Larry.Johnson@TethersEnd.com] Sent: Wednesday, January 04, 2006 12:06 PM To: 'Manfred R. Koethe' Cc: ontology@omg.org; adtf@omg.org Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Hi Manfred, I.ll ignore the red herring PIM/PSM stuff & leave it that I know what Cory meant. (He didn.t even imply there is only one PSM per PIM... whatever PIM & PSM mean). The key issue in Cory.s memo is an instance being of multiple types, not necessarily through transitive type casting up an .is-a. tree. To what degree does the MOF dynamic typing support this? ISO 10303 does allow an instance to be of multiple types, but only of multiple subtypes of some common supertype (categorical as opposed to partitioning subtyping). Though if you disagree, I defer without further argument to your deeper knowledge of EXPRESS. Regards, Larry -----Original Message----- From: Manfred R. Koethe [mailto:koethe@88solutions.com] Sent: Wednesday, January 04, 2006 11:27 AM To: Cory Casanave Cc: ontology@omg.org; adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Cory, You are correct that the MOF metamodel has dynamic typing capabilities built in, they just have to be utilized... However, I like to correct you in one thing: You wrote in your last sentence "... the MOF-PSM (XMI)". Here is my take on that: 1. There is no such thing as *THE* PSM for a PIM. Any PIM may be mapped to an infinite number of PSMs, and there is no guarantee that any of these PSMs is a *complete* representation of the PIM. 2. XMI is *NOT* "THE" MOF PSM. It is actually a model transport representation, allowing the *transportation* of a model (on whatsoever M-level) from one MOF implementation to another MOF implementation and allowing a rebuilding of a (hopefully) semantically complete replication of the model in the target MOF implementation. 3. As I said, XMI is a *transportation* technology. It is restricted by the capabilities of its underlying technology (XML Schema). It was never intended as a *runtime* representation, any use of XMI as a runtime format is (IMHO) a regretful and serious mistake. XMI is a compromise to make model exchange (and archiving) possible for a wide community. It lives from techniques of *rebuilding* a runtime model out of its transport representation. Btw., the thing you are bringing up here is nothing new (just the names are different...). ISO 10303 (STEP) is dealing with the very same issue since more than 15 years.... [what we can learn from history is that we don't learn from history...] Kind regards, Manfred Cory Casanave wrote: > This is a question involving ODM as well as MOF XMI and Life-cycle. > > > > In ODM we have RDF and OWL defined as MOF meta models, the assumption > being, of course, that you can have MOF instances of RDF graphs. But > can you? In RDF & OWL an instance (at any M level) can have (and > frequently does have) multiple types . it is classified by more than one > class. While this is perfectly legal in UML and even in the MOF meta > model, I don.t think the concept is supported in XMI or the current > life-cycle. So, can you actually represent RDF in MOF? If not, the ODM > models are not valid . I hope I am wrong about this. > > The ability for an instance to be classified by more than one class is a > major advantage of RDF and of ontology languages, the C++ heritage in > MOF of an instance statically being a member of a single class puts MOF > at a disadvantage in relation to these other technologies. It makes it > very difficult to represent different aspects of an instance, as can be > seen from the package merge complexities - which would not have been > required is we had multiple classification in MOF. > > If this is actually a semantic mis-match between MOF and ODM, is may > make more sense to add the capability to MOF since the MOF meta model > does not preclude this capability . it is only a restriction of the > MOF-PSM (XMI). > -- ___________________ / Manfred R. Koethe \_____________________________________ 88solutions Corp. E-Mail: koethe@88solutions.com 37 Mague Avenue Tel: +1 (617) 848 0525 Newton, MA 02465-1553 FAX: +1 (617) 848 8819 U.S.A. _____________________________"We make your business flow"_ To: Cc: adtf@omg.org, cory-c@enterprisecomponent.com, "'Manfred R. Koethe'" , "'Larry L. Johnson'" , ontology@omg.org Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM X-Mailer: Lotus Notes Release 6.0.1CF1 March 04, 2003 From: Branislav Selic Date: Wed, 4 Jan 2006 15:26:25 -0500 X-MIMETrack: Serialize by Router on D25ML01/25/M/IBM(Release 6.5.4|March 27, 2005) at 01/04/2006 15:26:29, Serialize complete at 01/04/2006 15:26:29 John, > There is one point of confusion for me, however. There is a > metaclass called TypedElement that can be related to at most one > Type. InstanceSpecification is not a kind of TypedElement. Can > someone explain that to me? I.d have thought that > InstanceSpecification would be a specialization thereof and that the > .classifier. association on it would be a specialization of the > .type. association on TypedElement but apparently that.s not the case. TypedElement was intended for things that appear in specifications such as a Class, Interface, or a DataType. Therefore, there is a certain level of formal rigour intended in this concept (since specifications are supposed to provide some general rules). InstanceSpecification, OTOH, is meant to be used for illustrative purposes, such as depicting examples of run-time instances in some specific situation. Since these were merely illustrative examples that did not define any general rules, it seemed useful to make this facility highly flexible, that is, not to force them to conform to the same strict rules that governed typed elements. Perhaps the real question is why is the multiplicity of the type on TypedElements [0..1] Cheers....Bran Selic From: "Stan Hendryx" To: "'Ed Seidewitz'" , , "'Larry L. Johnson'" , "'Manfred R. Koethe'" , Cc: , Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Wed, 4 Jan 2006 15:40:06 -0800 X-Mailer: Microsoft Office Outlook 11 Thread-index: AcYRUZ4m7hKycvRoTKOUL3SgfoQB2gAEnwpgAADPA+AAAszvIA== Ed, Manfred, Could Cory's concern and question have anything to do with a limitation of the meta language, wherein each object is required to be an instance of exactly one class, with no ability to change its class over the lifetime of the object? What does UML say about this? I am puzzled by your remark, Manfred, that "the MOF metamodel has dynamic typing capabilities built in". Can you please point out these capabilities in the MOF specification? The word 'dynamic' appears only twice in the MOF 2.0 Available Specification, ptc/04-10-15, both times in section 11 in relation to the use of tags to dynamically annotate model elements. The MOF Semantic Domain Model for Constructs, Fig. 18, shows that each Instance has exactly one Class, Association, or DataType that is its classifier. In the Reflection Package, Fig. 2, Element (a subtype of Object) has a single-valued function getMetaClass():Class that returns the Class that describes the Element. The MOF Factory metaclass has a create(metaClass:Class):Element operation that takes a single Class as an argument and returns one new Element. MOF Factory has no operation to change the type of an object; neither does Element. It appears to me that a MOF object has exactly one type and that it is immutable. What am I missing? Are you referring to the possibility of specifying the type of an object as a Property? That is similar to the approach we have taken with SBVR. We encountered the need for dynamic typing in SBVR, and solved the need by using predication to designate the (possibly multiple and dynamic) types of an object, which in SBVR is called a thing. Each type of a thing can be stated explicitly as an instance of the fact type, 'concept has instance', where an instance is a thing that is in the extension of a concept (type). Alternatively, the types of a thing are implicitly specified when the thing assumes a role in a fact that is an instance of a fact type, wherein the type of things in each role is always specified by the fact type. In the MOF model of SBVR, each Thing class instance is conceptualized as an undifferentiated thing of which anything can be predicated, including multiple types. With this model, SBVR is able to interchange an ontology in the form of a SBVR vocabulary and rule set, using MOF and XMI. See the adopted SBVR specification, bei/2005-08-01, section 2.7 Vocabulary Driven Interchange using MOF and XMI and Figure 2.2.3-1, The Essential SBVR Package. Stan -------------------------------------------------------------------------------- From: Ed Seidewitz [mailto:ed-s@enterprisecomponent.com] Sent: Wednesday, January 04, 2006 11:50 AM To: jbutler@everware.com; 'Larry L. Johnson'; 'Manfred R. Koethe'; cory-c@enterprisecomponent.com Cc: ontology@omg.org; adtf@omg.org Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM John -- TypedElement is generally used for "container" sorts of things that can "hold" values, like attributes and parameters. These always have a single type to which their contents must conform. An InstanceSpecification, on the other hand, is a model of an instance, which is one of the things that can be held by TypedElements. UML allows instances to be multiply classified. A TypedElement can hold an instance for which any of its classifiers conforms to the type of the TypedElement. (UML minutiae I can answer about. Cory's question I am still trying to understand...) -- Ed -------------------------------------------------------------------------------- From: John C. Butler [mailto:jbutler@everware.com] Sent: Wednesday, January 04, 2006 2:33 PM To: 'Larry L. Johnson'; 'Manfred R. Koethe'; cory-c@enterprisecomponent.com Cc: ontology@omg.org; adtf@omg.org Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Hi Cory et al, My understanding of the MOF (though not as extensive as others on this thread) is that InstanceSpecification (I.m assuming this is what you mean by your use of Instance below) can have multiple Classifiers at the same time. Since Classifiers are specializations of Type it seems as though the issue you raise is not a problem for MOF. I must say that I don.t know enough about XMI to determine whether it can handle this or not though it would be silly if it didn.t. There is one point of confusion for me, however. There is a metaclass called TypedElement that can be related to at most one Type. InstanceSpecification is not a kind of TypedElement. Can someone explain that to me? I.d have thought that InstanceSpecification would be a specialization thereof and that the .classifier. association on it would be a specialization of the .type. association on TypedElement but apparently that.s not the case. Regards, - jb -------------------------------------------------------------------------------- From: Larry L. Johnson [mailto:Larry.Johnson@TethersEnd.com] Sent: Wednesday, January 04, 2006 12:06 PM To: 'Manfred R. Koethe' Cc: ontology@omg.org; adtf@omg.org Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Hi Manfred, I.ll ignore the red herring PIM/PSM stuff & leave it that I know what Cory meant. (He didn.t even imply there is only one PSM per PIM... whatever PIM & PSM mean). The key issue in Cory.s memo is an instance being of multiple types, not necessarily through transitive type casting up an .is-a. tree. To what degree does the MOF dynamic typing support this? ISO 10303 does allow an instance to be of multiple types, but only of multiple subtypes of some common supertype (categorical as opposed to partitioning subtyping). Though if you disagree, I defer without further argument to your deeper knowledge of EXPRESS. Regards, Larry -----Original Message----- From: Manfred R. Koethe [mailto:koethe@88solutions.com] Sent: Wednesday, January 04, 2006 11:27 AM To: Cory Casanave Cc: ontology@omg.org; adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Cory, You are correct that the MOF metamodel has dynamic typing capabilities built in, they just have to be utilized... However, I like to correct you in one thing: You wrote in your last sentence "... the MOF-PSM (XMI)". Here is my take on that: 1. There is no such thing as *THE* PSM for a PIM. Any PIM may be mapped to an infinite number of PSMs, and there is no guarantee that any of these PSMs is a *complete* representation of the PIM. 2. XMI is *NOT* "THE" MOF PSM. It is actually a model transport representation, allowing the *transportation* of a model (on whatsoever M-level) from one MOF implementation to another MOF implementation and allowing a rebuilding of a (hopefully) semantically complete replication of the model in the target MOF implementation. 3. As I said, XMI is a *transportation* technology. It is restricted by the capabilities of its underlying technology (XML Schema). It was never intended as a *runtime* representation, any use of XMI as a runtime format is (IMHO) a regretful and serious mistake. XMI is a compromise to make model exchange (and archiving) possible for a wide community. It lives from techniques of *rebuilding* a runtime model out of its transport representation. Btw., the thing you are bringing up here is nothing new (just the names are different...). ISO 10303 (STEP) is dealing with the very same issue since more than 15 years.... [what we can learn from history is that we don't learn from history...] Kind regards, Manfred Cory Casanave wrote: > This is a question involving ODM as well as MOF XMI and Life-cycle. > > > > In ODM we have RDF and OWL defined as MOF meta models, the assumption > being, of course, that you can have MOF instances of RDF graphs. But > can you? In RDF & OWL an instance (at any M level) can have (and > frequently does have) multiple types . it is classified by more than one > class. While this is perfectly legal in UML and even in the MOF meta > model, I don.t think the concept is supported in XMI or the current > life-cycle. So, can you actually represent RDF in MOF? If not, the ODM > models are not valid . I hope I am wrong about this. > > The ability for an instance to be classified by more than one class is a > major advantage of RDF and of ontology languages, the C++ heritage in > MOF of an instance statically being a member of a single class puts MOF > at a disadvantage in relation to these other technologies. It makes it > very difficult to represent different aspects of an instance, as can be > seen from the package merge complexities - which would not have been > required is we had multiple classification in MOF. > > If this is actually a semantic mis-match between MOF and ODM, is may > make more sense to add the capability to MOF since the MOF meta model > does not preclude this capability . it is only a restriction of the > MOF-PSM (XMI). > -- ___________________ / Manfred R. Koethe \_____________________________________ 88solutions Corp. E-Mail: koethe@88solutions.com 37 Mague Avenue Tel: +1 (617) 848 0525 Newton, MA 02465-1553 FAX: +1 (617) 848 8819 U.S.A. _____________________________"We make your business flow"_ Date: Wed, 04 Jan 2006 19:08:52 -0500 From: Ed Barkmeyer Reply-To: edbark@nist.gov Organization: NIST User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.2) Gecko/20040804 Netscape/7.2 (ax) X-Accept-Language: en, fr, de, pdf, it, nl, sv, es, ru To: Cory Casanave CC: ontology@omg.org, adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Cory Casanave wrote: In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. But can you? In RDF & OWL an instance (at any M level) can have (and frequently does have) multiple types - it is classified by more than one class. While this is perfectly legal in UML and even in the MOF meta model, I don't think the concept is supported in XMI or the current life-cycle. So, can you actually represent RDF in MOF? If not, the ODM models are not valid - I hope I am wrong about this. I think Fred was very close here. This question seems to me to mix meta-levels. A MOF model of RDF may well contain MOF Classes called RDF:Class and RDF:Instance and define a many-to-many MOF Association RDF:InstanceOfClass between them as RDF:Class.members and RDF:Instance.memberOf. And it is necessary to define another MOF Association (0..1 to 0..1) from RDF:Class to RDF:Instance as RDF:Class.isInstance, because an RDFClass can be an RDFInstance as well. Now this MOF *meta*-model enables us to capture whatever a given RDF model actually contains. It does *not* enable us to use MOF Class/Instance concepts to reason about RDF Class/Instance concepts, except superficially. As far as MOF technology itself is concerned, RDF:Class and RDF:Instance and ElementarySchool:Class and STEP:ProductDefinition and Oinology:Wine have exactly the same semantics -- they are MOF Classes, full stop. As near as I can tell, in the XMI representation of the M1 level objects, an actual RDF instance, e.g. URI://cme.nist.gov/shopfloordata#hmill04, will be an instance of RDF:Instance. And there may be many instances of the Association RDF:InstanceOfClass, for which the .member association-end is (the XMI.idref for) URI://cme.nist.gov/shopfloordata#hmill04 and each .memberOf association-end is a different (MOF/XMI) instance of RDF:Class. Note also that when the RDF Class is also used as an RDF Instance, you will get *two* distinct MOF/XMI objects, one of which is the RDF:Class instance, and one of which is the RDF:Instance instance, and an instance of the RDF:Class.isInstance association between them. This may appear to be an inelegant way to represent the RDF concepts, but it is elegant with respect to the use of MOF technologies for the purpose. In general, you can't expect the MOF engine to interpret the semantics of the captured model beyond the MOF repository operations. The fact that we do something incestuous for MOF/UML is *not* a pattern for any other use of MOF! Put another way, the MOF engine is not expected to internally understand any ShopFloorData concepts, like Machine or CuttingPath. Why should it internally understand any RDF concepts like RDF:Class and RDF:Instance? Now if Cory is trying to *map* the ODM RDF M2 model into the MOF/UML Infrastructure M2 model, so that RDF:Class maps to MOF:Class, that is "quite another thing entirely". The RDF metamodel only enables the MOF to *capture* the RDF model. The mapping attempts to use the MOF internal understanding to *interpret* the RDF model. Such a mapping will both gain and lose information, because the two languages have somewhat different classification semantics. -Ed -- Edward J. Barkmeyer Email: edbark@nist.gov National Institute of Standards & Technology Manufacturing Systems Integration Division 100 Bureau Drive, Stop 8263 Tel: +1 301-975-3528 Gaithersburg, MD 20899-8263 FAX: +1 301-975-4482 "The opinions expressed above do not reflect consensus of NIST, and have not been reviewed by any Government authority." Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Thu, 5 Jan 2006 03:21:48 -0800 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Multiple classifiers for an instance in MOF and RDF as defined in ODM Thread-Index: AcYQ5PM8x8wmoKDkScKg49Vh+9FT1QAZfbbQ From: "Pete Rivett" To: "Cory Casanave" , , > In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. ..... > So, can you actually represent RDF in MOF? If not, the ODM models are not valid . I hope I am wrong about this. Cory, ODM provides a way of representing RDF Schemas (also OWL Ontologies, Topic Maps etc) as instances of a MOF metamodel (ODM itself). RDF Schemas can also be represented in RDF, but also (in theory) in a number of other ways - as rows in a set of relational tables designed for the purpose, in Prolog etc. The point is that the ability to represent a model (in this case an RDF Schema) in a certain technology does not require the ability to also represent instances of that model in the same technology. A good example of this is the language used for representing DTDs - it cannot also be used to represent XML documents that are instances of the DTD. Also, consider a hypothetical UML metamodel without support for instance diagrams - it would support the majority of UML models but not be able to represent their instances. So MOF can be quite adequate for the needs of ODM - representing RDF Schemas - without requiring the ability to represent arbitrary RDF documents. Actually it is possible to represent RDF documents in MOF, though in a 'non-native' manner - indeed the ODM draft specification does just this - there is a MOF metaclass RDFSResource with a multivalued reference RDFType to RDFSClass. Whether it would be a good idea for MOF to support multiple classification of instances is a separate question. At the moment it does not (nothing to do with XMI): since the operation Reflection::Element::getMetaClass() is single valued. I'm personally inclined to agree with you, but that is a major change that would need a new RFP. Happy New Year to everyone Pete Pete Rivett (mailto:pete.rivett@adaptive.com) CTO, Adaptive Inc. Hello House, 135 Somerford Road, Christchurch, BH23 3PY, UK Tel: +44 (0)1202 491243 Fax: +44 (0)1202 491241 http://www.adaptive.com -------------------------------------------------------------------------------- From: Cory Casanave [mailto:cbc@enterprisecomponent.com] Sent: Wednesday, January 04, 2006 4:12 AM To: ontology@omg.org; adtf@omg.org Subject: Multiple classifiers for an instance in MOF and RDF as defined in ODM This is a question involving ODM as well as MOF XMI and Life-cycle. In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. But can you? In RDF & OWL an instance (at any M level) can have (and frequently does have) multiple types . it is classified by more than one class. While this is perfectly legal in UML and even in the MOF meta model, I don.t think the concept is supported in XMI or the current life-cycle. So, can you actually represent RDF in MOF? If not, the ODM models are not valid . I hope I am wrong about this. The ability for an instance to be classified by more than one class is a major advantage of RDF and of ontology languages, the C++ heritage in MOF of an instance statically being a member of a single class puts MOF at a disadvantage in relation to these other technologies. It makes it very difficult to represent different aspects of an instance, as can be seen from the package merge complexities - which would not have been required is we had multiple classification in MOF. If this is actually a semantic mis-match between MOF and ODM, is may make more sense to add the capability to MOF since the MOF meta model does not preclude this capability . it is only a restriction of the MOF-PSM (XMI). X-IronPort-AV: i="3.99,335,1131339600"; d="scan'208"; a="191815415:sNHT36203440" Date: Thu, 05 Jan 2006 15:55:43 -0500 From: "Manfred R. Koethe" User-Agent: Mozilla Thunderbird 1.0.6 (Windows/20050716) X-Accept-Language: en-us, en To: Stan Hendryx CC: ontology@omg.org, adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Stan, you caught me on the fact that I had forgotten to submit an issue for a correction I put already in our implementation.... The return from getMetaClass() and the argument for create() and createElement() should be a ReflectiveSequence holding an ordered set of all metaclasses. (I have filed the issue by now). Dynamic typing is a complicated issue in the context of MOF. It is not too complicated if you apply this to a "terminal" class in the meta-hierarchy, a class which just produces instances and is not used either as a superclass or as a metaclass to define something else. In the latter two cases, the freedom of type changes is very limited to avoid complicated ripple effects down the respective hierarchy. ISO 10303-11 EXPRESS provides an interesting construct (IMHO) usable as a base for limited dynamic typing: ANDOR inheritance. This means: You have for example three classes A, B and C. Class C inherits from A and B using the ANDOR constraint. Typewise C could then be an "A", a "B", an "AB", or a "BA". It would be legal to dynamically select within the bounds of this resulting type set. Since the effects are predictable and bound by the transitive closure of multiple inheritance, this scheme is (with some tricks) implementable in MOF. The changes listed at the top of this message are helpful for that. But since the relationship between a class and its superclasses is an Association with multiplicity 0..* on the superclass end, and therefore just a fan of links in the MOF repository, you could still implement this even with the defective methods in Element and Factory. The implementability actually depends more on the flexibility of the underlying repository. In our case, where the repository is somehow similar to an RDF Triplestore, this dynamic typing scheme can be accommodated. Kind regards, Manfred Stan Hendryx wrote: Ed, Manfred, I am puzzled by your remark, Manfred, that "the MOF metamodel has dynamic typing capabilities built in". Can you please point out these capabilities in the MOF specification? The word 'dynamic' appears only twice in the MOF 2.0 Available Specification, ptc/04-10-15, both times in section 11 in relation to the use of tags to dynamically annotate model elements. The MOF Semantic Domain Model for Constructs, Fig. 18, shows that each Instance has exactly one Class, Association, or DataType that is its classifier. In the Reflection Package, Fig. 2, /Element/ (a subtype of Object) has a single-valued function getMetaClass():Class that returns the Class that describes the Element. The MOF Factory metaclass has a create(metaClass:Class):Element operation that takes a single Class as an argument and returns one new Element. MOF Factory has no operation to change the type of an object; neither does /Element/. It appears to me that a MOF object has exactly one type and that it is immutable. What am I missing? Are you referring to the possibility of specifying the type of an object as a Property? That is similar to the approach we have taken with SBVR. We encountered the need for dynamic typing in SBVR, and solved the need by using predication to designate the (possibly multiple and dynamic) types of an object, which in SBVR is called a _thing_. Each type of a thing can be stated explicitly as an instance of the fact type, '_concept_ has _instance_', where an _instance_ is a _thing_ that is in the extension of a _concept_ (type). Alternatively, the types of a thing are implicitly specified when the thing assumes a _role_ in a fact that is an instance of a _fact type_, wherein the type of things in each role is always specified by the fact type. In the MOF model of SBVR, each Thing class instance is conceptualized as an undifferentiated thing of which anything can be predicated, including multiple types. With this model, SBVR is able to interchange an ontology in the form of a SBVR vocabulary and rule set, using MOF and XMI. See the adopted SBVR specification, bei/2005-08-01, section 2.7 Vocabulary Driven Interchange using MOF and XMI and Figure 2.2.3-1, The Essential SBVR Package. Stan ------------------------------------------------------------------------ *From:* Ed Seidewitz [mailto:ed-s@enterprisecomponent.com] *Sent:* Wednesday, January 04, 2006 11:50 AM *To:* jbutler@everware.com; 'Larry L. Johnson'; 'Manfred R. Koethe'; cory-c@enterprisecomponent.com *Cc:* ontology@omg.org; adtf@omg.org *Subject:* RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM John -- TypedElement is generally used for "container" sorts of things that can "hold" values, like attributes and parameters. These always have a single type to which their contents must conform. An InstanceSpecification, on the other hand, is a model of an instance, which is one of the things that can /be/ held by TypedElements. UML allows instances to be multiply classified. A TypedElement can hold an instance for which any of its classifiers conforms to the type of the TypedElement. (UML minutiae I can answer about. Cory's question I am still trying to understand...) -- Ed ------------------------------------------------------------------------ *From:* John C. Butler [mailto:jbutler@everware.com] *Sent:* Wednesday, January 04, 2006 2:33 PM *To:* 'Larry L. Johnson'; 'Manfred R. Koethe'; cory-c@enterprisecomponent.com *Cc:* ontology@omg.org; adtf@omg.org *Subject:* RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Hi Cory et al, My understanding of the MOF (though not as extensive as others on this thread) is that InstanceSpecification (I.m assuming this is what you mean by your use of Instance below) can have multiple Classifiers at the same time. Since Classifiers are specializations of Type it seems as though the issue you raise is not a problem for MOF. I must say that I don.t know enough about XMI to determine whether it can handle this or not though it would be silly if it didn.t. There is one point of confusion for me, however. There is a metaclass called TypedElement that can be related to at most one Type. InstanceSpecification is not a kind of TypedElement. Can someone explain that to me? I.d have thought that InstanceSpecification would be a specialization thereof and that the .classifier. association on it would be a specialization of the .type. association on TypedElement but apparently that.s not the case. Regards, - jb ------------------------------------------------------------------------ *From:* Larry L. Johnson [mailto:Larry.Johnson@TethersEnd.com] *Sent:* Wednesday, January 04, 2006 12:06 PM *To:* 'Manfred R. Koethe' *Cc:* ontology@omg.org; adtf@omg.org *Subject:* RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Hi Manfred, I.ll ignore the red herring PIM/PSM stuff & leave it that I know what Cory meant. (He didn.t even imply there is only one PSM per PIM... whatever PIM & PSM mean). The key issue in Cory.s memo is an instance being of multiple types, not necessarily through transitive type casting up an .is-a. tree. To what degree does the MOF dynamic typing support this? ISO 10303 does allow an instance to be of multiple types, but only of multiple subtypes of some common supertype (categorical as opposed to partitioning subtyping). Though if you disagree, I defer without further argument to your deeper knowledge of EXPRESS. Regards, Larry -----Original Message----- From: Manfred R. Koethe [mailto:koethe@88solutions.com] Sent: Wednesday, January 04, 2006 11:27 AM To: Cory Casanave Cc: ontology@omg.org; adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Cory, You are correct that the MOF metamodel has dynamic typing capabilities built in, they just have to be utilized... However, I like to correct you in one thing: You wrote in your last sentence "... the MOF-PSM (XMI)". Here is my take on that: 1. There is no such thing as *THE* PSM for a PIM. Any PIM may be mapped to an infinite number of PSMs, and there is no guarantee that any of these PSMs is a *complete* representation of the PIM. 2. XMI is *NOT* "THE" MOF PSM. It is actually a model transport representation, allowing the *transportation* of a model (on whatsoever M-level) from one MOF implementation to another MOF implementation and allowing a rebuilding of a (hopefully) semantically complete replication of the model in the target MOF implementation. 3. As I said, XMI is a *transportation* technology. It is restricted by the capabilities of its underlying technology (XML Schema). It was never intended as a *runtime* representation, any use of XMI as a runtime format is (IMHO) a regretful and serious mistake. XMI is a compromise to make model exchange (and archiving) possible for a wide community. It lives from techniques of *rebuilding* a runtime model out of its transport representation. Btw., the thing you are bringing up here is nothing new (just the names are different...). ISO 10303 (STEP) is dealing with the very same issue since more than 15 years.... [what we can learn from history is that we don't learn from history...] Kind regards, Manfred Cory Casanave wrote: This is a question involving ODM as well as MOF XMI and Life-cycle. In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. But can you? In RDF & OWL an instance (at any M level) can have (and frequently does have) multiple types ­ it is classified by more than one class. While this is perfectly legal in UML and even in the MOF meta model, I don.t think the concept is supported in XMI or the current life-cycle. So, can you actually represent RDF in MOF? If not, the ODM models are not valid ­ I hope I am wrong about this. The ability for an instance to be classified by more than one class is a major advantage of RDF and of ontology languages, the C++ heritage in MOF of an instance statically being a member of a single class puts MOF at a disadvantage in relation to these other technologies. It makes it very difficult to represent different aspects of an instance, as can be seen from the package merge complexities - which would not have been required is we had multiple classification in MOF. If this is actually a semantic mis-match between MOF and ODM, is may make more sense to add the capability to MOF since the MOF meta model does not preclude this capability ­ it is only a restriction of the MOF-PSM (XMI). -- ___________________ / Manfred R. Koethe \_____________________________________ 88solutions Corp. E-Mail: koethe@88solutions.com 37 Mague Avenue Tel: +1 (617) 848 0525 Newton, MA 02465-1553 FAX: +1 (617) 848 8819 U.S.A. _____________________________"We make your business flow"_ -- ___________________ / Manfred R. Koethe \_____________________________________ 88solutions Corp. E-Mail: koethe@88solutions.com 37 Mague Avenue Tel: +1 (617) 848 0525 Newton, MA 02465-1553 FAX: +1 (617) 848 8819 U.S.A. _____________________________"We make your business flow"_ Date: Fri, 06 Jan 2006 13:02:49 -0500 From: Jishnu Mukerji Organization: HP Software AMOC/ATG User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.3) Gecko/20040910 X-Accept-Language: en-us, en To: Cory Casanave Cc: "'Pete Rivett'" , ontology@omg.org, adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM And here I was under the impression that Manfred thought that MOF would support multiple typing after the issue that he forgot to file is addressed in an RTF or some such. Am I confused or what? Jishnu. Cory Casanave wrote: Pete (Etc), Perhaps you are right and I am having meta-mind block (it has to happen to everyone sometime). Just to be sure we have prepared a valid OWL-Full ontology (Enclosed) . perhaps someone with ODM implemented could import it and show the corresponding XMI to prove it? Note that both .ProductCatagory. and .LineItem. have multiple types. It is interesting that Manfred thinks MOF does support multiple typing, but I am not sure how or if any other MOF would understand it. It could, perhaps, be supported under the current API if more than one object could have the same UUID? -Cory -------------------------------------------------------------------------------- From: Pete Rivett [mailto:pete.rivett@adaptive.com] Sent: Thursday, January 05, 2006 6:22 AM To: Cory Casanave; ontology@omg.org; adtf@omg.org Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM > In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. ..... > So, can you actually represent RDF in MOF? If not, the ODM models are not valid . I hope I am wrong about this. Cory, ODM provides a way of representing RDF Schemas (also OWL Ontologies, Topic Maps etc) as instances of a MOF metamodel (ODM itself). RDF Schemas can also be represented in RDF, but also (in theory) in a number of other ways - as rows in a set of relational tables designed for the purpose, in Prolog etc. The point is that the ability to represent a model (in this case an RDF Schema) in a certain technology does not require the ability to also represent instances of that model in the same technology. A good example of this is the language used for representing DTDs - it cannot also be used to represent XML documents that are instances of the DTD. Also, consider a hypothetical UML metamodel without support for instance diagrams - it would support the majority of UML models but not be able to represent their instances. So MOF can be quite adequate for the needs of ODM - representing RDF Schemas - without requiring the ability to represent arbitrary RDF documents. Actually it is possible to represent RDF documents in MOF, though in a 'non-native' manner - indeed the ODM draft specification does just this - there is a MOF metaclass RDFSResource with a multivalued reference RDFType to RDFSClass. Whether it would be a good idea for MOF to support multiple classification of instances is a separate question. At the moment it does not (nothing to do with XMI): since the operation Reflection::Element::getMetaClass() is single valued. I'm personally inclined to agree with you, but that is a major change that would need a new RFP. Happy New Year to everyone Pete Pete Rivett (mailto:pete.rivett@adaptive.com) CTO, Adaptive Inc. Hello House, 135 Somerford Road, Christchurch, BH23 3PY, UK Tel: +44 (0)1202 491243 Fax: +44 (0)1202 491241 http://www.adaptive.com -------------------------------------------------------------------------------- From: Cory Casanave [mailto:cbc@enterprisecomponent.com] Sent: Wednesday, January 04, 2006 4:12 AM To: ontology@omg.org; adtf@omg.org Subject: Multiple classifiers for an instance in MOF and RDF as defined in ODM This is a question involving ODM as well as MOF XMI and Life-cycle. In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. But can you? In RDF & OWL an instance (at any M level) can have (and frequently does have) multiple types . it is classified by more than one class. While this is perfectly legal in UML and even in the MOF meta model, I don.t think the concept is supported in XMI or the current life-cycle. So, can you actually represent RDF in MOF? If not, the ODM models are not valid . I hope I am wrong about this. The ability for an instance to be classified by more than one class is a major advantage of RDF and of ontology languages, the C++ heritage in MOF of an instance statically being a member of a single class puts MOF at a disadvantage in relation to these other technologies. It makes it very difficult to represent different aspects of an instance, as can be seen from the package merge complexities - which would not have been required is we had multiple classification in MOF. If this is actually a semantic mis-match between MOF and ODM, is may make more sense to add the capability to MOF since the MOF meta model does not preclude this capability . it is only a restriction of the MOF-PSM (XMI). smime1.p7s From: "Cory Casanave" To: "'Manfred R. Koethe'" , "'Stan Hendryx'" Cc: , Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Fri, 6 Jan 2006 13:28:33 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcYSPb/95PGU6ONHREG9aGFVQQaskwAsE/8g X-OriginalArrivalTime: 06 Jan 2006 18:28:39.0358 (UTC) FILETIME=[039A85E0:01C612EF] Manfred, While I very much support the intent, I'm not sure this is as minor an issue as you suggest. It is doubtful others would want to change the API for a capability they probably can't support. Unfortunately I don't think the spec says that it does or does not support the capability. There are 2 other ways I could see to skin this without API changes; 1. API Addition - methods to add or remove a metaclass. 2. Allow multiple classes to represent the same instance by sharing identity (The spec does not make this illegal - does it?) So while I would love to "drop in" the capability, there needs to be more consensuses. Since the spec does not say you may be able to make a case for this as an RTF issue, but would probably loose the case. As for the ODM issue - we have submitted a test case so should have it proven. -Cory -----Original Message----- From: Manfred R. Koethe [mailto:koethe@88solutions.com] Sent: Thursday, January 05, 2006 3:56 PM To: Stan Hendryx Cc: ontology@omg.org; adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Stan, you caught me on the fact that I had forgotten to submit an issue for a correction I put already in our implementation.... The return from getMetaClass() and the argument for create() and createElement() should be a ReflectiveSequence holding an ordered set of all metaclasses. (I have filed the issue by now). Dynamic typing is a complicated issue in the context of MOF. It is not too complicated if you apply this to a "terminal" class in the meta-hierarchy, a class which just produces instances and is not used either as a superclass or as a metaclass to define something else. In the latter two cases, the freedom of type changes is very limited to avoid complicated ripple effects down the respective hierarchy. ISO 10303-11 EXPRESS provides an interesting construct (IMHO) usable as a base for limited dynamic typing: ANDOR inheritance. This means: You have for example three classes A, B and C. Class C inherits from A and B using the ANDOR constraint. Typewise C could then be an "A", a "B", an "AB", or a "BA". It would be legal to dynamically select within the bounds of this resulting type set. Since the effects are predictable and bound by the transitive closure of multiple inheritance, this scheme is (with some tricks) implementable in MOF. The changes listed at the top of this message are helpful for that. But since the relationship between a class and its superclasses is an Association with multiplicity 0..* on the superclass end, and therefore just a fan of links in the MOF repository, you could still implement this even with the defective methods in Element and Factory. The implementability actually depends more on the flexibility of the underlying repository. In our case, where the repository is somehow similar to an RDF Triplestore, this dynamic typing scheme can be accommodated. Kind regards, Manfred Stan Hendryx wrote: > Ed, Manfred, > > > I am puzzled by your remark, Manfred, that "the MOF metamodel has > dynamic typing capabilities built in". Can you please point out these > capabilities in the MOF specification? The word 'dynamic' appears only > twice in the MOF 2.0 Available Specification, ptc/04-10-15, both times > in section 11 in relation to the use of tags to dynamically annotate > model elements. The MOF Semantic Domain Model for Constructs, Fig. 18, > shows that each Instance has exactly one Class, Association, or DataType > that is its classifier. In the Reflection Package, Fig. 2, /Element/ (a > subtype of Object) has a single-valued function getMetaClass():Class > that returns the Class that describes the Element. The MOF Factory > metaclass has a create(metaClass:Class):Element operation that takes a > single Class as an argument and returns one new Element. MOF Factory has > no operation to change the type of an object; neither does /Element/. It > appears to me that a MOF object has exactly one type and that it is > immutable. What am I missing? Are you referring to the possibility of > specifying the type of an object as a Property? That is similar to the > approach we have taken with SBVR. > > We encountered the need for dynamic typing in SBVR, and solved the need > by using predication to designate the (possibly multiple and dynamic) > types of an object, which in SBVR is called a _thing_. Each type of a > thing can be stated explicitly as an instance of the fact type, > '_concept_ has _instance_', where an _instance_ is a _thing_ that is in > the extension of a _concept_ (type). Alternatively, the types of a thing > are implicitly specified when the thing assumes a _role_ in a fact that > is an instance of a _fact type_, wherein the type of things in each role > is always specified by the fact type. In the MOF model of SBVR, each > Thing class instance is conceptualized as an undifferentiated thing of > which anything can be predicated, including multiple types. With this > model, SBVR is able to interchange an ontology in the form of a SBVR > vocabulary and rule set, using MOF and XMI. See the adopted SBVR > specification, bei/2005-08-01, section 2.7 Vocabulary Driven Interchange > using MOF and XMI and Figure 2.2.3-1, The Essential SBVR Package. > > Stan > > > ------------------------------------------------------------------------ > *From:* Ed Seidewitz [mailto:ed-s@enterprisecomponent.com] > *Sent:* Wednesday, January 04, 2006 11:50 AM > *To:* jbutler@everware.com; 'Larry L. Johnson'; 'Manfred R. Koethe'; > cory-c@enterprisecomponent.com > *Cc:* ontology@omg.org; adtf@omg.org > *Subject:* RE: Multiple classifiers for an instance in MOF and RDF > as defined in ODM > > John -- > > TypedElement is generally used for "container" sorts of things that > can "hold" values, like attributes and parameters. These always have > a single type to which their contents must conform. > > An InstanceSpecification, on the other hand, is a model of an > instance, which is one of the things that can /be/ held by > TypedElements. UML allows instances to be multiply classified. A > TypedElement can hold an instance for which any of its classifiers > conforms to the type of the TypedElement. > > (UML minutiae I can answer about. Cory's question I am still trying > to understand...) > > -- Ed > > ------------------------------------------------------------------------ > *From:* John C. Butler [mailto:jbutler@everware.com] > *Sent:* Wednesday, January 04, 2006 2:33 PM > *To:* 'Larry L. Johnson'; 'Manfred R. Koethe'; > cory-c@enterprisecomponent.com > *Cc:* ontology@omg.org; adtf@omg.org > *Subject:* RE: Multiple classifiers for an instance in MOF and > RDF as defined in ODM > > Hi Cory et al, > > My understanding of the MOF (though not as extensive as others > on this thread) is that InstanceSpecification (I'm assuming this > is what you mean by your use of Instance below) can have > multiple Classifiers at the same time. Since Classifiers are > specializations of Type it seems as though the issue you raise > is not a problem for MOF. I must say that I don't know enough > about XMI to determine whether it can handle this or not though > it would be silly if it didn't. > > There is one point of confusion for me, however. There is a > metaclass called TypedElement that can be related to at most one > Type. InstanceSpecification is not a kind of TypedElement. Can > someone explain that to me? I'd have thought that > InstanceSpecification would be a specialization thereof and that > the "classifier" association on it would be a specialization of > the "type" association on TypedElement but apparently that's not > the case. > > Regards, > - jb > > > > > ------------------------------------------------------------------------ > > *From:* Larry L. Johnson [mailto:Larry.Johnson@TethersEnd.com] > *Sent:* Wednesday, January 04, 2006 12:06 PM > *To:* 'Manfred R. Koethe' > *Cc:* ontology@omg.org; adtf@omg.org > *Subject:* RE: Multiple classifiers for an instance in MOF and > RDF as defined in ODM > > > > Hi Manfred, > > I'll ignore the red herring PIM/PSM stuff & leave it that I know > what Cory meant. (He didn't even imply there is only one PSM per > PIM... whatever PIM & PSM mean). > > The key issue in Cory's memo is an instance being of multiple > types, not necessarily through transitive type casting up an > "is-a" tree. To what degree does the MOF dynamic typing support > this? > > ISO 10303 does allow an instance to be of multiple types, but > only of multiple subtypes of some common supertype (categorical > as opposed to partitioning subtyping). Though if you disagree, I > defer without further argument to your deeper knowledge of EXPRESS. > > Regards, > Larry > > > > -----Original Message----- > From: Manfred R. Koethe [mailto:koethe@88solutions.com] > Sent: Wednesday, January 04, 2006 11:27 AM > To: Cory Casanave > Cc: ontology@omg.org; adtf@omg.org > Subject: Re: Multiple classifiers for an instance in MOF and RDF > as defined in ODM > > > > Cory, > > > > You are correct that the MOF metamodel has dynamic typing > capabilities > > built in, they just have to be utilized... > > > > However, I like to correct you in one thing: You wrote in your last > > sentence "... the MOF-PSM (XMI)". Here is my take on that: > > > > 1. There is no such thing as *THE* PSM for a PIM. Any PIM may be > > mapped to an infinite number of PSMs, and there is no guarantee > > that any of these PSMs is a *complete* representation of the > PIM. > > > > 2. XMI is *NOT* "THE" MOF PSM. It is actually a model transport > > representation, allowing the *transportation* of a model (on > > whatsoever M-level) from one MOF implementation to another MOF > > implementation and allowing a rebuilding of a (hopefully) > > semantically complete replication of the model in the target > > MOF implementation. > > > > 3. As I said, XMI is a *transportation* technology. It is restricted > > by the capabilities of its underlying technology (XML > Schema). It > > was never intended as a *runtime* representation, any use of XMI > > as a runtime format is (IMHO) a regretful and serious mistake. > > XMI is a compromise to make model exchange (and archiving) > possible > > for a wide community. It lives from techniques of *rebuilding* a > > runtime model out of its transport representation. > > > > Btw., the thing you are bringing up here is nothing new (just the > > names are different...). ISO 10303 (STEP) is dealing with the > very same > > issue since more than 15 years.... > > > > [what we can learn from history is that we don't learn from > history...] > > > > Kind regards, > > > > Manfred > > > > > > Cory Casanave wrote: > >> This is a question involving ODM as well as MOF XMI and > Life-cycle. > >> > >> > >> > >> In ODM we have RDF and OWL defined as MOF meta models, the > assumption > >> being, of course, that you can have MOF instances of RDF > graphs. But > >> can you? In RDF & OWL an instance (at any M level) can have (and > >> frequently does have) multiple types - it is classified by > more than one > >> class. While this is perfectly legal in UML and even in the > MOF meta > >> model, I don't think the concept is supported in XMI or the > current > >> life-cycle. So, can you actually represent RDF in MOF? If > not, the ODM > >> models are not valid - I hope I am wrong about this. > >> > >> The ability for an instance to be classified by more than one > class is a > >> major advantage of RDF and of ontology languages, the C++ > heritage in > >> MOF of an instance statically being a member of a single class > puts MOF > >> at a disadvantage in relation to these other technologies. It > makes it > >> very difficult to represent different aspects of an instance, > as can be > >> seen from the package merge complexities - which would not > have been > >> required is we had multiple classification in MOF. > >> > >> If this is actually a semantic mis-match between MOF and ODM, > is may > >> make more sense to add the capability to MOF since the MOF > meta model > >> does not preclude this capability - it is only a restriction > of the > >> MOF-PSM (XMI). > >> > > > > -- > > ___________________ > > / Manfred R. Koethe \_____________________________________ > > 88solutions Corp. E-Mail: koethe@88solutions.com > > 37 Mague Avenue Tel: +1 (617) 848 0525 > > Newton, MA 02465-1553 FAX: +1 (617) 848 8819 > > U.S.A. > > _____________________________"We make your business flow"_ > > > > > -- ___________________ / Manfred R. Koethe \_____________________________________ 88solutions Corp. E-Mail: koethe@88solutions.com 37 Mague Avenue Tel: +1 (617) 848 0525 Newton, MA 02465-1553 FAX: +1 (617) 848 8819 U.S.A. _____________________________"We make your business flow"_ From: "Ed Seidewitz" To: "'Cory Casanave'" Cc: , Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Fri, 6 Jan 2006 14:01:28 -0500 Organization: Data Access Technologies X-Mailer: Microsoft Office Outlook, Build 11.0.6353 Thread-Index: AcYSPb/95PGU6ONHREG9aGFVQQaskwAsE/8gAAE15vA= X-OriginalArrivalTime: 06 Jan 2006 19:01:30.0379 (UTC) FILETIME=[9A6C75B0:01C612F3] Cory -- The UML Infrastructure spec does not cover instance modeling, so the issue of multiple classification is left open there. However, the MOF spec seems pretty clear to me. Not only does the spec specifically call for the getMetaClass operation to return a single class, but in the MOF Instances Model given in the "CMOF Abstract Semantics" chapter, an instance has only one classifier. So the current spec calls for an MOF repository to record only a single classifier for each instance. -- Ed > -----Original Message----- > From: Cory Casanave [mailto:cbc@enterprisecomponent.com] > Sent: Friday, January 06, 2006 1:29 PM > To: 'Manfred R. Koethe'; 'Stan Hendryx' > Cc: ontology@omg.org; adtf@omg.org > Subject: RE: Multiple classifiers for an instance in MOF and > RDF as defined in ODM > > Manfred, > While I very much support the intent, I'm not sure this is as > minor an issue as you suggest. It is doubtful others would > want to change the API for a capability they probably can't > support. Unfortunately I don't think the spec says that it > does or does not support the capability. > There are 2 other ways I could see to skin this without API > changes; 1. API Addition - methods to add or remove a metaclass. > 2. Allow multiple classes to represent the same instance by > sharing identity (The spec does not make this illegal - does it?) > > So while I would love to "drop in" the capability, there > needs to be more consensuses. Since the spec does not say > you may be able to make a case for this as an RTF issue, but > would probably loose the case. > As for the ODM issue - we have submitted a test case so > should have it proven. > -Cory > -----Original Message----- > From: Manfred R. Koethe [mailto:koethe@88solutions.com] > Sent: Thursday, January 05, 2006 3:56 PM > To: Stan Hendryx > Cc: ontology@omg.org; adtf@omg.org > Subject: Re: Multiple classifiers for an instance in MOF and > RDF as defined in ODM > > Stan, > > you caught me on the fact that I had forgotten to submit an > issue for a correction I put already in our > implementation.... The return from getMetaClass() and the > argument for create() and createElement() should be a > ReflectiveSequence holding an ordered set of all metaclasses. > (I have filed the issue by now). > > Dynamic typing is a complicated issue in the context of MOF. > It is not too complicated if you apply this to a "terminal" > class in the meta-hierarchy, a class which just produces > instances and is not used either as a superclass or as a > metaclass to define something else. In the latter two cases, > the freedom of type changes is very limited to avoid > complicated ripple effects down the respective hierarchy. > > ISO 10303-11 EXPRESS provides an interesting construct (IMHO) > usable as a base for limited dynamic typing: ANDOR > inheritance. This means: > > You have for example three classes A, B and C. > Class C inherits from A and B using the ANDOR constraint. > > Typewise C could then be an "A", a "B", an "AB", or a "BA". > > It would be legal to dynamically select within the bounds of > this resulting type set. Since the effects are predictable > and bound by the transitive closure of multiple inheritance, > this scheme is (with some tricks) implementable in MOF. The > changes listed at the top of this message are helpful for > that. But since the relationship between a class and its > superclasses is an Association with multiplicity 0..* on the > superclass end, and therefore just a fan of links in the MOF > repository, you could still implement this even with the > defective methods in Element and Factory. The > implementability actually depends more on the flexibility of > the underlying repository. In our case, where the repository > is somehow similar to an RDF Triplestore, this dynamic typing > scheme can be accommodated. > > Kind regards, > > Manfred > > > Stan Hendryx wrote: > > Ed, Manfred, > > > > > > I am puzzled by your remark, Manfred, that "the MOF metamodel has > > dynamic typing capabilities built in". Can you please point > out these > > capabilities in the MOF specification? The word 'dynamic' > appears only > > twice in the MOF 2.0 Available Specification, ptc/04-10-15, > both times > > in section 11 in relation to the use of tags to dynamically > annotate > > model elements. The MOF Semantic Domain Model for > Constructs, Fig. 18, > > shows that each Instance has exactly one Class, Association, or > > DataType that is its classifier. In the Reflection Package, Fig. 2, > > /Element/ (a subtype of Object) has a single-valued function > > getMetaClass():Class that returns the Class that describes the > > Element. The MOF Factory metaclass has a > > create(metaClass:Class):Element operation that takes a > single Class as > > an argument and returns one new Element. MOF Factory has no > operation > > to change the type of an object; neither does /Element/. It > appears to > > me that a MOF object has exactly one type and that it is immutable. > > What am I missing? Are you referring to the possibility of > specifying > > the type of an object as a Property? That is similar to the > approach we have taken with SBVR. > > > > We encountered the need for dynamic typing in SBVR, and solved the > > need by using predication to designate the (possibly multiple and > > dynamic) types of an object, which in SBVR is called a > _thing_. Each > > type of a thing can be stated explicitly as an instance of the fact > > type, '_concept_ has _instance_', where an _instance_ is a _thing_ > > that is in the extension of a _concept_ (type). Alternatively, the > > types of a thing are implicitly specified when the thing assumes a > > _role_ in a fact that is an instance of a _fact type_, wherein the > > type of things in each role is always specified by the fact > type. In > > the MOF model of SBVR, each Thing class instance is > conceptualized as > > an undifferentiated thing of which anything can be predicated, > > including multiple types. With this model, SBVR is able to > interchange > > an ontology in the form of a SBVR vocabulary and rule set, > using MOF > > and XMI. See the adopted SBVR specification, > bei/2005-08-01, section > > 2.7 Vocabulary Driven Interchange using MOF and XMI and > Figure 2.2.3-1, The Essential SBVR Package. > > > > Stan > > > > > > > -------------------------------------------------------------- > ---------- > > *From:* Ed Seidewitz [mailto:ed-s@enterprisecomponent.com] > > *Sent:* Wednesday, January 04, 2006 11:50 AM > > *To:* jbutler@everware.com; 'Larry L. Johnson'; > 'Manfred R. Koethe'; > > cory-c@enterprisecomponent.com > > *Cc:* ontology@omg.org; adtf@omg.org > > *Subject:* RE: Multiple classifiers for an instance in > MOF and RDF > > as defined in ODM > > > > John -- > > > > TypedElement is generally used for "container" sorts of > things that > > can "hold" values, like attributes and parameters. > These always have > > a single type to which their contents must conform. > > > > An InstanceSpecification, on the other hand, is a model of an > > instance, which is one of the things that can /be/ held by > > TypedElements. UML allows instances to be multiply classified. A > > TypedElement can hold an instance for which any of its > classifiers > > conforms to the type of the TypedElement. > > > > (UML minutiae I can answer about. Cory's question I am > still trying > > to understand...) > > > > -- Ed > > > > > -------------------------------------------------------------- > ---------- > > *From:* John C. Butler [mailto:jbutler@everware.com] > > *Sent:* Wednesday, January 04, 2006 2:33 PM > > *To:* 'Larry L. Johnson'; 'Manfred R. Koethe'; > > cory-c@enterprisecomponent.com > > *Cc:* ontology@omg.org; adtf@omg.org > > *Subject:* RE: Multiple classifiers for an instance > in MOF and > > RDF as defined in ODM > > > > Hi Cory et al, > > > > My understanding of the MOF (though not as > extensive as others > > on this thread) is that InstanceSpecification (I'm > assuming this > > is what you mean by your use of Instance below) can have > > multiple Classifiers at the same time. Since > Classifiers are > > specializations of Type it seems as though the > issue you raise > > is not a problem for MOF. I must say that I don't > know enough > > about XMI to determine whether it can handle this > or not though > > it would be silly if it didn't. > > > > There is one point of confusion for me, however. There is a > > metaclass called TypedElement that can be related > to at most one > > Type. InstanceSpecification is not a kind of > TypedElement. Can > > someone explain that to me? I'd have thought that > > InstanceSpecification would be a specialization > thereof and that > > the "classifier" association on it would be a > specialization of > > the "type" association on TypedElement but > apparently that's not > > the case. > > > > Regards, > > - jb > > > > > > > > > > > > -------------------------------------------------------------- > ---------- > > > > *From:* Larry L. Johnson > [mailto:Larry.Johnson@TethersEnd.com] > > *Sent:* Wednesday, January 04, 2006 12:06 PM > > *To:* 'Manfred R. Koethe' > > *Cc:* ontology@omg.org; adtf@omg.org > > *Subject:* RE: Multiple classifiers for an instance > in MOF and > > RDF as defined in ODM > > > > > > > > Hi Manfred, > > > > I'll ignore the red herring PIM/PSM stuff & leave > it that I know > > what Cory meant. (He didn't even imply there is > only one PSM per > > PIM... whatever PIM & PSM mean). > > > > The key issue in Cory's memo is an instance being > of multiple > > types, not necessarily through transitive type casting up an > > "is-a" tree. To what degree does the MOF dynamic > typing support > > this? > > > > ISO 10303 does allow an instance to be of multiple > types, but > > only of multiple subtypes of some common supertype > (categorical > > as opposed to partitioning subtyping). Though if > you disagree, I > > defer without further argument to your deeper knowledge of > EXPRESS. > > > > Regards, > > Larry > > > > > > > > -----Original Message----- > > From: Manfred R. Koethe [mailto:koethe@88solutions.com] > > Sent: Wednesday, January 04, 2006 11:27 AM > > To: Cory Casanave > > Cc: ontology@omg.org; adtf@omg.org > > Subject: Re: Multiple classifiers for an instance > in MOF and RDF > > as defined in ODM > > > > > > > > Cory, > > > > > > > > You are correct that the MOF metamodel has dynamic typing > > capabilities > > > > built in, they just have to be utilized... > > > > > > > > However, I like to correct you in one thing: You > wrote in your > last > > > > sentence "... the MOF-PSM (XMI)". Here is my take on that: > > > > > > > > 1. There is no such thing as *THE* PSM for a PIM. > Any PIM may > > be > > > > mapped to an infinite number of PSMs, and there is no > guarantee > > > > that any of these PSMs is a *complete* > representation of the > > PIM. > > > > > > > > 2. XMI is *NOT* "THE" MOF PSM. It is actually a model > > transport > > > > representation, allowing the *transportation* > of a model > > (on > > > > whatsoever M-level) from one MOF implementation > to another > > MOF > > > > implementation and allowing a rebuilding of a > (hopefully) > > > > semantically complete replication of the model in the > > target > > > > MOF implementation. > > > > > > > > 3. As I said, XMI is a *transportation* technology. It is > restricted > > > > by the capabilities of its underlying technology (XML > > Schema). It > > > > was never intended as a *runtime* > representation, any use > > of > XMI > > > > as a runtime format is (IMHO) a regretful and > serious mistake. > > > > XMI is a compromise to make model exchange (and > archiving) > > possible > > > > for a wide community. It lives from techniques of > > *rebuilding* > a > > > > runtime model out of its transport representation. > > > > > > > > Btw., the thing you are bringing up here is nothing > new (just > > the > > > > names are different...). ISO 10303 (STEP) is > dealing with the > > very same > > > > issue since more than 15 years.... > > > > > > > > [what we can learn from history is that we don't learn from > > history...] > > > > > > > > Kind regards, > > > > > > > > Manfred > > > > > > > > > > > > Cory Casanave wrote: > > > >> This is a question involving ODM as well as MOF XMI and > > Life-cycle. > > > >> > > > >> > > > >> > > > >> In ODM we have RDF and OWL defined as MOF meta models, the > > assumption > > > >> being, of course, that you can have MOF instances of RDF > > graphs. But > > > >> can you? In RDF & OWL an instance (at any M level) can have (and > > > >> frequently does have) multiple types - it is classified by > > more than one > > > >> class. While this is perfectly legal in UML and even in the > > MOF meta > > > >> model, I don't think the concept is supported in XMI or the > > current > > > >> life-cycle. So, can you actually represent RDF in MOF? If > > not, the ODM > > > >> models are not valid - I hope I am wrong about this. > > > >> > > > >> The ability for an instance to be classified by more than one > > class is a > > > >> major advantage of RDF and of ontology languages, the C++ > > heritage in > > > >> MOF of an instance statically being a member of a single class > > puts MOF > > > >> at a disadvantage in relation to these other technologies. It > > makes it > > > >> very difficult to represent different aspects of an instance, > > as can be > > > >> seen from the package merge complexities - which would not > > have been > > > >> required is we had multiple classification in MOF. > > > >> > > > >> If this is actually a semantic mis-match between MOF and ODM, > > is may > > > >> make more sense to add the capability to MOF since the MOF > > meta model > > > >> does not preclude this capability - it is only a restriction > > of the > > > >> MOF-PSM (XMI). > > > >> > > > > > > > > -- > > > > ___________________ > > > > / Manfred R. Koethe \_____________________________________ > > > > 88solutions Corp. E-Mail: koethe@88solutions.com > > > > 37 Mague Avenue Tel: +1 (617) 848 0525 > > > > Newton, MA 02465-1553 FAX: +1 (617) 848 8819 > > > > U.S.A. > > > > _____________________________"We make your business flow"_ > > > > > > > > > > > > -- > ___________________ > / Manfred R. Koethe \_____________________________________ > 88solutions Corp. E-Mail: koethe@88solutions.com > 37 Mague Avenue Tel: +1 (617) 848 0525 > Newton, MA 02465-1553 FAX: +1 (617) 848 8819 > U.S.A. > _____________________________"We make your business flow"_ > Date: Fri, 6 Jan 2006 19:03:56 +0001 From: Laurence Tratt To: ontology@omg.org, adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM User-Agent: mutt I haven't followed all of this discussion, but if people are really asking for an object to have multiple meta-classes, then I'd strongly suggest thinking carefully before going far down this path. Saying "oh, yeah, an object can have multiple meta-classes" is easy. But that statement hides a potential world of implementation pain that I doubt many people will be willing to stomach. The best possible (or, perhaps more accurately, least worst) scenario is for technologies where meta-classes are constraints determining what a valid instance is, but which is not capable of directly creating such instances. In this instance, one would expect to have a similar level of pain to multiple inheritance in programming languages - and don't forget that an awful lot of modern programming languages have explicitly dropped this concept because of this level of pain. The corner cases (what happens if two different meta-classes have an attribute with the same name but different type etc etc) are numerous and notoriously tricky. The real problem will be for technologies where meta-classes can actually construct instances. In those cases I have no idea what it would mean to have multiple meta-classes - practically speaking it's going to be all but impossible to work out what such a technology should do. In summary: rather you than me. Laurie -- http://tratt.net/laurie/ -- Personal http://convergepl.org/ -- The Converge programming language http://sosym.dcs.kcl.ac.uk/ -- Software and Systems Modelling Team Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Fri, 6 Jan 2006 11:23:34 -0800 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Multiple classifiers for an instance in MOF and RDF as defined in ODM Thread-Index: AcYS62xuzolpidzpSaan7HasW6lSdgACxU7w From: "Pete Rivett" To: "Jishnu Mukerji" , "Cory Casanave" Cc: , As I said in a previous email I think the issue(s) Manfred has in mind represent major structural changes that are IMHO way beyond what an RTF can take on. Pete -------------------------------------------------------------------------------- From: Jishnu Mukerji [mailto:jishnu@hp.com] Sent: Friday, January 06, 2006 6:03 PM To: Cory Casanave Cc: Pete Rivett; ontology@omg.org; adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM And here I was under the impression that Manfred thought that MOF would support multiple typing after the issue that he forgot to file is addressed in an RTF or some such. Am I confused or what? Jishnu. Cory Casanave wrote: Pete (Etc), Perhaps you are right and I am having meta-mind block (it has to happen to everyone sometime). Just to be sure we have prepared a valid OWL-Full ontology (Enclosed) . perhaps someone with ODM implemented could import it and show the corresponding XMI to prove it? Note that both .ProductCatagory. and .LineItem. have multiple types. It is interesting that Manfred thinks MOF does support multiple typing, but I am not sure how or if any other MOF would understand it. It could, perhaps, be supported under the current API if more than one object could have the same UUID? -Cory -------------------------------------------------------------------------------- From: Pete Rivett [mailto:pete.rivett@adaptive.com] Sent: Thursday, January 05, 2006 6:22 AM To: Cory Casanave; ontology@omg.org; adtf@omg.org Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM > In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. ..... > So, can you actually represent RDF in MOF? If not, the ODM models are not valid . I hope I am wrong about this. Cory, ODM provides a way of representing RDF Schemas (also OWL Ontologies, Topic Maps etc) as instances of a MOF metamodel (ODM itself). RDF Schemas can also be represented in RDF, but also (in theory) in a number of other ways - as rows in a set of relational tables designed for the purpose, in Prolog etc. The point is that the ability to represent a model (in this case an RDF Schema) in a certain technology does not require the ability to also represent instances of that model in the same technology. A good example of this is the language used for representing DTDs - it cannot also be used to represent XML documents that are instances of the DTD. Also, consider a hypothetical UML metamodel without support for instance diagrams - it would support the majority of UML models but not be able to represent their instances. So MOF can be quite adequate for the needs of ODM - representing RDF Schemas - without requiring the ability to represent arbitrary RDF documents. Actually it is possible to represent RDF documents in MOF, though in a 'non-native' manner - indeed the ODM draft specification does just this - there is a MOF metaclass RDFSResource with a multivalued reference RDFType to RDFSClass. Whether it would be a good idea for MOF to support multiple classification of instances is a separate question. At the moment it does not (nothing to do with XMI): since the operation Reflection::Element::getMetaClass() is single valued. I'm personally inclined to agree with you, but that is a major change that would need a new RFP. Happy New Year to everyone Pete Pete Rivett (mailto:pete.rivett@adaptive.com) CTO, Adaptive Inc. Hello House, 135 Somerford Road, Christchurch, BH23 3PY, UK Tel: +44 (0)1202 491243 Fax: +44 (0)1202 491241 http://www.adaptive.com -------------------------------------------------------------------------------- From: Cory Casanave [mailto:cbc@enterprisecomponent.com] Sent: Wednesday, January 04, 2006 4:12 AM To: ontology@omg.org; adtf@omg.org Subject: Multiple classifiers for an instance in MOF and RDF as defined in ODM This is a question involving ODM as well as MOF XMI and Life-cycle. In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. But can you? In RDF & OWL an instance (at any M level) can have (and frequently does have) multiple types . it is classified by more than one class. While this is perfectly legal in UML and even in the MOF meta model, I don.t think the concept is supported in XMI or the current life-cycle. So, can you actually represent RDF in MOF? If not, the ODM models are not valid . I hope I am wrong about this. The ability for an instance to be classified by more than one class is a major advantage of RDF and of ontology languages, the C++ heritage in MOF of an instance statically being a member of a single class puts MOF at a disadvantage in relation to these other technologies. It makes it very difficult to represent different aspects of an instance, as can be seen from the package merge complexities - which would not have been required is we had multiple classification in MOF. If this is actually a semantic mis-match between MOF and ODM, is may make more sense to add the capability to MOF since the MOF meta model does not preclude this capability . it is only a restriction of the MOF-PSM (XMI). Date: Fri, 06 Jan 2006 14:43:21 -0500 From: Jishnu Mukerji Organization: HP Software AMOC/ATG User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.3) Gecko/20040910 X-Accept-Language: en-us, en To: Pete Rivett Cc: Cory Casanave , ontology@omg.org, adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM I agree. I was merely stating the facts as I saw them fly by in various email messages without passing any judgment on the prudence or sanity of some of them. Jishnu. Pete Rivett wrote: As I said in a previous email I think the issue(s) Manfred has in mind represent major structural changes that are IMHO way beyond what an RTF can take on. Pete -------------------------------------------------------------------------------- From: Jishnu Mukerji [mailto:jishnu@hp.com] Sent: Friday, January 06, 2006 6:03 PM To: Cory Casanave Cc: Pete Rivett; ontology@omg.org; adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM And here I was under the impression that Manfred thought that MOF would support multiple typing after the issue that he forgot to file is addressed in an RTF or some such. Am I confused or what? Jishnu. Cory Casanave wrote: Pete (Etc), Perhaps you are right and I am having meta-mind block (it has to happen to everyone sometime). Just to be sure we have prepared a valid OWL-Full ontology (Enclosed) . perhaps someone with ODM implemented could import it and show the corresponding XMI to prove it? Note that both .ProductCatagory. and .LineItem. have multiple types. It is interesting that Manfred thinks MOF does support multiple typing, but I am not sure how or if any other MOF would understand it. It could, perhaps, be supported under the current API if more than one object could have the same UUID? -Cory -------------------------------------------------------------------------------- From: Pete Rivett [mailto:pete.rivett@adaptive.com] Sent: Thursday, January 05, 2006 6:22 AM To: Cory Casanave; ontology@omg.org; adtf@omg.org Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM > In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. ..... > So, can you actually represent RDF in MOF? If not, the ODM models are not valid . I hope I am wrong about this. Cory, ODM provides a way of representing RDF Schemas (also OWL Ontologies, Topic Maps etc) as instances of a MOF metamodel (ODM itself). RDF Schemas can also be represented in RDF, but also (in theory) in a number of other ways - as rows in a set of relational tables designed for the purpose, in Prolog etc. The point is that the ability to represent a model (in this case an RDF Schema) in a certain technology does not require the ability to also represent instances of that model in the same technology. A good example of this is the language used for representing DTDs - it cannot also be used to represent XML documents that are instances of the DTD. Also, consider a hypothetical UML metamodel without support for instance diagrams - it would support the majority of UML models but not be able to represent their instances. So MOF can be quite adequate for the needs of ODM - representing RDF Schemas - without requiring the ability to represent arbitrary RDF documents. Actually it is possible to represent RDF documents in MOF, though in a 'non-native' manner - indeed the ODM draft specification does just this - there is a MOF metaclass RDFSResource with a multivalued reference RDFType to RDFSClass. Whether it would be a good idea for MOF to support multiple classification of instances is a separate question. At the moment it does not (nothing to do with XMI): since the operation Reflection::Element::getMetaClass() is single valued. I'm personally inclined to agree with you, but that is a major change that would need a new RFP. Happy New Year to everyone Pete Pete Rivett (mailto:pete.rivett@adaptive.com) CTO, Adaptive Inc. Hello House, 135 Somerford Road, Christchurch, BH23 3PY, UK Tel: +44 (0)1202 491243 Fax: +44 (0)1202 491241 http://www.adaptive.com -------------------------------------------------------------------------------- From: Cory Casanave [mailto:cbc@enterprisecomponent.com] Sent: Wednesday, January 04, 2006 4:12 AM To: ontology@omg.org; adtf@omg.org Subject: Multiple classifiers for an instance in MOF and RDF as defined in ODM This is a question involving ODM as well as MOF XMI and Life-cycle. In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. But can you? In RDF & OWL an instance (at any M level) can have (and frequently does have) multiple types . it is classified by more than one class. While this is perfectly legal in UML and even in the MOF meta model, I don.t think the concept is supported in XMI or the current life-cycle. So, can you actually represent RDF in MOF? If not, the ODM models are not valid . I hope I am wrong about this. The ability for an instance to be classified by more than one class is a major advantage of RDF and of ontology languages, the C++ heritage in MOF of an instance statically being a member of a single class puts MOF at a disadvantage in relation to these other technologies. It makes it very difficult to represent different aspects of an instance, as can be seen from the package merge complexities - which would not have been required is we had multiple classification in MOF. If this is actually a semantic mis-match between MOF and ODM, is may make more sense to add the capability to MOF since the MOF meta model does not preclude this capability . it is only a restriction of the MOF-PSM (XMI). smime2.p7s Date: Fri, 06 Jan 2006 14:56:08 -0500 From: Ed Barkmeyer Reply-To: edbark@nist.gov Organization: NIST User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.2) Gecko/20040804 Netscape/7.2 (ax) X-Accept-Language: en, fr, de, pdf, it, nl, sv, es, ru To: Pete Rivett CC: ontology@omg.org, adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Pete Rivett wrote: As I said in a previous email I think the issue(s) Manfred has in mind represent major structural changes that are IMHO way beyond what an RTF can take on. Pete +1 -Ed -- Edward J. Barkmeyer Email: edbark@nist.gov National Institute of Standards & Technology Manufacturing Systems Integration Division 100 Bureau Drive, Stop 8263 Tel: +1 301-975-3528 Gaithersburg, MD 20899-8263 FAX: +1 301-975-4482 "The opinions expressed above do not reflect consensus of NIST, and have not been reviewed by any Government authority." Date: Fri, 06 Jan 2006 12:45:49 -0800 From: "Elisa F. Kendall" Organization: Sandpiper Software, Inc. User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.2) Gecko/20040804 Netscape/7.2 (ax;nscd1) X-Accept-Language: en-us, en To: Cory Casanave CC: "'Pete Rivett'" , ontology@omg.org, adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Cory, We'll take a look at this, though XMI generation is not yet automated in our environment. I'm not sure whether Gordon can do so -- will ask him (IBM China Research), as their implementation, last time I checked, did not reflect the current metamodel. I'll also run the ontology through our checking paces for you (we use several reasoners, as few support exactly the same set of features, only FOL reasoners support OWL Full, etc.), and let you know what we find. By the way, the "meta mind block" has affected many, many folk we've talked with -- you're in good company. There are clear distinctions between the model of the abstract syntax of RDF and OWL, the model of an RDF-compatible repository such as a triple store, a repository model (MOF or otherwise) for ontology asset management that supports navigation in directions that the language does not (for example, finding all of the properties that a particular class is the domain of), a repository model for a deductive knowledge base, and any application model you might think of. I believe our current metamodels for RDF and OWL accurately reflect the abstract syntax of the respective languages, with perhaps one or two minor hiccups remaining that we are uncovering through QVT testing. Best regards, Elisa Cory Casanave wrote: Pete (Etc), Perhaps you are right and I am having meta-mind block (it has to happen to everyone sometime). Just to be sure we have prepared a valid OWL-Full ontology (Enclosed) . perhaps someone with ODM implemented could import it and show the corresponding XMI to prove it? Note that both .ProductCatagory. and .LineItem. have multiple types. It is interesting that Manfred thinks MOF does support multiple typing, but I am not sure how or if any other MOF would understand it. It could, perhaps, be supported under the current API if more than one object could have the same UUID? -Cory -------------------------------------------------------------------------------- From: Pete Rivett [mailto:pete.rivett@adaptive.com] Sent: Thursday, January 05, 2006 6:22 AM To: Cory Casanave; ontology@omg.org; adtf@omg.org Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM > In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. ..... > So, can you actually represent RDF in MOF? If not, the ODM models are not valid . I hope I am wrong about this. Cory, ODM provides a way of representing RDF Schemas (also OWL Ontologies, Topic Maps etc) as instances of a MOF metamodel (ODM itself). RDF Schemas can also be represented in RDF, but also (in theory) in a number of other ways - as rows in a set of relational tables designed for the purpose, in Prolog etc. The point is that the ability to represent a model (in this case an RDF Schema) in a certain technology does not require the ability to also represent instances of that model in the same technology. A good example of this is the language used for representing DTDs - it cannot also be used to represent XML documents that are instances of the DTD. Also, consider a hypothetical UML metamodel without support for instance diagrams - it would support the majority of UML models but not be able to represent their instances. So MOF can be quite adequate for the needs of ODM - representing RDF Schemas - without requiring the ability to represent arbitrary RDF documents. Actually it is possible to represent RDF documents in MOF, though in a 'non-native' manner - indeed the ODM draft specification does just this - there is a MOF metaclass RDFSResource with a multivalued reference RDFType to RDFSClass. Whether it would be a good idea for MOF to support multiple classification of instances is a separate question. At the moment it does not (nothing to do with XMI): since the operation Reflection::Element::getMetaClass() is single valued. I'm personally inclined to agree with you, but that is a major change that would need a new RFP. Happy New Year to everyone Pete Pete Rivett (mailto:pete.rivett@adaptive.com) CTO, Adaptive Inc. Hello House, 135 Somerford Road, Christchurch, BH23 3PY, UK Tel: +44 (0)1202 491243 Fax: +44 (0)1202 491241 http://www.adaptive.com -------------------------------------------------------------------------------- From: Cory Casanave [mailto:cbc@enterprisecomponent.com] Sent: Wednesday, January 04, 2006 4:12 AM To: ontology@omg.org; adtf@omg.org Subject: Multiple classifiers for an instance in MOF and RDF as defined in ODM This is a question involving ODM as well as MOF XMI and Life-cycle. In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. But can you? In RDF & OWL an instance (at any M level) can have (and frequently does have) multiple types . it is classified by more than one class. While this is perfectly legal in UML and even in the MOF meta model, I don.t think the concept is supported in XMI or the current life-cycle. So, can you actually represent RDF in MOF? If not, the ODM models are not valid . I hope I am wrong about this. The ability for an instance to be classified by more than one class is a major advantage of RDF and of ontology languages, the C++ heritage in MOF of an instance statically being a member of a single class puts MOF at a disadvantage in relation to these other technologies. It makes it very difficult to represent different aspects of an instance, as can be seen from the package merge complexities - which would not have been required is we had multiple classification in MOF. If this is actually a semantic mis-match between MOF and ODM, is may make more sense to add the capability to MOF since the MOF meta model does not preclude this capability . it is only a restriction of the MOF-PSM (XMI). Date: Fri, 06 Jan 2006 12:45:49 -0800 From: "Elisa F. Kendall" Organization: Sandpiper Software, Inc. User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.2) Gecko/20040804 Netscape/7.2 (ax;nscd1) X-Accept-Language: en-us, en To: Cory Casanave CC: "'Pete Rivett'" , ontology@omg.org, adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Cory, We'll take a look at this, though XMI generation is not yet automated in our environment. I'm not sure whether Gordon can do so -- will ask him (IBM China Research), as their implementation, last time I checked, did not reflect the current metamodel. I'll also run the ontology through our checking paces for you (we use several reasoners, as few support exactly the same set of features, only FOL reasoners support OWL Full, etc.), and let you know what we find. By the way, the "meta mind block" has affected many, many folk we've talked with -- you're in good company. There are clear distinctions between the model of the abstract syntax of RDF and OWL, the model of an RDF-compatible repository such as a triple store, a repository model (MOF or otherwise) for ontology asset management that supports navigation in directions that the language does not (for example, finding all of the properties that a particular class is the domain of), a repository model for a deductive knowledge base, and any application model you might think of. I believe our current metamodels for RDF and OWL accurately reflect the abstract syntax of the respective languages, with perhaps one or two minor hiccups remaining that we are uncovering through QVT testing. Best regards, Elisa Cory Casanave wrote: Pete (Etc), Perhaps you are right and I am having meta-mind block (it has to happen to everyone sometime). Just to be sure we have prepared a valid OWL-Full ontology (Enclosed) . perhaps someone with ODM implemented could import it and show the corresponding XMI to prove it? Note that both .ProductCatagory. and .LineItem. have multiple types. It is interesting that Manfred thinks MOF does support multiple typing, but I am not sure how or if any other MOF would understand it. It could, perhaps, be supported under the current API if more than one object could have the same UUID? -Cory -------------------------------------------------------------------------------- From: Pete Rivett [mailto:pete.rivett@adaptive.com] Sent: Thursday, January 05, 2006 6:22 AM To: Cory Casanave; ontology@omg.org; adtf@omg.org Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM > In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. ..... > So, can you actually represent RDF in MOF? If not, the ODM models are not valid . I hope I am wrong about this. Cory, ODM provides a way of representing RDF Schemas (also OWL Ontologies, Topic Maps etc) as instances of a MOF metamodel (ODM itself). RDF Schemas can also be represented in RDF, but also (in theory) in a number of other ways - as rows in a set of relational tables designed for the purpose, in Prolog etc. The point is that the ability to represent a model (in this case an RDF Schema) in a certain technology does not require the ability to also represent instances of that model in the same technology. A good example of this is the language used for representing DTDs - it cannot also be used to represent XML documents that are instances of the DTD. Also, consider a hypothetical UML metamodel without support for instance diagrams - it would support the majority of UML models but not be able to represent their instances. So MOF can be quite adequate for the needs of ODM - representing RDF Schemas - without requiring the ability to represent arbitrary RDF documents. Actually it is possible to represent RDF documents in MOF, though in a 'non-native' manner - indeed the ODM draft specification does just this - there is a MOF metaclass RDFSResource with a multivalued reference RDFType to RDFSClass. Whether it would be a good idea for MOF to support multiple classification of instances is a separate question. At the moment it does not (nothing to do with XMI): since the operation Reflection::Element::getMetaClass() is single valued. I'm personally inclined to agree with you, but that is a major change that would need a new RFP. Happy New Year to everyone Pete Pete Rivett (mailto:pete.rivett@adaptive.com) CTO, Adaptive Inc. Hello House, 135 Somerford Road, Christchurch, BH23 3PY, UK Tel: +44 (0)1202 491243 Fax: +44 (0)1202 491241 http://www.adaptive.com -------------------------------------------------------------------------------- From: Cory Casanave [mailto:cbc@enterprisecomponent.com] Sent: Wednesday, January 04, 2006 4:12 AM To: ontology@omg.org; adtf@omg.org Subject: Multiple classifiers for an instance in MOF and RDF as defined in ODM This is a question involving ODM as well as MOF XMI and Life-cycle. In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. But can you? In RDF & OWL an instance (at any M level) can have (and frequently does have) multiple types . it is classified by more than one class. While this is perfectly legal in UML and even in the MOF meta model, I don.t think the concept is supported in XMI or the current life-cycle. So, can you actually represent RDF in MOF? If not, the ODM models are not valid . I hope I am wrong about this. The ability for an instance to be classified by more than one class is a major advantage of RDF and of ontology languages, the C++ heritage in MOF of an instance statically being a member of a single class puts MOF at a disadvantage in relation to these other technologies. It makes it very difficult to represent different aspects of an instance, as can be seen from the package merge complexities - which would not have been required is we had multiple classification in MOF. If this is actually a semantic mis-match between MOF and ODM, is may make more sense to add the capability to MOF since the MOF meta model does not preclude this capability . it is only a restriction of the MOF-PSM (XMI). Date: Fri, 06 Jan 2006 17:21:06 -0500 From: Ed Barkmeyer Reply-To: edbark@nist.gov Organization: NIST User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.2) Gecko/20040804 Netscape/7.2 (ax) X-Accept-Language: en, fr, de, pdf, it, nl, sv, es, ru To: Laurence Tratt CC: ontology@omg.org, adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Laurie's email sent me off on a thread I decided to burden you all with. Laurie Tratt wrote: The best possible (or, perhaps more accurately, least worst) scenario is for technologies where meta-classes are constraints determining what a valid instance is, but which is not capable of directly creating such instances. There is an important difference between ontology development and object modeling: - object modeling is about assigning properties to things according to their classes. In object modeling THE class to which an instance belongs determines ALL the properties of that instance. - ontologies support the idea of assigning properties to a class and thereby to its instances, but their primary thrust is about classifying things by the properties they HAVE. In ontologies, the properties of an instance determine the classES to which it belongs. In this instance, one would expect to have a similar level of pain to multiple inheritance in programming languages - and don't forget that an awful lot of modern programming languages have explicitly dropped this concept because of this level of pain. But that pain is a direct result of managing sets of properties as contiguous data structures. If you have single inheritance, like Java, you can construct a linear sequence of data structures to represent an instance, and that sequence will properly represent it as an instance of any of its supertypes as well. If you have multiple inheritance, there is no equivalent approach. The relational approach is to make each of the "class" data structures a separate "table" and give the instance a single key that is common to all the "class" data structures of which it is an instance. This supports multiple inheritance with very little "pain". It also eliminates the distinction between classes and roles, allows dynamic reclassification and transient roles, etc. -- the key does not change, but the tables in which you find it may. (But this approach does necessitate dynamically constructing the "natural join" of multiple tables in order to exploit properties of the instance as an instance of multiple classes in a single expression. In the Java model, by comparison, fixed offsets from the "instance key" (pointer) value give access to all of the properties.) I'm not saying "relational is better". I'm just saying "multiple classification" is a problem for object technologies because of the way in which they are *implemented*. There is nothing *conceptually* weird about multiple classification. The real problem will be for technologies where meta-classes can actually construct instances. But those are purely "object factory" concerns. Constructors can be as complicated as they need to be. But the factory idea illustrates another important conceptual difference between ontologies and object models. In object models, instances and properties are 2nd-class citizens -- they arise from, and are existentially dependent on, classes. In ontologies, instances, properties and classes are all 1st-class citizens. Instances can exist as members of the universe (class "Object") and be assigned properties as we learn that those properties are true. Classes can be defined as properties in their own right, or in terms of other properties that characterize them, which allows us to learn which instances belong to a class. And we may indeed discover that a given instance belongs to several classes that are not known to be related. This is the approach that RDF and OWL are intended to support. So we should not be surprised to find that "object modeling semantics" don't fit RDF and OWL models well. At the same time, I should note that some, perhaps many, "ontologies" are, or could easily be expressed as, object models. Taxonomies, a la Linnaeus, are the most common "ontologies", and they are characterized by single hierarchical inheritance. (But the good ones, like biological classification, are also characterized by "membership predicates" -- rules that tell you how to classify an instance by its properties.) And I have seen OWL models that consist only of "primitive" classes -- the only way I can know an instance x is a member of class C is that the knowledge base contains the fact: x is a member of C. And therefore the properties of x are those defined for members of C. And such a model can be completely captured with UML Class diagram semantics. All of this is why we are not soon going to "fix the MOF semantics" to handle the models of classification in RDF or OWL or relational databases. The semantics of those languages is simply different from, even inconsistent with, the semantics of the MOF itself. This takes nothing away from the MOF itself. As a means of *capturing* the concepts in modeling languages, and as a means of capturing models as instances of those language concepts, *MOF is adequate* as currently defined. As I said earlier, however, MOF is not a means of *interpreting* the captured models. As a means of capturing the *semantics* of modeling languages, MOF can represent only a few conceptual notions, and they are not the most generic ones. Simple classification is a case in point: MOF doesn't model "classification"; it models a constrained form of it. So, in general, you can't build the semantics of modeling languages on MOF semantics. The conceptual notions in some languages produce "engineering artifacts" in the MOF representation, like 2 XMI ids for the same conceptual instance. MOF is an implementation technology, and all implementation technologies produce such artifacts. Think of trying to model AssociationClass in Java. -Ed P.S. Chris Menzel, one of the authors of ISO 24707 Common Logic, will argue that first-order-logic is the generic conceptual foundation that can be used to capture the semantics of all modeling languages. And he is right, or at least his position is pretty defensible. But the way in which Common Logic captures semantics doesn't make the concepts (or the abstract syntax) of the modeling languages very accessible to humans. The set of properties of a concept is captured in *exactly all* of the logic statements that involve it. And since most logic statements involve two or more concepts, and since it usually takes several statements to capture one "property" (of the OWL or RDF kind) completely, it is not easy to collect and interpret the statements that characterize a concept. An approach like MOF is complementary to CL, and is essential to making the conceptual elements accessible. -- Edward J. Barkmeyer Email: edbark@nist.gov National Institute of Standards & Technology Manufacturing Systems Integration Division 100 Bureau Drive, Stop 8263 Tel: +1 301-975-3528 Gaithersburg, MD 20899-8263 FAX: +1 301-975-4482 "The opinions expressed above do not reflect consensus of NIST, and have not been reviewed by any Government authority." From: "Cory Casanave" To: , "'Laurence Tratt'" Cc: , Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Fri, 6 Jan 2006 17:58:00 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcYTD76c7IoXGyqQRmaggtb0gVKOewAAXGcg X-OriginalArrivalTime: 06 Jan 2006 22:58:06.0761 (UTC) FILETIME=[A8207190:01C61314] Ed, Ed, We currently and for quite some time have -MODELED- our object systems based on domain semantics and this naturally includes multiple and dynamic classifications. Sometimes we call this roles, sometimes dynamic subtypes or it is just a part of the way we model - we do not assume instances have only one type - and most people (domain people) don't make that assumption either. For example in UML, this is a perfectly natural thing to do and there is specific support to specify when instances may or may not share classes. Object modeling does frequently get confused with object programming which does usually have the single & static type restriction. Based on our shared philosophy of MDA we should recognize the patterns for mapping our modeling concepts down to these platforms. There are existing, reliable and relatively simple patterns for realizing your object model (including multiple and dynamic classification) with Java, C++ or whatever. We can go into these separately if and when it seems a good idea. For these reasons I would propose it a mistake to limit object modeling based on the PSM capabilities of Java and C++. The MOF provides an abstract model that can capture a true representation of the problem and there is no reason the specification should not allow for that capability. I and others have implemented such structures for a object ands meta object systems multiple times. The side-effects of not having multiple classification in MOF makes the integration of multiple meta models difficult and the organization of complex models, such as UML, even more complex. A multiple-type approach to integrating multiple aspects of a concept would have had far less complexity and side effects than the static approach attempted with package merge. That said, I would not try and "slip it in" through an RTF issue. The capability for multiple classification is one reason I am leaning away from MOF and looking at RDF as the metadata integration platform of choice. Perhaps MOF needs to look at the competitive landscape as well. (Ok, I opened a can of worms here) Of course, this is not to suggest you HAVE to use this capability. If you are modeling a Java program you may want to be locked to that languages level of abstraction. I also understand that many people that model are locked into the Java/C++ rule set - to bad for them. For me, I want to model at a high level and map to programming languages. Given a modeling, not OOP perspective I find much less distinction between object modeling and ontology modeling than you propose below, they seem like different ways to express concepts about the same things with slightly different rules. Regards, Cory Casanave -----Original Message----- From: Ed Barkmeyer [mailto:edbark@nist.gov] Sent: Friday, January 06, 2006 5:21 PM To: Laurence Tratt Cc: ontology@omg.org; adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Laurie's email sent me off on a thread I decided to burden you all with. Laurie Tratt wrote: > The best possible (or, perhaps more accurately, least worst) scenario is for > technologies where meta-classes are constraints determining what a valid > instance is, but which is not capable of directly creating such instances. There is an important difference between ontology development and object modeling: - object modeling is about assigning properties to things according to their classes. In object modeling THE class to which an instance belongs determines ALL the properties of that instance. - ontologies support the idea of assigning properties to a class and thereby to its instances, but their primary thrust is about classifying things by the properties they HAVE. In ontologies, the properties of an instance determine the classES to which it belongs. > In > this instance, one would expect to have a similar level of pain to multiple > inheritance in programming languages - and don't forget that an awful lot of > modern programming languages have explicitly dropped this concept because of > this level of pain. But that pain is a direct result of managing sets of properties as contiguous data structures. If you have single inheritance, like Java, you can construct a linear sequence of data structures to represent an instance, and that sequence will properly represent it as an instance of any of its supertypes as well. If you have multiple inheritance, there is no equivalent approach. The relational approach is to make each of the "class" data structures a separate "table" and give the instance a single key that is common to all the "class" data structures of which it is an instance. This supports multiple inheritance with very little "pain". It also eliminates the distinction between classes and roles, allows dynamic reclassification and transient roles, etc. -- the key does not change, but the tables in which you find it may. (But this approach does necessitate dynamically constructing the "natural join" of multiple tables in order to exploit properties of the instance as an instance of multiple classes in a single expression. In the Java model, by comparison, fixed offsets from the "instance key" (pointer) value give access to all of the properties.) I'm not saying "relational is better". I'm just saying "multiple classification" is a problem for object technologies because of the way in which they are *implemented*. There is nothing *conceptually* weird about multiple classification. > The real problem will be for technologies where meta-classes can actually > construct instances. But those are purely "object factory" concerns. Constructors can be as complicated as they need to be. But the factory idea illustrates another important conceptual difference between ontologies and object models. In object models, instances and properties are 2nd-class citizens -- they arise from, and are existentially dependent on, classes. In ontologies, instances, properties and classes are all 1st-class citizens. Instances can exist as members of the universe (class "Object") and be assigned properties as we learn that those properties are true. Classes can be defined as properties in their own right, or in terms of other properties that characterize them, which allows us to learn which instances belong to a class. And we may indeed discover that a given instance belongs to several classes that are not known to be related. This is the approach that RDF and OWL are intended to support. So we should not be surprised to find that "object modeling semantics" don't fit RDF and OWL models well. At the same time, I should note that some, perhaps many, "ontologies" are, or could easily be expressed as, object models. Taxonomies, a la Linnaeus, are the most common "ontologies", and they are characterized by single hierarchical inheritance. (But the good ones, like biological classification, are also characterized by "membership predicates" -- rules that tell you how to classify an instance by its properties.) And I have seen OWL models that consist only of "primitive" classes -- the only way I can know an instance x is a member of class C is that the knowledge base contains the fact: x is a member of C. And therefore the properties of x are those defined for members of C. And such a model can be completely captured with UML Class diagram semantics. All of this is why we are not soon going to "fix the MOF semantics" to handle the models of classification in RDF or OWL or relational databases. The semantics of those languages is simply different from, even inconsistent with, the semantics of the MOF itself. This takes nothing away from the MOF itself. As a means of *capturing* the concepts in modeling languages, and as a means of capturing models as instances of those language concepts, *MOF is adequate* as currently defined. As I said earlier, however, MOF is not a means of *interpreting* the captured models. As a means of capturing the *semantics* of modeling languages, MOF can represent only a few conceptual notions, and they are not the most generic ones. Simple classification is a case in point: MOF doesn't model "classification"; it models a constrained form of it. So, in general, you can't build the semantics of modeling languages on MOF semantics. The conceptual notions in some languages produce "engineering artifacts" in the MOF representation, like 2 XMI ids for the same conceptual instance. MOF is an implementation technology, and all implementation technologies produce such artifacts. Think of trying to model AssociationClass in Java. -Ed P.S. Chris Menzel, one of the authors of ISO 24707 Common Logic, will argue that first-order-logic is the generic conceptual foundation that can be used to capture the semantics of all modeling languages. And he is right, or at least his position is pretty defensible. But the way in which Common Logic captures semantics doesn't make the concepts (or the abstract syntax) of the modeling languages very accessible to humans. The set of properties of a concept is captured in *exactly all* of the logic statements that involve it. And since most logic statements involve two or more concepts, and since it usually takes several statements to capture one "property" (of the OWL or RDF kind) completely, it is not easy to collect and interpret the statements that characterize a concept. An approach like MOF is complementary to CL, and is essential to making the conceptual elements accessible. -- Edward J. Barkmeyer Email: edbark@nist.gov National Institute of Standards & Technology Manufacturing Systems Integration Division 100 Bureau Drive, Stop 8263 Tel: +1 301-975-3528 Gaithersburg, MD 20899-8263 FAX: +1 301-975-4482 "The opinions expressed above do not reflect consensus of NIST, and have not been reviewed by any Government authority." Date: Fri, 06 Jan 2006 19:14:31 -0500 From: Ed Barkmeyer Reply-To: edbark@nist.gov Organization: NIST User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.2) Gecko/20040804 Netscape/7.2 (ax) X-Accept-Language: en, fr, de, pdf, it, nl, sv, es, ru To: Cory Casanave CC: ontology@omg.org, adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Cory, We currently and for quite some time have -MODELED- our object systems based on domain semantics and this naturally includes multiple and dynamic classifications. ... Object modeling does frequently get confused with object programming which does usually have the single & static type restriction. Based on our shared philosophy of MDA we should recognize the patterns for mapping our modeling concepts down to these platforms. For these reasons I would propose it a mistake to limit object modeling based on the PSM capabilities of Java and C++. It may be, but we standardized that "mistake" in MOF v2. The MOF provides an abstract model that can capture a true representation of the problem and there is no reason the specification should not allow for that capability. Here I beg to differ. First, no one ever intended the MOF to capture a true representation of an arbitrary problem space. The problem space of interest to MOF is the abstract syntax of modeling languages. And the MOF semantics have to be adequate to capture the semantics of abstract syntax, full stop. Moreover, the MOF has to be consistent, reliable and useful with respect to the capture of abstract syntax. That the MOF approach extends syntactically to instances in the modeled problem spaces doesn't mean that the semantics of the MOF itself does. It doesn't, and it never will. The MOF doesn't convey the semantics of manufacturing processes or battlefields or medical treatment, but it can capture the abstract syntax of languages that describe those fields. Now I would postulate that in the semantics of abstract syntax, multiple classification of Instances is extraordinarily rare. I would go so far as to say that if multiple classification actually occurs in the abstract syntax, it creates serious parsing and interpretation problems for the language in question. [I have to say I'm not sure whether AssociationClass is the counterexample to or the proof of that assertion(!).] That is why allowing multiple classification in the MOF itself is problematic. Allowing it can create serious problems in getting the MOF to perform its primary function: capturing the fundamental concepts of modeling languages in a consistent and useful way. I and others have implemented such structures for a object ands meta object systems multiple times. I consider myself one of the "others", and implementation is not the issue. The issue is *interpreting* what you find in the meta-database after you put it there. The side-effects of not having multiple classification in MOF makes the integration of multiple meta models difficult With all due respect, I think "integration of multiple metamodels" is what you do to produce the MOF meta-model for the integrated language. It is not a simple "merge" or "federation" process, no matter how much mechanistic nonsense of that kind has filtered into our recent OMG technologies. Integration of models is an engineering process that involves higher-level abstractions, equivalences and transforms of the component models, as instances of a common set of metanotions. AFTER you do the integration and get a consistent overall model, you can spin off the "views" that are the projections of the overall model that support the specific sublanguages. and the organization of complex models, such as UML, even more complex. A multiple-type approach to integrating multiple aspects of a concept would have had far less complexity and side effects than the static approach attempted with package merge. "Package merge" is the nonsense to which I referred above. It only works when it is syntactically able to describe the conceptual integration that you have already done, and I'm not sure how often that will be the case. All the examples are of putting back together the jigsaw puzzle of a picture (model) that was intact before it was cut apart. I don't see "multiple types" helping integration. What multiple types supports is lazy federation -- the concept has two distinct local interpretations that are not required to be consistent in any way, and therefore may have no common interpretation. If you integrate the model, you define the common interpretation of the concept and the two local interpretations as views of that concept, possibly by the addition of other concepts. Put another way, multiple classification reduces all subtype relationships to associations to instantiated roles. I can do that with MOF as is, that is how I implement it in Java, anyway, and in many cases, that is the extent of the semantics of the thing. That said, I would not try and "slip it in" through an RTF issue. Good, because I agree with Pete and others that multiple classification has significant impact on the implementation of a conforming MOF system, and on the interpretation of a conforming MOF model. The capability for multiple classification is one reason I am leaning away from MOF and looking at RDF as the metadata integration platform of choice. Perhaps MOF needs to look at the competitive landscape as well. Yeah, well, RDF is a near approximation to 1st-order logic. You can surely use RDF to capture whatever you mean, largely by inventing whatever vocabulary you need. The question is whether the result is consistent with *any* more structured modeling rules, so that it can be *depicted* in a form that is comprehensible to humans. The good thing about MOF metamodels is that they have UML diagrams. If I had to write XMI directly, I would definitely switch to RDF. -Ed -- Edward J. Barkmeyer Email: edbark@nist.gov National Institute of Standards & Technology Manufacturing Systems Integration Division 100 Bureau Drive, Stop 8263 Tel: +1 301-975-3528 Gaithersburg, MD 20899-8263 FAX: +1 301-975-4482 "The opinions expressed above do not reflect consensus of NIST, and have not been reviewed by any Government authority." From: "Cory Casanave" To: Cc: , Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Sat, 7 Jan 2006 00:35:57 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcYTH1UkMkJNwoCZRJSyL15fpLT2BgALLyog X-OriginalArrivalTime: 07 Jan 2006 05:36:13.0415 (UTC) FILETIME=[45AE9770:01C6134C] Ed, I suggest we take this off of such a wide list as we are now fully off-topic of validating ODM. -Cory -----Original Message----- From: Ed Barkmeyer [mailto:edbark@nist.gov] Sent: Friday, January 06, 2006 7:15 PM To: Cory Casanave Cc: ontology@omg.org; adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Cory, > We currently and for quite some time have -MODELED- our object systems based > on domain semantics and this naturally includes multiple and dynamic > classifications. ... > > Object modeling does frequently get confused with object programming which > does usually have the single & static type restriction. Based on our shared > philosophy of MDA we should recognize the patterns for mapping our modeling > concepts down to these platforms. > > For these reasons I would propose it a mistake to limit object modeling > based on the PSM capabilities of Java and C++. It may be, but we standardized that "mistake" in MOF v2. > The MOF provides an abstract > model that can capture a true representation of the problem and there is no > reason the specification should not allow for that capability. Here I beg to differ. First, no one ever intended the MOF to capture a true representation of an arbitrary problem space. The problem space of interest to MOF is the abstract syntax of modeling languages. And the MOF semantics have to be adequate to capture the semantics of abstract syntax, full stop. Moreover, the MOF has to be consistent, reliable and useful with respect to the capture of abstract syntax. That the MOF approach extends syntactically to instances in the modeled problem spaces doesn't mean that the semantics of the MOF itself does. It doesn't, and it never will. The MOF doesn't convey the semantics of manufacturing processes or battlefields or medical treatment, but it can capture the abstract syntax of languages that describe those fields. Now I would postulate that in the semantics of abstract syntax, multiple classification of Instances is extraordinarily rare. I would go so far as to say that if multiple classification actually occurs in the abstract syntax, it creates serious parsing and interpretation problems for the language in question. [I have to say I'm not sure whether AssociationClass is the counterexample to or the proof of that assertion(!).] That is why allowing multiple classification in the MOF itself is problematic. Allowing it can create serious problems in getting the MOF to perform its primary function: capturing the fundamental concepts of modeling languages in a consistent and useful way. > I and others > have implemented such structures for a object ands meta object systems > multiple times. I consider myself one of the "others", and implementation is not the issue. The issue is *interpreting* what you find in the meta-database after you put it there. > The side-effects of not having multiple classification in MOF makes the > integration of multiple meta models difficult With all due respect, I think "integration of multiple metamodels" is what you do to produce the MOF meta-model for the integrated language. It is not a simple "merge" or "federation" process, no matter how much mechanistic nonsense of that kind has filtered into our recent OMG technologies. Integration of models is an engineering process that involves higher-level abstractions, equivalences and transforms of the component models, as instances of a common set of metanotions. AFTER you do the integration and get a consistent overall model, you can spin off the "views" that are the projections of the overall model that support the specific sublanguages. > and the organization of > complex models, such as UML, even more complex. A multiple-type approach to > integrating multiple aspects of a concept would have had far less complexity > and side effects than the static approach attempted with package merge. "Package merge" is the nonsense to which I referred above. It only works when it is syntactically able to describe the conceptual integration that you have already done, and I'm not sure how often that will be the case. All the examples are of putting back together the jigsaw puzzle of a picture (model) that was intact before it was cut apart. I don't see "multiple types" helping integration. What multiple types supports is lazy federation -- the concept has two distinct local interpretations that are not required to be consistent in any way, and therefore may have no common interpretation. If you integrate the model, you define the common interpretation of the concept and the two local interpretations as views of that concept, possibly by the addition of other concepts. Put another way, multiple classification reduces all subtype relationships to associations to instantiated roles. I can do that with MOF as is, that is how I implement it in Java, anyway, and in many cases, that is the extent of the semantics of the thing. > That said, I would not try and "slip it in" through an RTF issue. Good, because I agree with Pete and others that multiple classification has significant impact on the implementation of a conforming MOF system, and on the interpretation of a conforming MOF model. > The capability for multiple classification is one reason I am leaning away > from MOF and looking at RDF as the metadata integration platform of choice. > Perhaps MOF needs to look at the competitive landscape as well. Yeah, well, RDF is a near approximation to 1st-order logic. You can surely use RDF to capture whatever you mean, largely by inventing whatever vocabulary you need. The question is whether the result is consistent with *any* more structured modeling rules, so that it can be *depicted* in a form that is comprehensible to humans. The good thing about MOF metamodels is that they have UML diagrams. If I had to write XMI directly, I would definitely switch to RDF. -Ed -- Edward J. Barkmeyer Email: edbark@nist.gov National Institute of Standards & Technology Manufacturing Systems Integration Division 100 Bureau Drive, Stop 8263 Tel: +1 301-975-3528 Gaithersburg, MD 20899-8263 FAX: +1 301-975-4482 "The opinions expressed above do not reflect consensus of NIST, and have not been reviewed by any Government authority." From: "Cory Casanave" To: Cc: , "'Pete Rivett'" , "'Manfred R. Koethe'" Subject: Multiple classification on MOF (Was RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM) Date: Sat, 7 Jan 2006 00:49:37 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcYTH1UkMkJNwoCZRJSyL15fpLT2BgALb34g X-OriginalArrivalTime: 07 Jan 2006 05:49:55.0592 (UTC) FILETIME=[2FBCD880:01C6134E] Ed, Since you pushed my button - I have to respectfully disagree. First, the comments you made were in reference to "object modeling" in general - in this case MOF is only in the background, the point being object modeling is not C++ and your arguments about constructors are irrelevant. On the question of multiple classification in MOF, I resurrected something I wrote up on this prior to UML-2 that demonstrates the need. The requirement for multiple classification is, in fact, common in abstract syntax and there are no interpretation issues if it is properly defined. I had not really intended to bring this up again (at lest not now), but since it seems to have come up... -Cory -----Original Message----- From: Ed Barkmeyer [mailto:edbark@nist.gov] Sent: Friday, January 06, 2006 7:15 PM To: Cory Casanave Cc: ontology@omg.org; adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Cory, > We currently and for quite some time have -MODELED- our object systems based > on domain semantics and this naturally includes multiple and dynamic > classifications. ... > > Object modeling does frequently get confused with object programming which > does usually have the single & static type restriction. Based on our shared > philosophy of MDA we should recognize the patterns for mapping our modeling > concepts down to these platforms. > > For these reasons I would propose it a mistake to limit object modeling > based on the PSM capabilities of Java and C++. It may be, but we standardized that "mistake" in MOF v2. > The MOF provides an abstract > model that can capture a true representation of the problem and there is no > reason the specification should not allow for that capability. Here I beg to differ. First, no one ever intended the MOF to capture a true representation of an arbitrary problem space. The problem space of interest to MOF is the abstract syntax of modeling languages. And the MOF semantics have to be adequate to capture the semantics of abstract syntax, full stop. Moreover, the MOF has to be consistent, reliable and useful with respect to the capture of abstract syntax. That the MOF approach extends syntactically to instances in the modeled problem spaces doesn't mean that the semantics of the MOF itself does. It doesn't, and it never will. The MOF doesn't convey the semantics of manufacturing processes or battlefields or medical treatment, but it can capture the abstract syntax of languages that describe those fields. Now I would postulate that in the semantics of abstract syntax, multiple classification of Instances is extraordinarily rare. I would go so far as to say that if multiple classification actually occurs in the abstract syntax, it creates serious parsing and interpretation problems for the language in question. [I have to say I'm not sure whether AssociationClass is the counterexample to or the proof of that assertion(!).] That is why allowing multiple classification in the MOF itself is problematic. Allowing it can create serious problems in getting the MOF to perform its primary function: capturing the fundamental concepts of modeling languages in a consistent and useful way. > I and others > have implemented such structures for a object ands meta object systems > multiple times. I consider myself one of the "others", and implementation is not the issue. The issue is *interpreting* what you find in the meta-database after you put it there. > The side-effects of not having multiple classification in MOF makes the > integration of multiple meta models difficult With all due respect, I think "integration of multiple metamodels" is what you do to produce the MOF meta-model for the integrated language. It is not a simple "merge" or "federation" process, no matter how much mechanistic nonsense of that kind has filtered into our recent OMG technologies. Integration of models is an engineering process that involves higher-level abstractions, equivalences and transforms of the component models, as instances of a common set of metanotions. AFTER you do the integration and get a consistent overall model, you can spin off the "views" that are the projections of the overall model that support the specific sublanguages. > and the organization of > complex models, such as UML, even more complex. A multiple-type approach to > integrating multiple aspects of a concept would have had far less complexity > and side effects than the static approach attempted with package merge. "Package merge" is the nonsense to which I referred above. It only works when it is syntactically able to describe the conceptual integration that you have already done, and I'm not sure how often that will be the case. All the examples are of putting back together the jigsaw puzzle of a picture (model) that was intact before it was cut apart. I don't see "multiple types" helping integration. What multiple types supports is lazy federation -- the concept has two distinct local interpretations that are not required to be consistent in any way, and therefore may have no common interpretation. If you integrate the model, you define the common interpretation of the concept and the two local interpretations as views of that concept, possibly by the addition of other concepts. Put another way, multiple classification reduces all subtype relationships to associations to instantiated roles. I can do that with MOF as is, that is how I implement it in Java, anyway, and in many cases, that is the extent of the semantics of the thing. > That said, I would not try and "slip it in" through an RTF issue. Good, because I agree with Pete and others that multiple classification has significant impact on the implementation of a conforming MOF system, and on the interpretation of a conforming MOF model. > The capability for multiple classification is one reason I am leaning away > from MOF and looking at RDF as the metadata integration platform of choice. > Perhaps MOF needs to look at the competitive landscape as well. Yeah, well, RDF is a near approximation to 1st-order logic. You can surely use RDF to capture whatever you mean, largely by inventing whatever vocabulary you need. The question is whether the result is consistent with *any* more structured modeling rules, so that it can be *depicted* in a form that is comprehensible to humans. The good thing about MOF metamodels is that they have UML diagrams. If I had to write XMI directly, I would definitely switch to RDF. -Ed -- Edward J. Barkmeyer Email: edbark@nist.gov National Institute of Standards & Technology Manufacturing Systems Integration Division 100 Bureau Drive, Stop 8263 Tel: +1 301-975-3528 Gaithersburg, MD 20899-8263 FAX: +1 301-975-4482 "The opinions expressed above do not reflect consensus of NIST, and have not been reviewed by any Government authority." Generalization Extension Semantics.doc From: "Cory Casanave" To: , Subject: FW: Multiple classification on MOF (Was RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM) Date: Mon, 9 Jan 2006 09:14:45 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcYTH1UkMkJNwoCZRJSyL15fpLT2BgALb34gAHZlliA= X-OriginalArrivalTime: 09 Jan 2006 14:14:46.0059 (UTC) FILETIME=[0B16CFB0:01C61527] I have had a few requests to be "kept in the loop" on this discussion, since I didn't leave a "forwarding address" I have included the last response on the subject, below. I suggest the MOF2 list is the proper place to have this discussion as it has evolved. -Cory Casanave -----Original Message----- From: Cory Casanave [mailto:cbc@enterprisecomponent.com] Sent: Saturday, January 07, 2006 12:50 AM To: 'edbark@nist.gov' Cc: 'mof2@omg.org'; 'Pete Rivett'; 'Manfred R. Koethe' Subject: Multiple classification on MOF (Was RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM) Ed, Since you pushed my button - I have to respectfully disagree. First, the comments you made were in reference to "object modeling" in general - in this case MOF is only in the background, the point being object modeling is not C++ and your arguments about constructors are irrelevant. On the question of multiple classification in MOF, I resurrected something I wrote up on this prior to UML-2 that demonstrates the need. The requirement for multiple classification is, in fact, common in abstract syntax and there are no interpretation issues if it is properly defined. I had not really intended to bring this up again (at lest not now), but since it seems to have come up... -Cory -----Original Message----- From: Ed Barkmeyer [mailto:edbark@nist.gov] Sent: Friday, January 06, 2006 7:15 PM To: Cory Casanave Cc: ontology@omg.org; adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Cory, > We currently and for quite some time have -MODELED- our object systems based > on domain semantics and this naturally includes multiple and dynamic > classifications. ... > > Object modeling does frequently get confused with object programming which > does usually have the single & static type restriction. Based on our shared > philosophy of MDA we should recognize the patterns for mapping our modeling > concepts down to these platforms. > > For these reasons I would propose it a mistake to limit object modeling > based on the PSM capabilities of Java and C++. It may be, but we standardized that "mistake" in MOF v2. > The MOF provides an abstract > model that can capture a true representation of the problem and there is no > reason the specification should not allow for that capability. Here I beg to differ. First, no one ever intended the MOF to capture a true representation of an arbitrary problem space. The problem space of interest to MOF is the abstract syntax of modeling languages. And the MOF semantics have to be adequate to capture the semantics of abstract syntax, full stop. Moreover, the MOF has to be consistent, reliable and useful with respect to the capture of abstract syntax. That the MOF approach extends syntactically to instances in the modeled problem spaces doesn't mean that the semantics of the MOF itself does. It doesn't, and it never will. The MOF doesn't convey the semantics of manufacturing processes or battlefields or medical treatment, but it can capture the abstract syntax of languages that describe those fields. Now I would postulate that in the semantics of abstract syntax, multiple classification of Instances is extraordinarily rare. I would go so far as to say that if multiple classification actually occurs in the abstract syntax, it creates serious parsing and interpretation problems for the language in question. [I have to say I'm not sure whether AssociationClass is the counterexample to or the proof of that assertion(!).] That is why allowing multiple classification in the MOF itself is problematic. Allowing it can create serious problems in getting the MOF to perform its primary function: capturing the fundamental concepts of modeling languages in a consistent and useful way. > I and others > have implemented such structures for a object ands meta object systems > multiple times. I consider myself one of the "others", and implementation is not the issue. The issue is *interpreting* what you find in the meta-database after you put it there. > The side-effects of not having multiple classification in MOF makes the > integration of multiple meta models difficult With all due respect, I think "integration of multiple metamodels" is what you do to produce the MOF meta-model for the integrated language. It is not a simple "merge" or "federation" process, no matter how much mechanistic nonsense of that kind has filtered into our recent OMG technologies. Integration of models is an engineering process that involves higher-level abstractions, equivalences and transforms of the component models, as instances of a common set of metanotions. AFTER you do the integration and get a consistent overall model, you can spin off the "views" that are the projections of the overall model that support the specific sublanguages. > and the organization of > complex models, such as UML, even more complex. A multiple-type approach to > integrating multiple aspects of a concept would have had far less complexity > and side effects than the static approach attempted with package merge. "Package merge" is the nonsense to which I referred above. It only works when it is syntactically able to describe the conceptual integration that you have already done, and I'm not sure how often that will be the case. All the examples are of putting back together the jigsaw puzzle of a picture (model) that was intact before it was cut apart. I don't see "multiple types" helping integration. What multiple types supports is lazy federation -- the concept has two distinct local interpretations that are not required to be consistent in any way, and therefore may have no common interpretation. If you integrate the model, you define the common interpretation of the concept and the two local interpretations as views of that concept, possibly by the addition of other concepts. Put another way, multiple classification reduces all subtype relationships to associations to instantiated roles. I can do that with MOF as is, that is how I implement it in Java, anyway, and in many cases, that is the extent of the semantics of the thing. > That said, I would not try and "slip it in" through an RTF issue. Good, because I agree with Pete and others that multiple classification has significant impact on the implementation of a conforming MOF system, and on the interpretation of a conforming MOF model. > The capability for multiple classification is one reason I am leaning away > from MOF and looking at RDF as the metadata integration platform of choice. > Perhaps MOF needs to look at the competitive landscape as well. Yeah, well, RDF is a near approximation to 1st-order logic. You can surely use RDF to capture whatever you mean, largely by inventing whatever vocabulary you need. The question is whether the result is consistent with *any* more structured modeling rules, so that it can be *depicted* in a form that is comprehensible to humans. The good thing about MOF metamodels is that they have UML diagrams. If I had to write XMI directly, I would definitely switch to RDF. -Ed -- Edward J. Barkmeyer Email: edbark@nist.gov National Institute of Standards & Technology Manufacturing Systems Integration Division 100 Bureau Drive, Stop 8263 Tel: +1 301-975-3528 Gaithersburg, MD 20899-8263 FAX: +1 301-975-4482 "The opinions expressed above do not reflect consensus of NIST, and have not been reviewed by any Government authority." Generalization Extension Semantics1.doc User-Agent: Microsoft-Entourage/11.2.1.051004 Date: Mon, 09 Jan 2006 09:41:59 -0500 Subject: Re: Multiple classification on MOF (Was RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM) From: James Odell To: Cory Casanave , Ontology SIG , "A&D TF (OMG) " Thread-Topic: Multiple classification on MOF (Was RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM) Thread-Index: AcYTH1UkMkJNwoCZRJSyL15fpLT2BgALb34gAHZlliAAAQu8kQ== Moving out of the ADTF list would certainly be appropriate, at this point--to the MOF2 and/or Ontology lists. -Thanks, Jim On 1/9/06 9:14 AM, "Cory Casanave" indited: > I have had a few requests to be "kept in the loop" on this discussion, since > I didn't leave a "forwarding address" I have included the last response on > the subject, below. I suggest the MOF2 list is the proper place to have > this discussion as it has evolved. > -Cory Casanave Reply-To: From: "Conrad Bock" To: "'Pete Rivett'" , "'Cory Casanave'" , , Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Tue, 21 Mar 2006 17:01:57 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcYQ5PM8x8wmoKDkScKg49Vh+9FT1QAZfbbQDvnwWpA= Pete, Late comment, sorry, > Whether it would be a good idea for MOF to support multiple > classification of instances is a separate question. At the > moment it does not (nothing to do with XMI): since the > operation Reflection::Element::getMetaClass() is single > valued. I'm personally inclined to agree with you, but that > is a major change that would need a new RFP. But InstanceSpecification in Abstractions supports multiple classifiers, so it supports modeling an instance that can't exist at runtime. This is clearly a bug, but it is only in Reflection, so to me maybe MOF as whole does support it. Conrad To: Cc: adtf@omg.org, "'Cory Casanave'" , ontology@omg.org, "'Pete Rivett'" Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM X-Mailer: Lotus Notes Release 6.0.1CF1 March 04, 2003 From: Branislav Selic Date: Tue, 21 Mar 2006 17:10:27 -0500 X-MIMETrack: Serialize by Router on D25ML01/25/M/IBM(Release 6.5.4|March 27, 2005) at 03/21/2006 17:10:20, Serialize complete at 03/21/2006 17:10:20 Actually, it is not clear what the multiple classifiers for an InstanceSpecification means. Rather than implying that the InstanceSpecification has multiple classifications, it could be interpreted to mean: (1) that the InstanceSpecification may have dynamically changed its classification during the interval in which it was observed (note that an InstanceSpecification does not necessarily represent a snapshot at an instant in time, it could also represent a view of an instance smeared over an interval of time) (2) that the different classifiers represent different views of a given component based on different viewpoints in different models (possibly at different levels of abstraction). ...and I am sure there are more. My point is that you cannot claim with certainty that this is a bug. Cheers, Bran "Conrad Bock" 03/21/2006 05:01 PM Please respond to conrad.bock To "'Pete Rivett'" , "'Cory Casanave'" , , cc Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Pete, Late comment, sorry, > Whether it would be a good idea for MOF to support multiple > classification of instances is a separate question. At the > moment it does not (nothing to do with XMI): since the > operation Reflection::Element::getMetaClass() is single > valued. I'm personally inclined to agree with you, but that > is a major change that would need a new RFP. But InstanceSpecification in Abstractions supports multiple classifiers, so it supports modeling an instance that can't exist at runtime. This is clearly a bug, but it is only in Reflection, so to me maybe MOF as whole does support it. Conrad Reply-To: From: "Conrad Bock" To: "'Branislav Selic'" Cc: , "'Cory Casanave'" , , "'Pete Rivett'" Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Tue, 21 Mar 2006 17:16:56 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcZNNG0P+vO5DrsgTde2J2abOLna7AAAGiyw Bran, > Actually, it is not clear what the multiple classifiers for > an InstanceSpecification means. Rather than implying that > the InstanceSpecification has multiple classifications, it > could be interpreted to mean: > > (1) that the InstanceSpecification may have dynamically > changed its classification during the interval in which it > was observed (note that an InstanceSpecification does not > necessarily represent a snapshot at an instant in time, it > could also represent a view of an instance smeared over an > interval of time) > > (2) that the different classifiers represent different > views of a given component based on different viewpoints in > different models (possibly at different levels of abstraction). > > ...and I am sure there are more. > My point is that you cannot claim with certainty that this > is a bug. Agreed, but only if you're a formalist. :) I'm assuming the usual interpretation is multiple, simultaneous classification, because UML 1.x explicitly supported this, and there is no text in the infrastructure preventing it. Conrad Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Tue, 21 Mar 2006 14:23:55 -0800 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Multiple classifiers for an instance in MOF and RDF as defined in ODM Thread-Index: AcZNNOzkI0C9nV32RZi9BmE42juA6AAAQq2w From: "Mellor, Stephen" To: "Branislav Selic" , Cc: , "Cory Casanave" , , "Pete Rivett" X-OriginalArrivalTime: 21 Mar 2006 22:22:43.0549 (UTC) FILETIME=[F92980D0:01C64D35] Not to be difficult (*), but I would argue that the fact that there are many interpretations is itself a bug. -- stephen (*) Me? Difficult? -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: 2006-03-21, Tuesday 15:10 To: conrad.bock@nist.gov Cc: adtf@omg.org; 'Cory Casanave'; ontology@omg.org; 'Pete Rivett' Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Actually, it is not clear what the multiple classifiers for an InstanceSpecification means. Rather than implying that the InstanceSpecification has multiple classifications, it could be interpreted to mean: (1) that the InstanceSpecification may have dynamically changed its classification during the interval in which it was observed (note that an InstanceSpecification does not necessarily represent a snapshot at an instant in time, it could also represent a view of an instance smeared over an interval of time) (2) that the different classifiers represent different views of a given component based on different viewpoints in different models (possibly at different levels of abstraction). ...and I am sure there are more. My point is that you cannot claim with certainty that this is a bug. Cheers, Bran "Conrad Bock" 03/21/2006 05:01 PM Please respond to conrad.bock To "'Pete Rivett'" , "'Cory Casanave'" , , cc Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Pete, Late comment, sorry, > Whether it would be a good idea for MOF to support multiple > classification of instances is a separate question. At the > moment it does not (nothing to do with XMI): since the > operation Reflection::Element::getMetaClass() is single > valued. I'm personally inclined to agree with you, but that > is a major change that would need a new RFP. But InstanceSpecification in Abstractions supports multiple classifiers, so it supports modeling an instance that can't exist at runtime. This is clearly a bug, but it is only in Reflection, so to me maybe MOF as whole does support it. Conrad From: "Cory Casanave" To: "'Branislav Selic'" , Cc: , , "'Pete Rivett'" Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Tue, 21 Mar 2006 20:43:16 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcZNNEp9QCgGPoyISqCvQBEb0hfR9gAHGzYg X-OriginalArrivalTime: 22 Mar 2006 01:43:34.0625 (UTC) FILETIME=[0829C510:01C64D52] Bran, Unless otherwise specified I would think we must assume it can mean ALL of these things, and it certainly would mean the obvious choice Conrad suggests. I also find it somewhat .backwards. to assume the meaning of the MOF meta model based on the signature of a single method, that seems kind of like .reverse MDA. . obtain the model semantics from the interface! Bug or intent . it is still an unnecessary and troublesome constraint, one I appreciate more and more as I have NOT had that restriction in RDF and have to figure out how to support needed features in MOF. What ends up happening is that you have multiply inherit capabilities because of the POSSIBILITY that an instance may have that capability, and then weakening the semantics of that capability because things of that type may not use it. This makes the meta model and even the instance model much more complex than required. If it is bug, fix it. Otherwise . fix it anyway :) -Cory -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Tuesday, March 21, 2006 5:10 PM To: conrad.bock@nist.gov Cc: adtf@omg.org; 'Cory Casanave'; ontology@omg.org; 'Pete Rivett' Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Actually, it is not clear what the multiple classifiers for an InstanceSpecification means. Rather than implying that the InstanceSpecification has multiple classifications, it could be interpreted to mean: (1) that the InstanceSpecification may have dynamically changed its classification during the interval in which it was observed (note that an InstanceSpecification does not necessarily represent a snapshot at an instant in time, it could also represent a view of an instance smeared over an interval of time) (2) that the different classifiers represent different views of a given component based on different viewpoints in different models (possibly at different levels of abstraction). ...and I am sure there are more. My point is that you cannot claim with certainty that this is a bug. Cheers, Bran "Conrad Bock" 03/21/2006 05:01 PM Please respond to conrad.bock To "'Pete Rivett'" , "'Cory Casanave'" , , cc Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Pete, Late comment, sorry, > Whether it would be a good idea for MOF to support multiple > classification of instances is a separate question. At the > moment it does not (nothing to do with XMI): since the > operation Reflection::Element::getMetaClass() is single > valued. I'm personally inclined to agree with you, but that > is a major change that would need a new RFP. But InstanceSpecification in Abstractions supports multiple classifiers, so it supports modeling an instance that can't exist at runtime. This is clearly a bug, but it is only in Reflection, so to me maybe MOF as whole does support it. Conrad Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Tue, 21 Mar 2006 21:42:38 -0800 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Multiple classifiers for an instance in MOF and RDF as defined in ODM Thread-Index: AcZNNEp9QCgGPoyISqCvQBEb0hfR9gAHGzYgAAiR5DA= From: "Mellor, Stephen" To: "Cory Casanave" , "Branislav Selic" , Cc: , , "Pete Rivett" X-OriginalArrivalTime: 22 Mar 2006 05:41:27.0366 (UTC) FILETIME=[43613660:01C64D73] Ha ha ha! Answer (a) It must mean only one of the stated things. Answer (b) It means the one of those things that makes it not a bug Answer (c) It means all of those things! Personally, I go for answer (d) We decide what one thing we decide it means and stick to it. Good grief. -- stephen -------------------------------------------------------------------------------- From: Cory Casanave [mailto:cbc@enterprisecomponent.com] Sent: 2006-03-21, Tuesday 18:43 To: 'Branislav Selic'; conrad.bock@nist.gov Cc: adtf@omg.org; ontology@omg.org; 'Pete Rivett' Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Bran, Unless otherwise specified I would think we must assume it can mean ALL of these things, and it certainly would mean the obvious choice Conrad suggests. I also find it somewhat .backwards. to assume the meaning of the MOF meta model based on the signature of a single method, that seems kind of like .reverse MDA. . obtain the model semantics from the interface! Bug or intent . it is still an unnecessary and troublesome constraint, one I appreciate more and more as I have NOT had that restriction in RDF and have to figure out how to support needed features in MOF. What ends up happening is that you have multiply inherit capabilities because of the POSSIBILITY that an instance may have that capability, and then weakening the semantics of that capability because things of that type may not use it. This makes the meta model and even the instance model much more complex than required. If it is bug, fix it. Otherwise . fix it anyway :) -Cory -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Tuesday, March 21, 2006 5:10 PM To: conrad.bock@nist.gov Cc: adtf@omg.org; 'Cory Casanave'; ontology@omg.org; 'Pete Rivett' Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Actually, it is not clear what the multiple classifiers for an InstanceSpecification means. Rather than implying that the InstanceSpecification has multiple classifications, it could be interpreted to mean: (1) that the InstanceSpecification may have dynamically changed its classification during the interval in which it was observed (note that an InstanceSpecification does not necessarily represent a snapshot at an instant in time, it could also represent a view of an instance smeared over an interval of time) (2) that the different classifiers represent different views of a given component based on different viewpoints in different models (possibly at different levels of abstraction). ...and I am sure there are more. My point is that you cannot claim with certainty that this is a bug. Cheers, Bran "Conrad Bock" 03/21/2006 05:01 PM Please respond to conrad.bock To "'Pete Rivett'" , "'Cory Casanave'" , , cc Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Pete, Late comment, sorry, > Whether it would be a good idea for MOF to support multiple > classification of instances is a separate question. At the > moment it does not (nothing to do with XMI): since the > operation Reflection::Element::getMetaClass() is single > valued. I'm personally inclined to agree with you, but that > is a major change that would need a new RFP. But InstanceSpecification in Abstractions supports multiple classifiers, so it supports modeling an instance that can't exist at runtime. This is clearly a bug, but it is only in Reflection, so to me maybe MOF as whole does support it. Conrad DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Message-ID:Received:Date:From:Subject:To:Cc:In-Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding; b=lUrmNmUm16Pb/GkiazuElLNiiImnZiWZX+HIV7YeU6Kbx6SEaVdaOevWu4hTmKSD+ELAj1EwoGmOZ1aDnVKEQB7yfOfG+sy/UGHsCmecO7uxrQjZxDH6Nu1utFK2odxjYWaFcoQZuIdh82e6QQz/I0wo4ImW3Qus0yOGw95KHa0= ; Date: Wed, 22 Mar 2006 10:33:45 -0800 (PST) From: Allan Kolber Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM To: Cory Casanave , "'Branislav Selic'" , conrad.bock@nist.gov Cc: adtf@omg.org, ontology@omg.org, "'Pete Rivett'" , "Cheryl K. Estep" It is a bug. Example: an employee must be either a part-time emplyoyee or a full-time employee and either a temporary employee or permanent employee. One instance, two independent classification schemes. It is a bug and an important one that must be fixed. Allan Kolber Cory Casanave wrote: Bran, Unless otherwise specified I would think we must assume it can mean ALL of these things, and it certainly would mean the obvious choice Conrad suggests. I also find it somewhat .backwards. to assume the meaning of the MOF meta model based on the signature of a single method, that seems kind of like .reverse MDA. . obtain the model semantics from the interface! Bug or intent . it is still an unnecessary and troublesome constraint, one I appreciate more and more as I have NOT had that restriction in RDF and have to figure out how to support needed features in MOF. What ends up happening is that you have multiply inherit capabilities because of the POSSIBILITY that an instance may have that capability, and then weakening the semantics of that capability because things of that type may not use it. This makes the meta model and even the instance model much more complex than required. If it is bug, fix it. Otherwise . fix it anyway :) -Cory -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Tuesday, March 21, 2006 5:10 PM To: conrad.bock@nist.gov Cc: adtf@omg.org; 'Cory Casanave'; ontology@omg.org; 'Pete Rivett' Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Actually, it is not clear what the multiple classifiers for an InstanceSpecification means. Rather than implying that the InstanceSpecification has multiple classifications, it could be interpreted to mean: (1) that the InstanceSpecification may have dynamically changed its classification during the interval in which it was observed (note that an InstanceSpecification does not necessarily represent a snapshot at an instant in time, it could also represent a view of an instance smeared over an interval of time) (2) that the different classifiers represent different views of a given component based on different viewpoints in different models (possibly at different levels of abstraction). ...and I am sure there are more. My point is that you cannot claim with certainty that this is a bug. Cheers, Bran "Conrad Bock" 03/21/2006 05:01 PM Please respond to conrad.bock To "'Pete Rivett'" , "'Cory Casanave'" , , cc Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Pete, Late comment, sorry, > Whether it would be a good idea for MOF to support multiple > classification of instances is a separate question. At the > moment it does not (nothing to do with XMI): since the > operation Reflection::Element::getMetaClass() is single > valued. I'm personally inclined to agree with you, but that > is a major change that would need a new RFP. But InstanceSpecification in Abstractions supports multiple classifiers, so it supports modeling an instance that can't exist at runtime. This is clearly a bug, but it is only in Reflection, so to me maybe MOF as whole does support it. Conrad -------------------------------------------------------------------------------- Yahoo! Travel Find great deals to the top 10 hottest destinations! DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Message-ID:Received:Date:From:Subject:To:Cc:In-Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding; b=lUrmNmUm16Pb/GkiazuElLNiiImnZiWZX+HIV7YeU6Kbx6SEaVdaOevWu4hTmKSD+ELAj1EwoGmOZ1aDnVKEQB7yfOfG+sy/UGHsCmecO7uxrQjZxDH6Nu1utFK2odxjYWaFcoQZuIdh82e6QQz/I0wo4ImW3Qus0yOGw95KHa0= ; Date: Wed, 22 Mar 2006 10:33:45 -0800 (PST) From: Allan Kolber Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM To: Cory Casanave , "'Branislav Selic'" , conrad.bock@nist.gov Cc: adtf@omg.org, ontology@omg.org, "'Pete Rivett'" , "Cheryl K. Estep" It is a bug. Example: an employee must be either a part-time emplyoyee or a full-time employee and either a temporary employee or permanent employee. One instance, two independent classification schemes. It is a bug and an important one that must be fixed. Allan Kolber Cory Casanave wrote: Bran, Unless otherwise specified I would think we must assume it can mean ALL of these things, and it certainly would mean the obvious choice Conrad suggests. I also find it somewhat .backwards. to assume the meaning of the MOF meta model based on the signature of a single method, that seems kind of like .reverse MDA. . obtain the model semantics from the interface! Bug or intent . it is still an unnecessary and troublesome constraint, one I appreciate more and more as I have NOT had that restriction in RDF and have to figure out how to support needed features in MOF. What ends up happening is that you have multiply inherit capabilities because of the POSSIBILITY that an instance may have that capability, and then weakening the semantics of that capability because things of that type may not use it. This makes the meta model and even the instance model much more complex than required. If it is bug, fix it. Otherwise . fix it anyway :) -Cory -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Tuesday, March 21, 2006 5:10 PM To: conrad.bock@nist.gov Cc: adtf@omg.org; 'Cory Casanave'; ontology@omg.org; 'Pete Rivett' Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Actually, it is not clear what the multiple classifiers for an InstanceSpecification means. Rather than implying that the InstanceSpecification has multiple classifications, it could be interpreted to mean: (1) that the InstanceSpecification may have dynamically changed its classification during the interval in which it was observed (note that an InstanceSpecification does not necessarily represent a snapshot at an instant in time, it could also represent a view of an instance smeared over an interval of time) (2) that the different classifiers represent different views of a given component based on different viewpoints in different models (possibly at different levels of abstraction). ...and I am sure there are more. My point is that you cannot claim with certainty that this is a bug. Cheers, Bran "Conrad Bock" 03/21/2006 05:01 PM Please respond to conrad.bock To "'Pete Rivett'" , "'Cory Casanave'" , , cc Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Pete, Late comment, sorry, > Whether it would be a good idea for MOF to support multiple > classification of instances is a separate question. At the > moment it does not (nothing to do with XMI): since the > operation Reflection::Element::getMetaClass() is single > valued. I'm personally inclined to agree with you, but that > is a major change that would need a new RFP. But InstanceSpecification in Abstractions supports multiple classifiers, so it supports modeling an instance that can't exist at runtime. This is clearly a bug, but it is only in Reflection, so to me maybe MOF as whole does support it. Conrad -------------------------------------------------------------------------------- Yahoo! Travel Find great deals to the top 10 hottest destinations! User-Agent: Microsoft-Entourage/11.2.1.051004 Date: Wed, 22 Mar 2006 13:45:24 -0500 Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM From: James Odell To: Allan Kolber , Cory Casanave , "'Branislav Selic'" , CC: "A&D TF (OMG) " , Ontology SIG , "'Pete Rivett'" , "Cheryl K. Estep" Thread-Topic: Multiple classifiers for an instance in MOF and RDF as defined in ODM Thread-Index: AcZN4MdlBj9SqLnUEdq58wADk8zkFg== Allan, If the subtypes of Employee are {disjoint}, then an object may NOT be part-time employee or a full-time employee.by definition. However, an object can be BOTH part-time employee and shareholder at the same time, because these are not disjoint. So, I see no .bug. here. -Jim On 3/22/06 1:33 PM, "Allan Kolber" indited: It is a bug. Example: an employee must be either a part-time emplyoyee or a full-time employee and either a temporary employee or permanent employee. One instance, two independent classification schemes. It is a bug and an important one that must be fixed. Allan Kolber Cory Casanave wrote: Bran, Unless otherwise specified I would think we must assume it can mean ALL of these things, and it certainly would mean the obvious choice Conrad suggests. I also find it somewhat .backwards. to assume the meaning of the MOF meta model based on the signature of a single method, that seems kind of like .reverse MDA. . obtain the model semantics from the interface! Bug or intent . it is still an unnecessary and troublesome constraint, one I appreciate more and more as I have NOT had that restriction in RDF and have to figure out how to support needed features in MOF. What ends up happening is that you have multiply inherit capabilities because of the POSSIBILITY that an instance may have that capability, and then weakening the semantics of that capability because things of that type may not use it. This mak! es the meta model and even the instance model much more complex than required. If it is bug, fix it. Otherwise . fix it anyway :) -Cory -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Tuesday, March 21, 2006 5:10 PM To: conrad.bock@nist.gov Cc: adtf@omg.org; 'Cory Casanave'; ontology@omg.org; 'Pete Rivett' Subject: RE: Multiple classifiers for an insta! nce in MOF and RDF as defined in ODM Actually, it is not clear what the multiple classifiers for an InstanceSpecification means. Rather than implying that the InstanceSpecification has multiple classifications, it could be interpreted to mean: (1) that the InstanceSpecification may have dynamically changed its classification during the interval in which it was observed (note that an InstanceSpecification does not necessarily represent a snapshot at an instant in time, it could also represent a view of an instance smeared over an interval of time) (2) that the different classifiers represent different views of a given component based on different viewpoints in different models (possibly at different levels of abstraction). ...and I am sure there are more. My point is that you cannot claim with certainty that this is a bug. Cheers, Bran "Conrad Bock" 03/21/2006 05:01 PM Please respond to conrad.bock To "'Pete Rivett'" , "'Cory Casanave'" , , cc Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Pete, Late comment, sorry, > Whether it would be a good idea for MOF to support multiple > classification of instances is a separate question. At the > moment it does not (nothing to do with X! MI): since the > operation Reflection::Element::getMetaClass() is single > valued. I'm personally inclined to agree with you, but that > is a major change that would need a new RFP. But InstanceSpecification in Abstractions supports multiple classifiers, so it supports modeling an instance that can't exist at runtime. This is clearly a bug, but it is only in Reflection, so to me maybe MOF as whole does support it. Conrad -------------------------------------------------------------------------------- Yahoo! Travel Find great deals to the top 10 hottest destinations! From: "Cory Casanave" To: "'James Odell'" , "'Allan Kolber'" , "'Branislav Selic'" , Cc: "'A&D TF \(OMG\) '" , "'Ontology SIG'" , "'Pete Rivett'" , "'Cheryl K. Estep'" Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Wed, 22 Mar 2006 13:52:34 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcZN4MdlBj9SqLnUEdq58wADk8zkFgAAGWjQ X-OriginalArrivalTime: 22 Mar 2006 18:52:52.0010 (UTC) FILETIME=[D26EE0A0:01C64DE1] Jim, There is no argument with UML here (for once), this is a MOF issue in that the MOF interface does not support the semantics you are quoting . thus the MOF model does not mean the same thing as the UML model. Of course, the example given is an M1 thing, the argument has been made that meta-modeling doesn.t need such power. Many of us don.t agree with that contention because the same pattern presents it.s self in meta modeling and in particular when joining meta models. -Cory -------------------------------------------------------------------------------- From: James Odell [mailto:email@jamesodell.com] Sent: Wednesday, March 22, 2006 1:45 PM To: Allan Kolber; Cory Casanave; 'Branislav Selic'; conrad.bock@nist.gov Cc: A&D TF (OMG) ; Ontology SIG; 'Pete Rivett'; Cheryl K. Estep Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Allan, If the subtypes of Employee are {disjoint}, then an object may NOT be part-time employee or a full-time employee.by definition. However, an object can be BOTH part-time employee and shareholder at the same time, because these are not disjoint. So, I see no .bug. here. -Jim On 3/22/06 1:33 PM, "Allan Kolber" indited: It is a bug. Example: an employee must be either a part-time emplyoyee or a full-time employee and either a temporary employee or permanent employee. One instance, two independent classification schemes. It is a bug and an important one that must be fixed. Allan Kolber Cory Casanave wrote: Bran, Unless otherwise specified I would think we must assume it can mean ALL of these things, and it certainly would mean the obvious choice Conrad suggests. I also find it somewhat .backwards. to assume the meaning of the MOF meta model based on the signature of a single method, that seems kind of like .reverse MDA. . obtain the model semantics from the interface! Bug or intent . it is still an unnecessary and troublesome constraint, one I appreciate more and more as I have NOT had that restriction in RDF and have to figure out how to support needed features in MOF. What ends up happening is that you have multiply inherit capabilities because of the POSSIBILITY that an instance may have that capability, and then weakening the semantics of that capability because things of that type may not use it. This mak! es the meta model and even the instance model much more complex than required. If it is bug, fix it. Otherwise . fix it anyway :) -Cory -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Tuesday, March 21, 2006 5:10 PM To: conrad.bock@nist.gov Cc: adtf@omg.org; 'Cory Casanave'; ontology@omg.org; 'Pete Rivett' Subject: RE: Multiple classifiers for an insta! nce in MOF and RDF as defined in ODM Actually, it is not clear what the multiple classifiers for an InstanceSpecification means. Rather than implying that the InstanceSpecification has multiple classifications, it could be interpreted to mean: (1) that the InstanceSpecification may have dynamically changed its classification during the interval in which it was observed (note that an InstanceSpecification does not necessarily represent a snapshot at an instant in time, it could also represent a view of an instance smeared over an interval of time) (2) that the different classifiers represent different views of a given component based on different viewpoints in different models (possibly at different levels of abstraction). ...and I am sure there are more. My point is that you cannot claim with certainty that this is a bug. Cheers, Bran "Conrad Bock" 03/21/2006 05:01 PM Please respond to conrad.bock To "'Pete Rivett'" , "'Cory Casanave'" , , cc Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Pete, Late comment, sorry, > Whether it would be a good idea for MOF to support multiple > classification of instances is a separate question. At the > moment it does not (nothing to do with X! MI): since the > operation Reflection::Element::getMetaClass() is single > valued. I'm personally inclined to agree with you, but that > is a major change that would need a new RFP. But InstanceSpecification in Abstractions supports multiple classifiers, so it supports modeling an instance that can't exist at runtime. This is clearly a bug, but it is only in Reflection, so to me maybe MOF as whole does support it. Conrad -------------------------------------------------------------------------------- Yahoo! Travel Find great deals to the top 10 hottest destinations! User-Agent: Microsoft-Entourage/11.2.1.051004 Date: Wed, 22 Mar 2006 14:01:51 -0500 Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM From: James Odell To: Cory Casanave , "'Allan Kolber'" , "'Branislav Selic'" , CC: "A&D TF (OMG) " , Ontology SIG , "'Pete Rivett'" , "'Cheryl K. Estep'" Thread-Topic: Multiple classifiers for an instance in MOF and RDF as defined in ODM Thread-Index: AcZN4MdlBj9SqLnUEdq58wADk8zkFgAAGWjQAAB5qwY= Thanks, Cory. I agree with you on both points. -Jim On 3/22/06 1:52 PM, "Cory Casanave" indited: Jim, There is no argument with UML here (for once), this is a MOF issue in that the MOF interface does not support the semantics you are quoting . thus the MOF model does not mean the same thing as the UML model. Of course, the example given is an M1 thing, the argument has been made that meta-modeling doesn.t need such power. Many of us don.t agree with that contention because the same pattern presents it.s self in meta modeling and in particular when joining meta models. -Cory -------------------------------------------------------------------------------- From: James Odell [mailto:email@jamesodell.com] Sent: Wednesday, March 22, 2006 1:45 PM To: Allan Kolber; Cory Casanave; 'Branislav Selic'; conrad.bock@nist.gov Cc: A&D TF (OMG) ; Ontology SIG; 'Pete Rivett'; Cheryl K. Estep Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Allan, If the subtypes of Employee are {disjoint}, then an object may NOT be part-time employee or a full-time employee.by definition. However, an object can be BOTH part-time employee and shareholder at the same time, because these are not disjoint. So, I see no .bug. here. -Jim On 3/22/06 1:33 PM, "Allan Kolber" indited: It is a bug. Example: an employee must be either a part-time emplyoyee or a full-time employee and either a temporary employee or permanent employee. One instance, two independent classification schemes. It is a bug and an important one that must be fixed. Allan Kolber Cory Casanave wrote: Bran, Unless otherwise specified I would think we must assume it can mean ALL of these things, and it certainly would mean the obvious choice Conrad suggests. I also find it somewhat .backwards. to assume the meaning of the MOF meta model based on the signature of a single method, that seems kind of like .reverse MDA. . obtain the model semantics from the interface! Bug or intent . it is still an unnecessary and troublesome constraint, one I appreciate more and more as I have NOT had that restriction in RDF and have to figure out how to support needed features in MOF. What ends up happening is that you have multiply inherit capabilities because of the POSSIBILITY that an instance may have that capability, and then weakening the semantics of that capability because things of that type may not use it. This mak! es the meta model and even the instance model much more complex than required. If it is bug, fix it. Otherwise . fix it anyway :) -Cory -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Tuesday, March 21, 2006 5:10 PM To: conrad.bock@nist.gov Cc: adtf@omg.org; 'Cory Casanave'; ontology@omg.org; 'Pete Rivett' Subject: RE: Multiple classifiers for an insta! nce in MOF and RDF as defined in ODM Actually, it is not clear what the multiple classifiers for an InstanceSpecification means. Rather than implying that the InstanceSpecification has multiple classifications, it could be interpreted to mean: (1) that the InstanceSpecification may have dynamically changed its classification during the interval in which it was observed (note that an InstanceSpecification does not necessarily represent a snapshot at an instant in time, it could also represent a view of an instance smeared over an interval of time) (2) that the different classifiers represent different views of a given component based on different viewpoints in different models (possibly at different levels of abstraction). ...and I am sure there are more. My point is that you cannot claim with certainty that this is a bug. Cheers, Bran "Conrad Bock" 03/21/2006 05:01 PM Please respond to conrad.bock To "'Pete Rivett'" , "'Cory Casanave'" , , cc Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Pete, Late comment, sorry, > Whether it would be a good idea for MOF to support multiple > classification of instances is a separate question. At the > moment it does not (nothing to do with X! MI): since the > operation Reflection::Element::getMetaClass() is single > valued. I'm personally inclined to agree with you, but that > is a major change that would need a new RFP. But InstanceSpecification in Abstractions supports multiple classifiers, so it supports modeling an instance that can't exist at runtime. This is clearly a bug, but it is only in Reflection, so to me maybe MOF as whole does support it. Conrad -------------------------------------------------------------------------------- Yahoo! Travel Find great deals to the top 10 hottest destinations! Date: Wed, 22 Mar 2006 19:12:10 +0000 From: Guus Ramackers User-Agent: Mozilla Thunderbird 1.0.7 (Windows/20050923) X-Accept-Language: en-us, en To: Cory Casanave CC: "'James Odell'" , "'Allan Kolber'" , "'Branislav Selic'" , conrad.bock@nist.gov, "'A&D TF (OMG) '" , "'Ontology SIG'" , "'Pete Rivett'" , "'Cheryl K. Estep'" Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM X-Brightmail-Tracker: AAAAAQAAAAI= X-Whitelist: TRUE Cory, > thus the MOF model does not mean the same thing as the UML model. Since they are at different meta levels, there is no contention here. Just a pragmatic decision by the standards developers and vendors to restrict MOF to 1 supertype. > Many of us don.t agree with that contention because the same pattern presents it.s self in meta modeling and in particular when joining meta models. There are other mechanisms in MOF (and UML) to deal with meta model merging, e.g. package merge. It would be helpful to list the deficiencies of merging for this use case when proposing an alternative mechanism. Having dual mechanisms to achieve the same thing appears undesirable. Thanks, Guus Cory Casanave wrote: Jim, There is no argument with UML here (for once), this is a MOF issue in that the MOF interface does not support the semantics you are quoting . thus the MOF model does not mean the same thing as the UML model. Of course, the example given is an M1 thing, the argument has been made that meta-modeling doesn.t need such power. Many of us don.t agree with that contention because the same pattern presents it.s self in meta modeling and in particular when joining meta models. -Cory -------------------------------------------------------------------------------- From: James Odell [mailto:email@jamesodell.com] Sent: Wednesday, March 22, 2006 1:45 PM To: Allan Kolber; Cory Casanave; 'Branislav Selic'; conrad.bock@nist.gov Cc: A&D TF (OMG) ; Ontology SIG; 'Pete Rivett'; Cheryl K. Estep Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Allan, If the subtypes of Employee are {disjoint}, then an object may NOT be part-time employee or a full-time employee.by definition. However, an object can be BOTH part-time employee and shareholder at the same time, because these are not disjoint. So, I see no .bug. here. -Jim On 3/22/06 1:33 PM, "Allan Kolber" indited: It is a bug. Example: an employee must be either a part-time emplyoyee or a full-time employee and either a temporary employee or permanent employee. One instance, two independent classification schemes. It is a bug and an important one that must be fixed. Allan Kolber Cory Casanave wrote: Bran, Unless otherwise specified I would think we must assume it can mean ALL of these things, and it certainly would mean the obvious choice Conrad suggests. I also find it somewhat .backwards. to assume the meaning of the MOF meta model based on the signature of a single method, that seems kind of like .reverse MDA. . obtain the model semantics from the interface! Bug or intent . it is still an unnecessary and troublesome constraint, one I appreciate more and more as I have NOT had that restriction in RDF and have to figure out how to support needed features in MOF. What ends up happening is that you have multiply inherit capabilities because of the POSSIBILITY that an instance may have that capability, and then weakening the semantics of that capability because things of that type may not use it. This mak! es the meta model and even the instance model much more complex than required. If it is bug, fix it. Otherwise . fix it anyway :) -Cory -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Tuesday, March 21, 2006 5:10 PM To: conrad.bock@nist.gov Cc: adtf@omg.org; 'Cory Casanave'; ontology@omg.org; 'Pete Rivett' Subject: RE: Multiple classifiers for an insta! nce in MOF and RDF as defined in ODM Actually, it is not clear what the multiple classifiers for an InstanceSpecification means. Rather than implying that the InstanceSpecification has multiple classifications, it could be interpreted to mean: (1) that the InstanceSpecification may have dynamically changed its classification during the interval in which it was observed (note that an InstanceSpecification does not necessarily represent a snapshot at an instant in time, it could also represent a view of an instance smeared over an interval of time) (2) that the different classifiers represent different views of a given component based on different viewpoints in different models (possibly at different levels of abstraction). ...and I am sure there are more. My point is that you cannot claim with certainty that this is a bug. Cheers, Bran "Conrad Bock" 03/21/2006 05:01 PM Please respond to conrad.bock To "'Pete Rivett'" , "'Cory Casanave'" , , cc Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Pete, Late comment, sorry, > Whether it would be a good idea for MOF to support multiple > classification of instances is a separate question. At the > moment it does not (nothing to do with X! MI): since the > operation Reflection::Element::getMetaClass() is single > valued. I'm personally inclined to agree with you, but that > is a major change that would need a new RFP. But InstanceSpecification in Abstractions supports multiple classifiers, so it supports modeling an instance that can't exist at runtime. This is clearly a bug, but it is only in Reflection, so to me maybe MOF as whole does support it. Conrad -------------------------------------------------------------------------------- Yahoo! Travel Find great deals to the top 10 hottest destinations! -- ___________________________________________________ Guus Ramackers Product Manager J2EE, SOA & UML Tools Oracle Corporation JDeveloper group e-mail: guus.ramackers@oracle.com 520 Oracle Parkway, TVP work: +44-(0)1189-245101 Reading RG6 1RA, UK fax: +44-(0)1189-245148 From: ewallace@cme.nist.gov Date: Wed, 22 Mar 2006 14:15:45 -0500 (EST) To: adtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Cc: ontology@omg.org X-Sun-Charset: ISO-8859-1 I understood Allan Kolber to have proposed a model with two separate required coverings, where the generalization within each covering was disjoint. The bug is with a MOF instance model that only allows one classification of an instance when more than one simultaneous* classification is required. Both Allan's and your example require this, and my understanding of MOF is that it does not support it. This bug is causing some difficulties for those of us defining MOF metamodels where the intended models are expected to include multiply classified instances. * I mentioned simultaneous to factor classification change over time out of this discussion. It is true that one may wish to change an employees work status from full-time to part-time while maintaining the identity of the instance, but that is a separate issue. -Evan Jim Odell wrote: >Allan, > >If the subtypes of Employee are {disjoint}, then an object may NOT be >part-time employee or a full-time employee.by definition. However, an >object can be BOTH part-time employee and shareholder at the same time, >because these are not disjoint. So, I see no ³bug² here. > >-Jim > > On 3/22/06 1:33 PM, "Allan Kolber" indited: > >> It is a bug. Example: an employee must be either a part-time emplyoyee or a >> full-time employee and either a temporary employee or permanent employee. One >> instance, two independent classification schemes. It is a bug and an >> important one that must be fixed. >> To: Allan Kolber Cc: adtf@omg.org, Cory Casanave , "Cheryl K. Estep" , conrad.bock@nist.gov, ontology@omg.org, "'Pete Rivett'" Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM X-Mailer: Lotus Notes Release 6.0.1CF1 March 04, 2003 From: Branislav Selic Date: Wed, 22 Mar 2006 14:18:16 -0500 X-MIMETrack: Serialize by Router on D25ML01/25/M/IBM(Release 6.5.4|March 27, 2005) at 03/22/2006 14:18:07, Serialize complete at 03/22/2006 14:18:07 It's a bug only if you assume that an InstanceSpecification represents an instance at a particular point in time. Others may/need want a different interpretation (I know of at least one real project where the interpretation that you cite is not the desired one). Consequently, UML leaves the interpretation of the meaning of instance specifications as a semantic variation point. (Sorry, Steve!) Semantic variation points are crucial to ensure that UML supports a family of languages -- which is one of its most widely used capabilities. The right way to fix the spec may be to provide an explicit list of possible interpretations. In that case, there will no longer be discussion whether this is a bug or not. Cheers, Bran Selic IBM Distinguished Engineer IBM Rational Software 770 Palladium Drive Kanata, Ontario, Canada K2V 1C8 ph.: (613) 591-7915 fax: (613) 599-3912 e-mail: bselic@ca.ibm.com Allan Kolber 03/22/2006 01:33 PM To Cory Casanave , Branislav Selic/Ottawa/IBM@IBMCA, conrad.bock@nist.gov cc adtf@omg.org, ontology@omg.org, "'Pete Rivett'" , "Cheryl K. Estep" Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM It is a bug. Example: an employee must be either a part-time emplyoyee or a full-time employee and either a temporary employee or permanent employee. One instance, two independent classification schemes. It is a bug and an important one that must be fixed. Allan Kolber Cory Casanave wrote: Bran, Unless otherwise specified I would think we must assume it can mean ALL of these things, and it certainly would mean the obvious choice Conrad suggests. I also find it somewhat .backwards. to assume the meaning of the MOF meta model based on the signature of a single method, that seems kind of like .reverse MDA. . obtain the model semantics from the interface! Bug or intent . it is still an unnecessary and troublesome constraint, one I appreciate more and more as I have NOT had that restriction in RDF and have to figure out how to support needed features in MOF. What ends up happening is that you have multiply inherit capabilities because of the POSSIBILITY that an instance may have that capability, and then weakening the semantics of that capability because things of that type may not use it. This mak! es the meta model and even the instance model much more complex than required. If it is bug, fix it. Otherwise . fix it anyway :) -Cory -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Tuesday, March 21, 2006 5:10 PM To: conrad.bock@nist.gov Cc: adtf@omg.org; 'Cory Casanave'; ontology@omg.org; 'Pete Rivett' Subject: RE: Multiple classifiers for an insta! nce in MOF and RDF as defined in ODM Actually, it is not clear what the multiple classifiers for an InstanceSpecification means. Rather than implying that the InstanceSpecification has multiple classifications, it could be interpreted to mean: (1) that the InstanceSpecification may have dynamically changed its classification during the interval in which it was observed (note that an InstanceSpecification does not necessarily represent a snapshot at an instant in time, it could also represent a view of an instance smeared over an interval of time) (2) that the different classifiers represent different views of a given component based on different viewpoints in different models (possibly at different levels of abstraction). ...and I am sure there are more. My point is that you cannot claim with certainty that this is a bug. Cheers, Bran "Conrad Bock" 03/21/2006 05:01 PM Please respond to conrad.bock To "'Pete Rivett'" , "'Cory Casanave'" , , cc Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Pete, Late comment, sorry, > Whether it would be a good idea for MOF to support multiple > classification of instances is a separate question. At the > moment it does not (nothing to do with X! MI): since the > operation Reflection::Element::getMetaClass() is single > valued. I'm personally inclined to agree with you, but that > is a major change that would need a new RFP. But InstanceSpecification in Abstractions supports multiple classifiers, so it supports modeling an instance that can't exist at runtime. This is clearly a bug, but it is only in Reflection, so to me maybe MOF as whole does support it. Conrad -------------------------------------------------------------------------------- Yahoo! Travel Find great deals to the top 10 hottest destinations! User-Agent: Microsoft-Entourage/11.2.1.051004 Date: Wed, 22 Mar 2006 14:37:00 -0500 Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM From: James Odell To: Branislav Selic , Allan Kolber CC: "A&D TF (OMG) " , Cory Casanave , "Cheryl K. Estep" , , Ontology SIG , "'Pete Rivett'" Thread-Topic: Multiple classifiers for an instance in MOF and RDF as defined in ODM Thread-Index: AcZN5/zCO1YAOLnbEdq58wADk8zkFg== If I recall correctly, In UML 1 we had a distinction between .multiple classification. and .dynamic classification.: .... an object may conform to multiple different Types at some moment in time. If the object has a Class, then that Class should realize the Types to which the object conforms. If dynamic classification is used, then the Types to which an object conforms may actually change dynamically. A Type may be used in this way to characterize a changeable role that an object may adopt and later abandon.. Yes, I know we.re talking about MOF, but I think the distinction is still useful for the MOF level. -Jim On 3/22/06 2:18 PM, "Branislav Selic" indited: It's a bug only if you assume that an InstanceSpecification represents an instance at a particular point in time. Others may/need want a different interpretation (I know of at least one real project where the interpretation that you cite is not the desired one). Consequently, UML leaves the interpretation of the meaning of instance specifications as a semantic variation point. (Sorry, Steve!) Semantic variation points are crucial to ensure that UML supports a family of languages -- which is one of its most widely used capabilities. The right way to fix the spec may be to provide an explicit list of possible interpretations. In that case, there will no longer be discussion whether this is a bug or not. Cheers, Bran Selic IBM Distinguished Engineer IBM Rational Software 770 Palladium Drive Kanata, Ontario, Canada K2V 1C8 ph.: (613) 591-7915 fax: (613) 599-3912 e-mail: bselic@ca.ibm.com Allan Kolber 03/22/2006 01:33 PM To Cory Casanave , Branislav Selic/Ottawa/IBM@IBMCA, conrad.bock@nist.gov cc adtf@omg.org, ontology@omg.org, "'Pete Rivett'" , "Cheryl K. Estep" Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM It is a bug. Example: an employee must be either a part-time emplyoyee or a full-time employee and either a temporary employee or permanent employee. One instance, two independent classification schemes. It is a bug and an important one that must be fixed. Allan Kolber Cory Casanave wrote: Bran, Unless otherwise specified I would think we must assume it can mean ALL of these things, and it certainly would mean the obvious choice Conrad suggests. I also find it somewhat .backwards. to assume the meaning of the MOF meta model based on the signature of a single method, that seems kind of like .reverse MDA. . obtain the model semantics from the interface! Bug or intent . it is still an unnecessary and troublesome constraint, one I appreciate more and more as I have NOT had that restriction in RDF and have to figure out how to support needed features in MOF. What ends up happening is that you have multiply inherit capabilities because of the POSSIBILITY that an instance may have that capability, and then weakening the semantics of that capability because things of that type may not use it. This mak! es the meta model and even the instance model much more complex than required. If it is bug, fix it. Otherwise . fix it anyway :) -Cory -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Tuesday, March 21, 2006 5:10 PM To: conrad.bock@nist.gov Cc: adtf@omg.org; 'Cory Casanave'; ontology@omg.org; 'Pete Rivett' Subject: RE: Multiple classifiers for an insta! nce in MOF and RDF as defined in ODM Actually, it is not clear what the multiple classifiers for an InstanceSpecification means. Rather than implying that the InstanceSpecification has multiple classifications, it could be interpreted to mean: (1) that the InstanceSpecification may have dynamically changed its classification during the interval in which it was observed (note that an InstanceSpecification does not necessarily represent a snapshot at an instant in time, it could also represent a view of an instance smeared over an interval of time) (2) that the different classifiers represent different views of a given component based on different viewpoints in different models (possibly at different levels of abstraction). ...and I am sure there are more. My point is that you cannot claim with certainty that this is a bug. Cheers, Bran "Conrad Bock" 03/21/2006 05:01 PM Please respond to conrad.bock To "'Pete Rivett'" , "'Cory Casanave'" , , cc Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Pete, Late comment, sorry, > Whether it would be a good idea for MOF to support multiple > classification of instances is a separate question. At the > moment it does not (nothing to do with X! MI): since the > operation Reflection::Element::getMetaClass() is single > valued. I'm personally inclined to agree with you, but that > is a major change that would need a new RFP. But InstanceSpecification in Abstractions supports multiple classifiers, so it supports modeling an instance that can't exist at runtime. This is clearly a bug, but it is only in Reflection, so to me maybe MOF as whole does support it. Conrad -------------------------------------------------------------------------------- Yahoo! Travel Find great deals to the top 10 hottest destinations! Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Wed, 22 Mar 2006 20:59:32 +0100 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Multiple classifiers for an instance in MOF and RDF as defined in ODM Thread-Index: AcZN5mCg8QPFETZ6QvuILCn4DLpq2AABMJ9L From: "LONJON Antoine" To: , Cc: , , , , , Bran Semantic variation point can't 'be the solution. Classification models require precise semantic. They are not boxes to put things with tagging mechanims (profiles). So we need a model to put things - the real ontological model (this exist in our universe of discourse) - and many other precise models to provide classification and meanings. By trying to embrace too much, UML is missing its target, leaving the room for the DSL thing, RDF or others Antoine -----Original Message----- From: Branislav Selic To: Allan Kolber CC: adtf@omg.org; Cory Casanave; Cheryl K. Estep; conrad.bock@nist.gov; ontology@omg.org; 'Pete Rivett' Sent: Wed Mar 22 20:18:16 2006 Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM It's a bug only if you assume that an InstanceSpecification represents an instance at a particular point in time. Others may/need want a different interpretation (I know of at least one real project where the interpretation that you cite is not the desired one). Consequently, UML leaves the interpretation of the meaning of instance specifications as a semantic variation point. (Sorry, Steve!) Semantic variation points are crucial to ensure that UML supports a family of languages -- which is one of its most widely used capabilities. The right way to fix the spec may be to provide an explicit list of possible interpretations. In that case, there will no longer be discussion whether this is a bug or not. Cheers, Bran Selic IBM Distinguished Engineer IBM Rational Software 770 Palladium Drive Kanata, Ontario, Canada K2V 1C8 ph.: (613) 591-7915 fax: (613) 599-3912 e-mail: bselic@ca.ibm.com Allan Kolber 03/22/2006 01:33 PM To Cory Casanave , Branislav Selic/Ottawa/IBM@IBMCA, conrad.bock@nist.gov cc adtf@omg.org, ontology@omg.org, "'Pete Rivett'" , "Cheryl K. Estep" Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM It is a bug. Example: an employee must be either a part-time emplyoyee or a full-time employee and either a temporary employee or permanent employee. One instance, two independent classification schemes. It is a bug and an important one that must be fixed. Allan Kolber Cory Casanave wrote: Bran, Unless otherwise specified I would think we must assume it can mean ALL of these things, and it certainly would mean the obvious choice Conrad suggests. I also find it somewhat .backwards. to assume the meaning of the MOF meta model based on the signature of a single method, that seems kind of like .reverse MDA. ? obtain thee model semantics from the interface! Bug or intent ? it is still an unnecessary and troublesomee constraint, one I appreciate more and more as I have NOT had that restriction in RDF and have to figure out how to support needed features in MOF. What ends up happening is that you have multiply inherit capabilities because of the POSSIBILITY that an instance may have that capability, and then weakening the semantics of that capability because things of that type may not use it. This mak! es the meta model and even the instance model much more complex than required. If it is bug, fix it. Otherwise ? fix it anyway :) > -Cory ________________________________ From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Tuesday, March 21, 2006 5:10 PM To: conrad.bock@nist.gov Cc: adtf@omg.org; 'Cory Casanave'; ontology@omg.org; 'Pete Rivett' Subject: RE: Multiple classifiers for an insta! nce in MOF and RDF as defined in ODM Actually, it is not clear what the multiple classifiers for an InstanceSpecification means. Rather than implying that the InstanceSpecification has multiple classifications, it could be interpreted to mean: (1) that the InstanceSpecification may have dynamically changed its classification during the interval in which it was observed (note that an InstanceSpecification does not necessarily represent a snapshot at an instant in time, it could also represent a view of an instance smeared over an interval of time) (2) that the different classifiers represent different views of a given component based on different viewpoints in different models (possibly at different levels of abstraction). ...and I am sure there are more. My point is that you cannot claim with certainty that this is a bug. Cheers, Bran "Conrad Bock" 03/21/2006 05:01 PM Please respond to conrad.bock To "'Pete Rivett'" , "'Cory Casanave'" , , cc Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Pete, Late comment, sorry, > Whether it would be a good idea for MOF to support multiple > classification of instances is a separate question. At the > moment it does not (nothing to do with X! MI): since the > operation Reflection::Element::getMetaClass() is single > valued. I'm personally inclined to agree with you, but that > is a major change that would need a new RFP. But InstanceSpecification in Abstractions supports multiple classifiers, so it supports modeling an instance that can't exist at runtime. This is clearly a bug, but it is only in Reflection, so to me maybe MOF as whole does support it. Conrad ________________________________ Yahoo! Travel Find great deals to the top 10 hottest destinations! **********************************IMPORTANT*********************************** The content of this email and any attachments are confidential and intended for the named recipient(s) only. If you have received this email in error please return it to our postmaster immediately and delete it from your system. WARNING: Although MEGA has taken reasonable precautions to ensure no viruses are present in this email, MEGA cannot accept responsibility for any loss or damage arising from the use of this email or attachments. ****************************************************************************** From: ewallace@cme.nist.gov Date: Wed, 22 Mar 2006 15:37:31 -0500 (EST) To: juergen@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Cc: adtf@omg.org X-Sun-Charset: US-ASCII >should I assgn an issue number to this thread. You can. The ODM submitters will provide more information on this issue soon. We have run into it in both the OWL DL and (especially) OWL Full metamodels. >If >the answer is 'yes', waht FTF/RTF would take care of it? MOF2 Core RTF ? -Evan To: "LONJON Antoine" Cc: adtf@omg.org, allanbkolber@yahoo.com, cbc@enterprisecomponent.com, ckestep@earthlink.net, conrad.bock@nist.gov, ontology@omg.org, pete.rivett@adaptive.com Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM X-Mailer: Lotus Notes Release 6.0.1CF1 March 04, 2003 From: Branislav Selic Date: Wed, 22 Mar 2006 15:45:57 -0500 X-MIMETrack: Serialize by Router on D25ML01/25/M/IBM(Release 6.5.4|March 27, 2005) at 03/22/2006 15:45:49, Serialize complete at 03/22/2006 15:45:49 Antoine, You wrote: > By trying to embrace too much, UML is missing its target, leaving > the room for the DSL thing, RDF or others The whole idea of semantic variation points is to support DSLs. As has been pointed out, practically everyone uses UML as a DSL. This is one of its important strengths: by using UML as a base for your DSL, you get most of the hard work done for you and all you have to do is to turn a few knobs to get the specific semantics that you like. You can always tighten the semantic variation points using a profile to get executability. However, I can understand why this may not be suitable for MOF, in which case, the MOF should tighten the multiplicity on types for InstanceSpecifications. (In fact, when you think about it, MOF could be defined as a profile of UML.) Cheers...Bran DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Message-ID:Received:Date:From:Subject:To:Cc:In-Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding; b=wyPe2lqkOKRVdTCzODwecYtS0cjTvWdjUqk4Y1/AJ22Jpmn65EhdYWbHQsIsbSTgEjZ/LnaNIRTHr1GmCYl80YmSoC3QEw5jlHH4HAkUAF+HXy2OuPMr63z4bQqcl0BTbc+VeZRIfK5FAcxg1rr4XY+cMTxoqAy9sU0b9GYx4+k= ; Date: Wed, 22 Mar 2006 15:26:07 -0800 (PST) From: Allan Kolber Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM To: David Price , "'James Odell'" , "'Cory Casanave'" , "'Branislav Selic'" , conrad.bock@nist.gov Cc: "'A&D TF \(OMG\) '" , "'Ontology SIG'" , "'Pete Rivett'" , "'Cheryl K. Estep'" I did not model the relationship to person. Technically, Employee is a role of a person and can certainly have multiple relationships to different organizations. My example specified that the [role of] employee [in its relationship to an organization] must be categorized by two different independent, exhaustive categorization schemes, each with two categories. The fact that the person playing the role of employee may also play the role of shareholder is true, but irrelevant to the example other than to show the need for role-playing relationships as distinct from supertype/subtype relationships, another problem in UML and MOF. David Price wrote: Actually, this is just a case of a bad model - neither of these are subtypes of Person. Part time and Full time are properties of the employedBy relation between a Person and an Organization. A Person can certainly be a Full time employee of Org 1 and a Part time employee of Org 2. Still, there are cases where being a member of multiple classes is required like being Male and being Human (my Dog is a Male but only thinks he's Human). Cheers, David -----Original Message----- From: James Odell [mailto:email@jamesodell.com] Sent: 22 March 2006 18:45 To: Allan Kolber; Cory Casanave; 'Branislav Selic'; conrad.bock@nist.gov Cc: A&D TF (OMG) ; Ontology SIG; 'Pete Rivett'; Cheryl K. Estep Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Allan, If the subtypes of Employee are {disjoint}, then an object may NOT be part-time employee or a full-time employee.by definition. However, an object can be BOTH part-time employee and shareholder at the same time, because these are not disjoint. So, I see no .bug. here. -Jim On 3/22/06 1:33 PM, "Allan Kolber" indited: It is a bug. Example: an employee must be either a part-time emplyoyee or a full-time employee and either a temporary employee or permanent employee. One instance, two independent classification schemes. It is a bug and an important one that must be fixed. Allan Kolber Cory Casanave wrote: Bran, Unless otherwise specified I would think we must assume it can mean ALL of these things, and it certainly would mean the obvious choice Conrad suggests. I also find it somewhat .backwards. to assume the meaning of the MOF meta model based on the signature of a single method, that seems kind of like .reverse MDA. . obtain the model semantics from the interface! Bug or intent . it is still an unnecessary and troublesome constraint, one I appreciate more and more as I have NOT had that restriction in RDF and have to figure out how to support needed features in MOF. What ends up happening is that you have multiply inherit capabilities because of the POSSIBILITY that an instance may have that capability, and then weakening the semantics of that capability because things of that type may not use it. This mak! es the meta model and even the instance model much more complex than required. If it is bug, fix it. Otherwise . fix it anyway :) -Cory -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Tuesday, March 21, 2006 5:10 PM To: conrad.bock@nist.gov Cc: adtf@omg.org; 'Cory Casanave'; ontology@omg.org; 'Pete Rivett' Subject: RE: Multiple classifiers for an insta! nce in MOF and RDF as defined in ODM Actually, it is not clear what the multiple classifiers for an InstanceSpecification means. Rather than implying that the InstanceSpecification has multiple classifications, it could be interpreted to mean: (1) that the InstanceSpecification may have dynamically changed its classification during the interval in which it was observed (note that an InstanceSpecification does not necessarily represent a snapshot at an instant in time, it could also represent a view of an instance smeared over an interval of time) (2) that the different classifiers represent different views of a given component based on different viewpoints in different models (possibly at different levels of abstraction). ...and I am sure there are more. My point is that you cannot claim with certainty that this is a bug. Cheers, Bran "Conrad Bock" 03/21/2006 05:01 PM Please respond to conrad.bock To "'Pete Rivett'" , "'Cory Casanave'" , , cc Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Pete, Late comment, sorry, > Whether it would be a good idea for MOF to support multiple > classification of instances is a separate question. At the > moment it does not (nothing to do with X! MI): since the > operation Reflection::Element::getMetaClass() is single > valued. I'm personally inclined to agree with you, but that > is a major change that would need a new RFP. But InstanceSpecification in Abstractions supports multiple classifiers, so it supports modeling an instance that can't exist at runtime. This is clearly a bug, but it is only in Reflection, so to me maybe MOF as whole does support it. Conrad -------------------------------------------------------------------------------- Yahoo! Travel Find great deals to the top 10 hottest destinations! -------------------------------------------------------------------------------- To: Juergen Boldt Cc: issues@omg.org, mof2core-rtf@omg.org Subject: Re: issue 9466 -- MOF 2 Core RTF issue X-Mailer: Lotus Notes Release 7.0 HF85 November 04, 2005 From: Jim Amsden Date: Wed, 22 Mar 2006 21:24:13 -0500 X-MIMETrack: Serialize by Router on D03NM118/03/M/IBM(Release 7.0.1HF43 | March 10, 2006) at 03/22/2006 19:24:19, Serialize complete at 03/22/2006 19:24:19 MOF2 includes a package called SemanticsDomain which defines Instance and subclass ClassInstance,. But as Cory points out, it must have one and only one classifier Class. The SemanticsDomain is optional for EMOF. UML2 Superstructure Kernel::Classes defines InstanceSpecification which can have multiple classifier Classifiers. Multiple classification can be modeled other ways. For example, a Class could have many properties whose types are other classes which define all the various categories of properties the class could have. A multi-valued enumeration could be used to specify which of these "classifications" are currently valid. Classification schemes can be modeled using subclasses that include different sets of properties. Instances of these subclasses would represent the application of a classification scheme. Layered superclasses can be used to reduce the number of properties that are in any particular instance. These are essentially recurring patterns of more primitive modeling constructs that are supported by MOF. Juergen Boldt 03/22/2006 05:30 PM To issues@omg.org, mof2core-rtf@omg.org cc Subject issue 9466 -- MOF 2 Core RTF issue This is issue # 9466 From: "Cory Casanave" Multiple classifiers for an instance in MOF and RDF as defined in ODM This is a question involving ODM as well as MOF XMI and Life-cycle. In ODM we have RDF and OWL defined as MOF meta models, the assumption being, of course, that you can have MOF instances of RDF graphs. But can you? In RDF & OWL an instance (at any M level) can have (and frequently does have) multiple types . it is classified by more than one class. While this is perfectly legal in UML and even in the MOF meta model, I don.t think the concept is supported in XMI or the current life-cycle. So, can you actually represent RDF in MOF? If not, the ODM models are not valid . I hope I am wrong about this. The ability for an instance to be classified by more than one class is a major advantage of RDF and of ontology languages, the C++ heritage in MOF of an instance statically being a member of a single class puts MOF at a disadvantage in relation to these other technologies. It makes it very difficult to represent different aspects of an instance, as can be seen from the package merge complexities - which would not have been required is we had multiple classification in MOF. If this is actually a semantic mis-match between MOF and ODM, is may make more sense to add the capability to MOF since the MOF meta model does not preclude this capability . it is only a restriction of the MOF-PSM (XMI). Juergen Boldt Director, Member Services 140 Kendrick St Building A Suite 300 Needham, MA 02494 USA tel: +1 781 444 0404 x 132 fax: +1 781 444 0320 email: juergen@omg.org www.omg.org Reply-To: From: "Conrad Bock" To: "'Cory Casanave'" , "'James Odell'" , "'Allan Kolber'" , "'Branislav Selic'" Cc: "'A&D TF \(OMG\) '" , "'Ontology SIG'" , "'Pete Rivett'" , "'Cheryl K. Estep'" Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Thu, 23 Mar 2006 09:01:15 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcZN4MdlBj9SqLnUEdq58wADk8zkFgAAGWjQACgiK6A= > There is no argument with UML here (for once), this is a > MOF issue in that the MOF interface does not support the > semantics you are quoting - thus the MOF model does not > mean the same thing as the UML model. Multiple classification is in the infrastructure, so is part of MOF. The problem is that MOF reflection (as based on its semantic domain model) does not support everything that can be modelled in MOF. This inconsistency should be resolved by fixing MOF reflection. Conrad Reply-To: From: "Conrad Bock" To: "'Branislav Selic'" , "'Allan Kolber'" Cc: , "'Cory Casanave'" , "'Cheryl K. Estep'" , , "'Pete Rivett'" Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Thu, 23 Mar 2006 09:04:37 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcZN5nXAgpz8RSY0Sk+ZBcioUxiZCwAm/8oA > Consequently, UML leaves the > interpretation of the meaning of instance specifications as > a semantic variation point. (Sorry, Steve!) Semantic > variation points are crucial to ensure that UML supports a > family of languages -- which is one of its most widely used > capabilities. Even with that understanding there is a bug in MOF Reflection, because one of the valid interpretations is multiple, simultaneous classification. Conrad Reply-To: From: "Conrad Bock" To: "'Branislav Selic'" , "'LONJON Antoine'" Cc: , , , , , Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Thu, 23 Mar 2006 09:07:20 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcZN8bJFNnW8PcqnQKSfHIdUhVUquAAkScbg > The whole idea of semantic variation points is to support > DSLs. Agreed, the problem isn't in semantic variation, it's that the variation isn't explicitly recorded in the model. So when the model is interchanged, the receiver doesn't know what the sender intended. That's the problem Antoine is referring to. > However, I can understand why this may not be suitable for > MOF, in which case, the MOF should tighten the multiplicity > on types for InstanceSpecifications. (In fact, when you > think about it, MOF could be defined as a profile of UML.) Why is it not suitable for MOF? Conrad To: Cc: adtf@omg.org, allanbkolber@yahoo.com, "'LONJON Antoine'" , cbc@enterprisecomponent.com, ckestep@earthlink.net, ontology@omg.org, pete.rivett@adaptive.com Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM X-Mailer: Lotus Notes Release 6.0.1CF1 March 04, 2003 From: Branislav Selic Date: Thu, 23 Mar 2006 11:11:59 -0500 X-MIMETrack: Serialize by Router on D25ML01/25/M/IBM(Release 6.5.4|March 27, 2005) at 03/23/2006 11:12:00, Serialize complete at 03/23/2006 11:12:00 > > However, I can understand why this may not be suitable for > > MOF, in which case, the MOF should tighten the multiplicity > > on types for InstanceSpecifications. (In fact, when you > > think about it, MOF could be defined as a profile of UML.) > > Why is it not suitable for MOF? I have no clue -- I thought that this is what the MOF experts had agreed on. Cheers...Bran Reply-To: From: "Conrad Bock" To: "'Branislav Selic'" Cc: , , "'LONJON Antoine'" , , , , , Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Thu, 23 Mar 2006 15:06:04 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcZOliPXfKpr759fRdiqYnwnmwATpAAAXHIQ > > > However, I can understand why this may not be suitable for > > > MOF, in which case, the MOF should tighten the multiplicity > > > on types for InstanceSpecifications. (In fact, when you > > > think about it, MOF could be defined as a profile of UML.) > > > > Why is it not suitable for MOF? > > I have no clue -- I thought that this is what the MOF > experts had agreed on. Copying the MOF RTF. The issue is logged at: http://www.omg.org/issues/mof2core-rtf.open.html#Issue9466 To: Cc: adtf@omg.org, allanbkolber@yahoo.com, "'LONJON Antoine'" , "'Branislav Selic'" , cbc@enterprisecomponent.com, ckestep@earthlink.net, mof2core-rtf@omg.org, ontology@omg.org, pete.rivett@adaptive.com Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM X-Mailer: Lotus Notes Release 7.0 HF85 November 04, 2005 From: Jim Amsden Date: Fri, 24 Mar 2006 09:25:23 -0500 X-MIMETrack: Serialize by Router on D03NM118/03/M/IBM(Release 7.0.1HF43 | March 10, 2006) at 03/24/2006 07:25:24, Serialize complete at 03/24/2006 07:25:24 I suspect this is not applicable for MOF for the practical reason that it is not supported by any common programming language or runtime platform. I still think we need to understand the original requirements and see if there are other ways to model them that don't introduce this requirement into MOF. "Conrad Bock" 03/23/2006 03:06 PM Please respond to To "'Branislav Selic'" cc , , "'LONJON Antoine'" , , , , , Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM > > > However, I can understand why this may not be suitable for > > > MOF, in which case, the MOF should tighten the multiplicity > > > on types for InstanceSpecifications. (In fact, when you > > > think about it, MOF could be defined as a profile of UML.) > > > > Why is it not suitable for MOF? > > I have no clue -- I thought that this is what the MOF > experts had agreed on. Copying the MOF RTF. The issue is logged at: http://www.omg.org/issues/mof2core-rtf.open.html#Issue9466 Conrad From: "Cory Casanave" To: "'Jim Amsden'" , Cc: , , "'LONJON Antoine'" , "'Branislav Selic'" , , , , Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Fri, 24 Mar 2006 09:43:33 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcZPTpc8HjFsZojnQfSHjXl7xLJHawAAHrdw X-OriginalArrivalTime: 24 Mar 2006 14:43:57.0650 (UTC) FILETIME=[61AFE320:01C64F51] Jim, The model semantics don.t need to be implemented in the programming language any more than the specific MOF API does. Patterns and software support for supporting dynamic multiple classification in multiple languages have been around for years . including the com/iUnkown pattern. Such a pattern could be generated directly out of the model quite easily and/or one of the many libraries to support such things could be used (I made a summary of these when I tried to raise this issue prior to UML-2, but I can.t find it). These approaches are simple and perform well. Consider the complexities introduced in UML-2 due to both package merge and hyper-multiple inheritance to support what an instance COULD BE, rather than what it is. I submit that the lack of this feature is a root-cause of much of the UML-2 complexity and inability to generalize fundamental concepts. Let.s eat our own dog-food and not let the platform dictate the model. -Cory -------------------------------------------------------------------------------- From: Jim Amsden [mailto:jamsden@us.ibm.com] Sent: Friday, March 24, 2006 9:25 AM To: conrad.bock@nist.gov Cc: adtf@omg.org; allanbkolber@yahoo.com; 'LONJON Antoine'; 'Branislav Selic'; cbc@enterprisecomponent.com; ckestep@earthlink.net; mof2core-rtf@omg.org; ontology@omg.org; pete.rivett@adaptive.com Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM I suspect this is not applicable for MOF for the practical reason that it is not supported by any common programming language or runtime platform. I still think we need to understand the original requirements and see if there are other ways to model them that don't introduce this requirement into MOF. "Conrad Bock" 03/23/2006 03:06 PM Please respond to To "'Branislav Selic'" cc , , "'LONJON Antoine'" , , , , , Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM > > > However, I can understand why this may not be suitable for > > > MOF, in which case, the MOF should tighten the multiplicity > > > on types for InstanceSpecifications. (In fact, when you > > > think about it, MOF could be defined as a profile of UML.) > > > > Why is it not suitable for MOF? > > I have no clue -- I thought that this is what the MOF > experts had agreed on. Copying the MOF RTF. The issue is logged at: http://www.omg.org/issues/mof2core-rtf.open.html#Issue9466 Conrad Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Fri, 24 Mar 2006 15:43:58 +0100 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Multiple classifiers for an instance in MOF and RDF as defined in ODM Thread-Index: AcZPTxJbUyMs2LHjSOC6PtNuQ1i09AAAK6fw From: "Wenzel Bernd" To: "Jim Amsden" , Cc: , , "LONJON Antoine" , "Branislav Selic" , , , , , John, I.m sorry, but I have to disagree with you. Even if it were true, that no programming language / runtime platform is supporting this feature, this wouldn.t invalidate this requirement. Otherwise we would allow the tail to wave the dog. Don.t get me wrong, I.m not against developing some work-around for the time being, but I.m strictly against labelling requirements as being invalid just because we have not found a technical solution (yet). Would we be able to conduct this discussion on email if we.d apply your thinking as a general guideline? J Bernd ---------------------------------------------------------------------- Dipl.-Inform. Bernd G. Wenzel Department of Computer Science Fachhochschule Vorarlberg (University of Applied Sciences) Snail Mail Address: Hochschulstr. 1 A-6850 Dornbirn Austria Visitor Address: Sägerstr. 4 Room: S202 Email: bernd.wenzel@fhv.at Phone: +43-(0)5572-792-3007 Facsimile: +43-(0)5572-792-9274 Mobile: +49-(0)170-9983565 Yes, this is a German number! -------------------------------------------------------------------------------- From: Jim Amsden [mailto:jamsden@us.ibm.com] Sent: Friday, March 24, 2006 3:25 PM To: conrad.bock@nist.gov Cc: adtf@omg.org; allanbkolber@yahoo.com; 'LONJON Antoine'; 'Branislav Selic'; cbc@enterprisecomponent.com; ckestep@earthlink.net; mof2core-rtf@omg.org; ontology@omg.org; pete.rivett@adaptive.com Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM I suspect this is not applicable for MOF for the practical reason that it is not supported by any common programming language or runtime platform. I still think we need to understand the original requirements and see if there are other ways to model them that don't introduce this requirement into MOF. "Conrad Bock" 03/23/2006 03:06 PM Please respond to To "'Branislav Selic'" cc , , "'LONJON Antoine'" , , , , , Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM > > > However, I can understand why this may not be suitable for > > > MOF, in which case, the MOF should tighten the multiplicity > > > on types for InstanceSpecifications. (In fact, when you > > > think about it, MOF could be defined as a profile of UML.) > > > > Why is it not suitable for MOF? > > I have no clue -- I thought that this is what the MOF > experts had agreed on. Copying the MOF RTF. The issue is logged at: http://www.omg.org/issues/mof2core-rtf.open.html#Issue9466 Conrad Reply-To: From: "Conrad Bock" To: "'Jim Amsden'" Cc: , , "'LONJON Antoine'" , "'Branislav Selic'" , , , , , Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Fri, 24 Mar 2006 09:47:59 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcZPTvHVOdw8ta9NSxmyHjxYDO0wxwAASDlw Hi Jim, > I suspect this is not applicable for MOF for the practical > reason that it is not supported by any common programming > language or runtime platform. These are repository applications, rather than code generation, so I can't see the limitation. I would have thought it was just a matter of changing the repository database schemas, but hopefully a MOF implementor will chime here sometime. > I still think we need to understand the original requirements and The particular application is the Semantic Web, but the problem would occur in any distributed meta-data development environment. In these applications, multiple users who don't know each other are adding metadata (the Semantic Web is the most obvious example, which is why it adopts an open-world semantics). Sometimes this causes the same MOF instance to be multiply classified. > see if there are other ways to model them that don't introduce this > requirement into MOF. There are workarounds, but it means standardizing a metamodel with implementation-specific modifications. For example, adding derived attributes to tell what the classifications of a MOF instance is, instead of using MOF reflection. Another example is adding classes that multiply-inherit, doing this for every combination of concrete class that might ever be needed. Since we represent MDA, it looks very bad to tell metamodel developers they need to account for particular repository platforms, if that is actually the motivation for this restriction in MOF. Conrad Date: Fri, 24 Mar 2006 06:52:59 -0800 From: "Elisa F. Kendall" Organization: Sandpiper Software, Inc. User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.2) Gecko/20040804 Netscape/7.2 (ax;nscd1) X-Accept-Language: en-us, en To: Jim Amsden CC: adtf@omg.org, mof2core-rtf@omg.org, ontology@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Jim, The work-arounds required in ODM to address this, for languages including RDF and OWL - which are not necessarily programming languages but certainly becoming increasingly mainstream and are used at run-time in an increasing number of applications, are ugly, to say the least. We (the semantic web community) can't be unique in this regard - we're not talking about arcane features of logic programming here. Examples of the work-arounds include having to promote properties to higher-level classes to which they do not apply, inventing mixin constructs to represent classes whose extensions can include multiply classified objects (compound names are used), representation of elements as properties that should be classes based on the abstract syntax of the original language (and thus not actually modelling the abstract syntax of the original language well), and so forth. Elisa Jim Amsden wrote: I suspect this is not applicable for MOF for the practical reason that it is not supported by any common programming language or runtime platform. I still think we need to understand the original requirements and see if there are other ways to model them that don't introduce this requirement into MOF. "Conrad Bock" 03/23/2006 03:06 PM Please respond to To "'Branislav Selic'" cc , , "'LONJON Antoine'" , , , , , Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM > > > However, I can understand why this may not be suitable for > > > MOF, in which case, the MOF should tighten the multiplicity > > > on types for InstanceSpecifications. (In fact, when you > > > think about it, MOF could be defined as a profile of UML.) > > > > Why is it not suitable for MOF? > > I have no clue -- I thought that this is what the MOF > experts had agreed on. Copying the MOF RTF. The issue is logged at: http://www.omg.org/issues/mof2core-rtf.open.html#Issue9466 Conrad Date: Fri, 24 Mar 2006 13:41:02 -0500 From: Ed Barkmeyer Reply-To: edbark@nist.gov Organization: NIST User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.2) Gecko/20040804 Netscape/7.2 (ax) X-Accept-Language: en, fr, de, pdf, it, nl, sv, es, ru To: Jim Amsden , OMG ADPTF , mof2core-rtf@omg.org Subject: Re: Multiple classifiers for an instance in MOF and RDF as defined in ODM Jim, you wrote: I suspect this is not applicable for MOF for the practical reason that it is not supported by any common programming language or runtime platform. Well, it is easily and frequently supported in SQL schemas, which is rather more common than MOF. But, to be honest, I treat MOF as yet another information technology that is deliberately limited in its modeling capability for just such reasons as you cite. SQL limited the datatypes of columns to simple types to match the simple relational manipulation model. OO languages limit inheritance so that they can use a simple runtime data structure. OWL limits knowledge expressibility to that which can be used for inferencing by a tableaux reasoner. Each of these *implementation goals* produces different limitations in the modeling capability. Why should MOF be any different? I don't know what its implementation objectives were, but they will doubtless give rise to some annoying limitations. Cory may expect MOF to be just what he needs; I expect it to be another near miss. And in every one of these cases, there is some work-around for what cannot be expressed easily, or at least cannot be expressed in the way to which the modeler would like to become accustomed. In SQL I model multiple classification by making a table for each class and putting the same "key" in all the class tables the instance satisfies. The easy work-around for the MOF/Java limitation is "alter egos": This one abstract object is these two implementation (MOF) objects, and this gives rise to an artifact association which links the two alter egos. Yes, it's a PITA, so is runtime table joins. When you get a lemon, make lemonade. But for things like this, I prefer: "It isn't truth, it's just technology." -Ed -- Edward J. Barkmeyer Email: edbark@nist.gov National Institute of Standards & Technology Manufacturing Systems Integration Division 100 Bureau Drive, Stop 8263 Tel: +1 301-975-3528 Gaithersburg, MD 20899-8263 FAX: +1 301-975-4482 "The opinions expressed above do not reflect consensus of NIST, and have not been reviewed by any Government authority." DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Message-ID:Received:Date:From:Subject:To:Cc:In-Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding; b=bvk+IfUNbcWkSa4GHnpOw9/2mtoZU6Be6beltwKh2fgOOFYkf2UPy54alUhHX/3FPf9q0JGvcZWzAdALf/gNa30g8yMQW5FzjzHJmUhTMfxmxG9vT5/EujpXSSLjSLShou66JqHTF5E/e5NUDLsbTWcCvnVj9Wp5+QNa+Ta17bg= ; Date: Fri, 24 Mar 2006 10:58:58 -0800 (PST) From: Allan Kolber Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM To: Jim Amsden , conrad.bock@nist.gov Cc: adtf@omg.org, allanbkolber@yahoo.com, "'LONJON Antoine'" , "'Branislav Selic'" , cbc@enterprisecomponent.com, ckestep@earthlink.net, mof2core-rtf@omg.org, ontology@omg.org, pete.rivett@adaptive.com Excuse me, but this is not only about programming and run-time languages. We are now trying to also model the business (see SBVR and BMM) and we are told that we have to use UML. Well, UML and MOF are going to have to be fixed to enable support for business modeling. Jim Amsden wrote: I suspect this is not applicable for MOF for the practical reason that it is not supported by any common programming language or runtime platform. I still think we need to understand the original requirements and see if there are other ways to model them that don't introduce this requirement into MOF. "Conrad Bock" 03/23/2006 03:06 PM Please respond to To "'Branislav Selic'" cc , , "'LONJON Antoine'" , , , , , Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM > > > However, I can understand why this may not be suitable for > > > MOF, in which case, the MOF should tighten the multiplicity > > > on types for InstanceSpecifications. (In fact, when you > > > think about it, MOF could be defined as a profile of UML.) > > > > Why is it not suitable for MOF? > > I have no clue -- I thought that this is what the MOF > experts had agreed on. Copying the MOF RTF. The issue is logged at: http://www.omg.org/issues/mof2core-rtf.open.html#Issue9466 Conrad -------------------------------------------------------------------------------- Yahoo! Messenger with Voice. Make PC-to-Phone Calls to the US (and 30+ countries) for 2¢/min or less. From: "Cory Casanave" To: "'Branislav Selic'" , "'Allan Kolber'" Cc: , , "'LONJON Antoine'" , , , "'Jim Amsden'" , , , Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Fri, 24 Mar 2006 16:19:48 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcZPgfeY+/p8uSEsRAaEGHBJ2r6izwABooDw X-OriginalArrivalTime: 24 Mar 2006 21:20:12.0488 (UTC) FILETIME=[BC984480:01C64F88] Bran, It seems there are 2 issues; 1) MOF technology layer supporting dynamic multiple classification 2) Precision of UML Model semantics for an instance having multiple types. -Cory -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Friday, March 24, 2006 3:31 PM To: Allan Kolber Cc: adtf@omg.org; allanbkolber@yahoo.com; 'LONJON Antoine'; cbc@enterprisecomponent.com; ckestep@earthlink.net; conrad.bock@nist.gov; Jim Amsden; mof2core-rtf@omg.org; ontology@omg.org; pete.rivett@adaptive.com Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Just to make clear: the specific issue that is being discussed is a MOF issue, not a UML issue. (Otherwise, Juergen will log it an a UML issue -- and we already have enough that we do not need to take on other people's issues. ) Cheers, Bran Selic IBM Distinguished Engineer IBM Rational Software 770 Palladium Drive Kanata, Ontario, Canada K2V 1C8 ph.: (613) 591-7915 fax: (613) 599-3912 e-mail: bselic@ca.ibm.com Allan Kolber 03/24/2006 01:58 PM To Jim Amsden , conrad.bock@nist.gov cc adtf@omg.org, allanbkolber@yahoo.com, "'LONJON Antoine'" , Branislav Selic/Ottawa/IBM@IBMCA, cbc@enterprisecomponent.com, ckestep@earthlink.net, mof2core-rtf@omg.org, ontology@omg.org, pete.rivett@adaptive.com Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Excuse me, but this is not only about programming and run-time languages. We are now trying to also model the business (see SBVR and BMM) and we are told that we have to use UML. Well, UML and MOF are going to have to be fixed to enable support for business modeling. Jim Amsden wrote: I suspect this is not applicable for MOF for the practical reason that it is not supported by any common programming language or runtime platform. I still think we need to understand the original requirements and see if there are other ways to model them that don't introduce this requirement into MOF. "Conrad Bock" 03/23/2006 03:06 PM Please respond to To "'Branislav Selic'" cc , , "'LONJON Antoine'" , , , , , Subject RE: Mult! iple classifiers for an instance in MOF and RDF as defined in ODM > > > However, I can understand why this may not be suitable for > > > MOF, in which case, the MOF should tighten the multiplicity > > > on types for InstanceSpecifications. (In fact, when you > > > think about it, MOF could be defined as a profile of UML.) > > > > Why is it not suitable for MOF? > > I have no clue -- I thought that this is what the MOF > experts had agreed on. Copying the MOF RTF. The issue is logged at: http://www.omg.org/issues/mof2core-rtf.open.html#Issue9466 Conrad -------------------------------------------------------------------------------- Yahoo! Messenger with Voice. Make PC-to-Phone Calls to the US (and 30+ countries) for 2¢/min or less. Reply-To: From: "Conrad Bock" To: "'Cory Casanave'" , "'Branislav Selic'" , "'Allan Kolber'" Cc: , , "'LONJON Antoine'" , , "'Jim Amsden'" , , , Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Date: Fri, 24 Mar 2006 16:39:01 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcZPgfeY+/p8uSEsRAaEGHBJ2r6izwABooDwAACtx4A= > 2) Precision of UML Model semantics for an instance > having multiple types. Infrastructure semantics (otherwise there would be no issue in MOF). Conrad From: ewallace@cme.nist.gov Date: Fri, 24 Mar 2006 16:39:25 -0500 (EST) To: adtf@omg.org Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM X-Sun-Charset: US-ASCII Cory wrote: >It seems there are 2 issues; > >1) MOF technology layer supporting dynamic multiple classification > >2) Precision of UML Model semantics for an instance having multiple >types. The issue I described as a MOF issue (to which Juergen assigned the number 9466) is support of multiple simultaneous classification. To: issues@omg.org Subject: Another Interchange issue X-Mailer: Lotus Notes Release 7.0 HF85 November 04, 2005 From: Mark H Linehan Date: Mon, 27 Mar 2006 11:51:09 -0500 X-MIMETrack: Serialize by Router on D01ML083/01/M/IBM(Release 6.5.4FP3 HF3|February 22, 2006) at 03/27/2006 11:51:10, Serialize complete at 03/27/2006 11:51:10 Juergen, here's another single issue illustrated by several questions. The Interchange discussion in chapters 13 and Annexes K and L appear to discuss exchange of *meaning* between tools. But what about *representations* and *expressions*? Presumably users would want to preserve their forms of expression when moving rules between tools. Is that a goal of the Interchange design? If the answer is yes, then tool implementors will need more detail about how to accomplish that. Consider the first example in chapter 9, "A rental must have at most three additional drivers". I can think of several ways to associate the expression with the semantic formulation described in this chapter. 1. Use the fact type "statement is formalized by closed logical formulation" to associate the complete rule statement with the top-level semantic formulation. 2. Use the fact types "representation has expression", "representation represents meaning" and "closed semantic formulation formulates meaning" to associate the complete rule statement (as an expression) to a representation that then gets associated to a meaning that then gets associated with the semantic formulation. This seems like one too many levels of indirection: why isn't a semantic formulation a type of meaning? 3 . Decompose the statement into sub-statements such as "rental has at most three additional drivers" and "rental has additional drivers" and associate these individually with the corresponsing logical formulations that compose the complete formulation. That is, exchange the expression corresponding to each logical formulation. Absent further guidance, tool vendors will choose different answers to such questions. That will defeat the goal of interoperability between tools and repositories. -------------------------------- Mark H. Linehan Subject: [mof2core-rtf] Issue 9466 (was: Multiple classifiers for an instance in MOF and RDF as defined in ODM) Date: Sat, 25 Mar 2006 05:54:16 -0800 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: [mof2core-rtf] Issue 9466 (was: Multiple classifiers for an instance in MOF and RDF as defined in ODM) Thread-Index: AcZPgfSBFIYG754TSJS2XLf4mfuyoQAix4Pw From: "Pete Rivett" To: Cc: , "LONJON Antoine" , , , , "Jim Amsden" , "Allan Kolber" , "Branislav Selic" , , , "Elisa F. Kendall" I'm just back from vacation and trying to catch up with this all: which gives me the opportunity to reply to many threads at once. In summary my position is as follows: most is a reprise of what I wrote a couple of months ago: a) I agree that it's a genuine requirement - I have run into many real world situations where this sort of capability would be needed: for example in the area of enterprise architecture. I agree that the workrounds are kludgy and not what MOF should be about (IMHO) b) For right or wrong it's a deliberate design decision in current MOF that is quite pervasive as an assumption - not an accidental oversight in one signature. BTW the Instances metamodel, though in the Infrastructure spec, is not part of Constructs or MOF (the MOF Abstract Semantics uses an extended instances diagram just for descriptive purposes within the specification itself). c) However there is no fundamental reason why MOF could not be enhanced to support this requirement: I disagree with Jim on this point d) This is by no means a minor change - it has significant knock-on impacts for example on the generated language bindings (we have standardized the IDL binding) and on the XMI serialization (XMI assumes the one and only tag for an element represents its one and only metaclass). Not to mention QVT. Even without these impacts it is non-trivial to specify - for example one would need reflective operations to add/remove classes from an instance, and some means of resolving property name clashes etc. Though I agree with Cory that this is not uncharted territory. e) For reasons b) and d) I strongly believe that changes to address this issue go well beyond the scope of an RTF. So I would recommend that it be closed as Deferred. f) There are many uses of MOF which would not need this capability g) So one approach could be to create an RFP for a further (I know) level of MOF which I christened SMOF. As well as the multiple classification issue there are other, more minor structural issues that make MOF harder to use than it need be for representing semantic models. As with any RFP the responses can make changes to existing specification(s) as would be needed per d) above. I had no response to this when I suggested it a couple of months ago - does this lack of interest in the outcome, lack of inclination to work on it, or that my message did not reach the right people? h) In the meantime an approach for the ODM submitters might be to keep the 'pure' model (which requires multiple classification) as a (non-normative) PIM and treat the 'kludged' metamodel as a PIM for the MOF 2.0 platform. Cheers, Pete Pete Rivett (mailto:pete.rivett@adaptive.com) CTO, Adaptive Inc. Hello House, 135 Somerford Road, Christchurch, BH23 3PY, UK Tel: +44 (0)1202 491243 Fax: +44 (0)1202 491241 http://www.adaptive.com -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Friday, March 24, 2006 8:31 PM To: Allan Kolber Cc: adtf@omg.org; allanbkolber@yahoo.com; 'LONJON Antoine'; cbc@enterprisecomponent.com; ckestep@earthlink.net; conrad.bock@nist.gov; Jim Amsden; mof2core-rtf@omg.org; ontology@omg.org; Pete Rivett Subject: RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Just to make clear: the specific issue that is being discussed is a MOF issue, not a UML issue. (Otherwise, Juergen will log it an a UML issue -- and we already have enough that we do not need to take on other people's issues. ) Cheers, Bran Selic IBM Distinguished Engineer IBM Rational Software 770 Palladium Drive Kanata, Ontario, Canada K2V 1C8 ph.: (613) 591-7915 fax: (613) 599-3912 e-mail: bselic@ca.ibm.com Allan Kolber 03/24/2006 01:58 PM To Jim Amsden , conrad.bock@nist.gov cc adtf@omg.org, allanbkolber@yahoo.com, "'LONJON Antoine'" , Branislav Selic/Ottawa/IBM@IBMCA, cbc@enterprisecomponent.com, ckestep@earthlink.net, mof2core-rtf@omg.org, ontology@omg.org, pete.rivett@adaptive.com Subject RE: Multiple classifiers for an instance in MOF and RDF as defined in ODM Excuse me, but this is not only about programming and run-time languages. We are now trying to also model the business (see SBVR and BMM) and we are told that we have to use UML. Well, UML and MOF are going to have to be fixed to enable support for business modeling. Jim Amsden wrote: I suspect this is not applicable for MOF for the practical reason that it is not supported by any common programming language or runtime platform. I still think we need to understand the original requirements and see if there are other ways to model them that don't introduce this requirement into MOF. "Conrad Bock" 03/23/2006 03:06 PM Please respond to To "'Branislav Selic'" cc , , "'LONJON Antoine'" , , , , , Subject RE: Mult! iple classifiers for an instance in MOF and RDF as defined in ODM > > > However, I can understand why this may not be suitable for > > > MOF, in which case, the MOF should tighten the multiplicity > > > on types for InstanceSpecifications. (In fact, when you > > > think about it, MOF could be defined as a profile of UML.) > > > > Why is it not suitable for MOF? > > I have no clue -- I thought that this is what the MOF > experts had agreed on. Copying the MOF RTF. The issue is logged at: http://www.omg.org/issues/mof2core-rtf.open.html#Issue9466 Conrad -------------------------------------------------------------------------------- Yahoo! Messenger with Voice. Make PC-to-Phone Calls to the US (and 30+ countries) for 2¢/min or less. Reply-To: From: "Conrad Bock" To: "'Pete Rivett'" , Cc: , "'LONJON Antoine'" , , , "'Jim Amsden'" , "'Allan Kolber'" , "'Branislav Selic'" , , , "'Elisa F. Kendall'" Subject: RE: [mof2core-rtf] Issue 9466 (was: Multiple classifiers for an instance in MOF and RDF as defined in ODM) Date: Sun, 26 Mar 2006 09:52:55 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-index: AcZPgfSBFIYG754TSJS2XLf4mfuyoQAix4PwADWg0sA= Hi Pete, Welcome back. Figured you could clear this up! > Even without these impacts it is non-trivial to specify - for example > one would need reflective operations to add/remove classes from an > instance, and some means of resolving property name clashes > etc. Though I agree with Cory that this is not uncharted territory. See the UML action model. (BTW, at some point the MOF operations on instances and the UML action model should be aligned) > e) For reasons b) and d) I strongly believe that changes to > address this issue go well beyond the scope of an RTF. So I > would recommend that it be closed as Deferred. My understanding is the RTF can decide what is in its scope, as long the others needing to approve the report also agree. > g) So one approach could be to create an RFP for a further > (I know) level of MOF which I christened SMOF. As well as > the multiple classification issue there are other, more > minor structural issues that make MOF harder to use than it > need be for representing semantic models. As with any RFP > the responses can make changes to existing specification(s) > as would be needed per d) above. I had no response to this > when I suggested it a couple of months ago - does this lack > of interest in the outcome, lack of inclination to work on > it, or that my message did not reach the right people? An RFP seems very heavy for this. It's been noted in the UML RTF's that the OMG procedures have quite a gap between RTF and RFP-level changes, which leaves these intermediate changes without an efficient process. But, as I said implied above, the RTF has good reasons to take this issue in its scope. > h) In the meantime an approach for the ODM submitters might > be to keep the 'pure' model (which requires multiple > classification) as a (non-normative) PIM and treat the > 'kludged' metamodel as a PIM for the MOF 2.0 platform. I'd suggest the reverse, actually. :) Conrad Date: Mon, 27 Mar 2006 10:41:59 -0500 From: Ed Barkmeyer Reply-To: edbark@nist.gov Organization: NIST User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.2) Gecko/20040804 Netscape/7.2 (ax) X-Accept-Language: en, fr, de, pdf, it, nl, sv, es, ru To: Pete Rivett CC: mof2core-rtf@omg.org Subject: Re: [mof2core-rtf] Issue 9466 (was: Multiple classifiers for an instance in MOF and RDF as defined in ODM) Pete Rivett wrote: a) I agree that it's a genuine requirement - I have run into many real world situations where this sort of capability would be needed: ... I agree that multiple classification occurs in the real world. Whether supporting it is a *requirement for MOF* is a separate question. b) For right or wrong it's a deliberate design decision in current MOF that is quite pervasive as an assumption ... That was my impression as well. It seems to me that the whole idea of reflection depends on there being a canonical classification. Languages in which "what are you?" returns a list inevitably suffer from problems: (a) multiple classification occurs at the instance level, not the class level! That breaks a lot of implementation paradigms. (b) the mechanisms for maintaining the correctness of the list at each instance are inadequate in distributed systems environments and other environments of reuse. In particular, classifiers that represent "roles" are hard to maintain. (c) multiple simultaneous classifications often create namespace problems for consistent reference between client and server. (d) clients often expect simple classification and are miscoded to look at only the first result in the list; other clients are confused by finding entries in the list that the client doesn't understand. My experience is that "reflection" in multiple classification environments is better implemented by "are you a ", with the possible answers: Yes, No, and IDontKnow. c) However there is no fundamental reason why MOF could not be enhanced to support this requirement: I disagree with Jim on this point I suppose that depends on how you define "fundamental". It is possible that the 'deliberate design decision' was just "thinking in Java", but I suspect that a number of target implementation behaviors might be compromised by the generalization to multiple simultaneous classification. It has never been clear to me exactly what the MOF design goals were (and how many of them still are), so I cannot speak with any assurance on this point. d) This is by no means a minor change ... Strongly agree. e) For reasons b) and d) I strongly believe that changes to address this issue go well beyond the scope of an RTF. So I would recommend that it be closed as Deferred. Strongly agree. -Ed -- Edward J. Barkmeyer Email: edbark@nist.gov National Institute of Standards & Technology Manufacturing Systems Integration Division 100 Bureau Drive, Stop 8263 Tel: +1 301-975-3528 Gaithersburg, MD 20899-8263 FAX: +1 301-975-4482 "The opinions expressed above do not reflect consensus of NIST, and have not been reviewed by any Government authority." From: "Cory Casanave" To: , "'Pete Rivett'" Cc: Subject: RE: [mof2core-rtf] Issue 9466 (was: Multiple classifiers for an instance in MOF and RDF as defined in ODM) Date: Mon, 27 Mar 2006 11:05:26 -0500 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcZRtQWCepkC801cTGu3sFWp98sYwAAAH58g X-OriginalArrivalTime: 27 Mar 2006 16:06:08.0698 (UTC) FILETIME=[5C0F59A0:01C651B8] Ed, This is more of a "how to" thought with regard to the issues you raise. This is, of course, not the only way to do this - but it suggests an approach that doesn't have the problems or impact you suggest. If we consider each classification of an object a view of that object, we can also consider that what we define in our UML model is ALWAYS a view (or aspect or classification - depending on you lingo). At runtime we can map such a view to a MOF instance - this MOF view instance corresponds to the MOF instances we have now. The question then becomes, how does this relate to other views of the same instance? How do we manage other views of the same thing? Given 3 operations; * Get another view * Add a view to an existing one * Enumerate views We have all the runtime support we need. Since these are "normal" MOF instances, they should federate as well as any existing MOF. The harder part is that the underlying machinery would have to keep all the views in sync, so that supertype features are replicated between the views. The same pattern holds for XMI, they can "look" like separate instances but will share something in common. To keep XMI consistent, the MOF-ID can be the ID of the view. What is then required is a new property that relates a view to the unifying ID (perhaps the ID if the first view, even if it becomes deleted) - this will support the operation to get another view and enumerate views. What this does semantically is create a "same as" relation on "Object" that can then be used to deal with the other views as language Java classes. As for the political question of how to do a "mid size" change, this is a common problem - perhaps a change to P&P should be made, that would allow an RTF to propose such a change and it would go directly to AB/TF/TC vote? -Cory > -----Original Message----- > From: Ed Barkmeyer [mailto:edbark@nist.gov] > Sent: Monday, March 27, 2006 10:42 AM > To: Pete Rivett > Cc: mof2core-rtf@omg.org > Subject: Re: [mof2core-rtf] Issue 9466 (was: Multiple classifiers for an > instance in MOF and RDF as defined in ODM) > > Pete Rivett wrote: > > > a) I agree that it's a genuine requirement - > > I have run into many real world situations where this sort of > > capability would be needed: ... > > I agree that multiple classification occurs in the real world. > Whether supporting it is a *requirement for MOF* is a separate question. > > > b) For right or wrong it's a deliberate design decision in current > > MOF that is quite pervasive as an assumption ... > > That was my impression as well. > > It seems to me that the whole idea of reflection depends on there being a > canonical classification. Languages in which "what are you?" returns a > list > inevitably suffer from problems: > (a) multiple classification occurs at the instance level, not the class > level! That breaks a lot of implementation paradigms. > (b) the mechanisms for maintaining the correctness of the list at each > instance are inadequate in distributed systems environments and other > environments of reuse. In particular, classifiers that represent "roles" > are > hard to maintain. > (c) multiple simultaneous classifications often create namespace > problems > for consistent reference between client and server. > (d) clients often expect simple classification and are miscoded to look > at > only the first result in the list; other clients are confused by finding > entries in the list that the client doesn't understand. > > My experience is that "reflection" in multiple classification environments > is > better implemented by "are you a ", with the possible answers: Yes, > No, > and IDontKnow. > > > c) However there is no fundamental reason why MOF could not be > > enhanced to support this requirement: I disagree with Jim on this point > > I suppose that depends on how you define "fundamental". > It is possible that the 'deliberate design decision' was just "thinking in > Java", but I suspect that a number of target implementation behaviors > might be > compromised by the generalization to multiple simultaneous classification. > It > has never been clear to me exactly what the MOF design goals were (and how > many of them still are), so I cannot speak with any assurance on this > point. > > > d) This is by no means a minor change ... > > Strongly agree. > > > e) For reasons b) and d) I strongly believe that changes to address this > > issue go well beyond the scope of an RTF. So I would recommend that it > > be closed as Deferred. > > Strongly agree. > > -Ed > > -- > Edward J. Barkmeyer Email: edbark@nist.gov > National Institute of Standards & Technology > Manufacturing Systems Integration Division > 100 Bureau Drive, Stop 8263 Tel: +1 301-975-3528 > Gaithersburg, MD 20899-8263 FAX: +1 301-975-4482 > > "The opinions expressed above do not reflect consensus of NIST, > and have not been reviewed by any Government authority." Date: Mon, 27 Mar 2006 11:27:50 -0500 From: Ed Barkmeyer Reply-To: edbark@nist.gov Organization: NIST User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.2) Gecko/20040804 Netscape/7.2 (ax) X-Accept-Language: en, fr, de, pdf, it, nl, sv, es, ru To: conrad.bock@nist.gov CC: mof2core-rtf@omg.org Subject: Re: [mof2core-rtf] Issue 9466 (was: Multiple classifiers for an instance in MOF and RDF as defined in ODM) Conrad Bock wrote: An RFP seems very heavy for this. It's been noted in the UML RTF's that the OMG procedures have quite a gap between RTF and RFP-level changes, which leaves these intermediate changes without an efficient process. But, as I said implied above, the RTF has good reasons to take this issue in its scope. I would have been willing to let the MOF2 *Finalization* Task Force take this under advisement, because the scope of an FTF is muddier, and the principal implementors are in a position to relate its consequences to their products and prevent heavy duty changes that disrupt their product plans. But I think the AB would be very remiss in giving a *Revision* Task Force this kind of latitude. As Pete says, the impact of this design change is thoroughgoing -- IMO, it effectively redefines reflection in the MOF. I would not be surprised to find that this change would render most existing and planned MOF2 implementations non-conforming and make most of them difficult to fix. And that kind of consequence would make this a very heavyweight change indeed. > h) In the meantime an approach for the ODM submitters might > be to keep the 'pure' model (which requires multiple > classification) as a (non-normative) PIM and treat the > 'kludged' metamodel as a PIM for the MOF 2.0 platform. I'd suggest the reverse, actually. :) ??? "This does not compute." -Ed P.S. The limitation on RTFs is to prevent a majority of users and later implementors from wrecking the interior architecture of an existing product by a significant change to the conformance requirements. It is what protects you when your Veto power lapses. And that is part of why OMG is worth what you pay to play. -- Edward J. Barkmeyer Email: edbark@nist.gov National Institute of Standards & Technology Manufacturing Systems Integration Division 100 Bureau Drive, Stop 8263 Tel: +1 301-975-3528 Gaithersburg, MD 20899-8263 FAX: +1 301-975-4482 "The opinions expressed above do not reflect consensus of NIST, and have not been reviewed by any Government authority." Reply-To: From: "Larry L. Johnson" To: "'Cory Casanave'" , , "'Pete Rivett'" Cc: Subject: RE: [mof2core-rtf] Issue 9466 (was: Multiple classifiers for an instance in MOF and RDF as defined in ODM) Date: Mon, 27 Mar 2006 11:39:49 -0500 X-Mailer: Microsoft Outlook, Build 10.0.6626 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - capricorn.lunarpages.com X-AntiAbuse: Original Domain - omg.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - TethersEnd.com X-Source: X-Source-Args: X-Source-Dir: X-MIME-Autoconverted: from quoted-printable to 8bit by amethyst.omg.org id k2RGUpM8030493 This pattern is very similar to what we used in the ill-fated PDM Enablers V2.0. The "views" here are similar (if not identical from a pattern point of view) to what we called "profiles". We used these profiles to allow different ornamentation of objects with various attribute sets, but I see no reason why it couldn't apply to classifiers... essentially implementing a "colored graph" approach to the classification relationships. LJ -----Original Message----- From: Cory Casanave [mailto:cbc@enterprisecomponent.com] Sent: Monday, March 27, 2006 11:05 AM To: edbark@nist.gov; 'Pete Rivett' Cc: mof2core-rtf@omg.org Subject: RE: [mof2core-rtf] Issue 9466 (was: Multiple classifiers for an instance in MOF and RDF as defined in ODM) <... snip ...> The question then becomes, how does this relate to other views of the same instance? How do we manage other views of the same thing? Given 3 operations; * Get another view * Add a view to an existing one * Enumerate views Subject: RE: [mof2core-rtf] Issue 9466 (was: Multiple classifiers for an instance in MOF and RDF as defined in ODM) Date: Mon, 27 Mar 2006 12:44:02 -0800 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: [mof2core-rtf] Issue 9466 (was: Multiple classifiers for an instance in MOF and RDF as defined in ODM) thread-index: AcZRu2cWidEffPgBSfWG62pnyekHWAAIjZjg From: "Pete Rivett" To: , Cc: X-MIME-Autoconverted: from quoted-printable to 8bit by amethyst.omg.org id k2RKYDoN002399 My reasons for suggesting it's not-RTF were related to scope and the fact that this represents a significant enhancement: not so much that it would cause the 'breakage' that Ed discusses. This is because I would expect this to be an additional level of compliance (SMOF) and so not break/render non-compliant existing implementations compliant to CMOF or EMOF. However as Ed points out it may be non-trivial to bring some of these tools up to compliance with the new level. Pete > -----Original Message----- > From: Ed Barkmeyer [mailto:edbark@nist.gov] > Sent: Monday, March 27, 2006 11:28 AM > To: conrad.bock@nist.gov > Cc: mof2core-rtf@omg.org > Subject: Re: [mof2core-rtf] Issue 9466 (was: Multiple > classifiers for an instance in MOF and RDF as defined in ODM) > > Conrad Bock wrote: > > > An RFP seems very heavy for this. It's been noted in the > UML RTF's that > > the OMG procedures have quite a gap between RTF and > RFP-level changes, > > which leaves these intermediate changes without an > efficient process. > > But, as I said implied above, the RTF has good reasons to take this > > issue in its scope. > > I would have been willing to let the MOF2 *Finalization* Task > Force take this > under advisement, because the scope of an FTF is muddier, and > the principal > implementors are in a position to relate its consequences to > their products > and prevent heavy duty changes that disrupt their product plans. > > But I think the AB would be very remiss in giving a > *Revision* Task Force this > kind of latitude. As Pete says, the impact of this design change is > thoroughgoing -- IMO, it effectively redefines reflection in > the MOF. I would > not be surprised to find that this change would render most > existing and > planned MOF2 implementations non-conforming and make most of > them difficult to > fix. And that kind of consequence would make this a very > heavyweight change > indeed. > > > > h) In the meantime an approach for the ODM submitters might > > > be to keep the 'pure' model (which requires multiple > > > classification) as a (non-normative) PIM and treat the > > > 'kludged' metamodel as a PIM for the MOF 2.0 platform. > > > > I'd suggest the reverse, actually. :) > > ??? "This does not compute." > > -Ed > > P.S. The limitation on RTFs is to prevent a majority of > users and later > implementors from wrecking the interior architecture of an > existing product by > a significant change to the conformance requirements. It is > what protects you > when your Veto power lapses. And that is part of why OMG is > worth what you > pay to play. > > -- > Edward J. Barkmeyer Email: edbark@nist.gov > National Institute of Standards & Technology > Manufacturing Systems Integration Division > 100 Bureau Drive, Stop 8263 Tel: +1 301-975-3528 > Gaithersburg, MD 20899-8263 FAX: +1 301-975-4482 > > "The opinions expressed above do not reflect consensus of NIST, > and have not been reviewed by any Government authority." Reply-To: From: "Conrad Bock" To: "'Pete Rivett'" Cc: , Subject: RE: [mof2core-rtf] Issue 9466 (was: Multiple classifiers for an instance in MOF and RDF as defined in ODM) Date: Sat, 22 Apr 2006 17:16:18 -0400 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcZRu2cWidEffPgBSfWG62pnyekHWAAIjZjgBRGRaPA= Pete, Wanted to point out the multiple classification issue is not just for semantic applications, but for any large metamodel. For example, we've run across a need for it in BPDM, and it would have been very beneficial in the UML 2 metamodel, which was forced to use inheritance in less than desirable ways to combine capabilities from separate classes. It would have been simpler to define modular capabilities that could be combined as needed in user models or libraries, rather than hardwire these combinations in the metamodel using inheritance. Without multiple classification (or a construct with similar effect, like interfaces), MOF doesn't curently scale to large metamodels. I would take the "S" in SMOF to mean "scalable". Date: Fri, 28 Apr 2006 16:21:46 -0400 From: Ed Barkmeyer Reply-To: edbark@nist.gov Organization: NIST User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.2) Gecko/20040804 Netscape/7.2 (ax) X-Accept-Language: en, fr, de, pdf, it, nl, sv, es, ru To: mof2core-rtf@omg.org CC: ontology@omg.org, OMG ADPTF Subject: Re: [mof2core-rtf] Issue 9466 X-MailScanner-Information: Please contact postmaster@mel.nist.gov for more information X-MailScanner: Found to be clean X-MailScanner-SpamCheck: X-MailScanner-From: edbark@nist.gov X-Spam-Status: No Conrad Bock wrote: Wanted to point out the multiple classification issue is not just for semantic applications, but for any large metamodel. For example, we've run across a need for it in BPDM, and it would have been very beneficial in the UML 2 metamodel, which was forced to use inheritance in less than desirable ways to combine capabilities from separate classes. It would have been simpler to define modular capabilities that could be combined as needed in user models or libraries, rather than hardwire these combinations in the metamodel using inheritance. Without multiple classification (or a construct with similar effect, like interfaces), MOF doesn't curently scale to large metamodels. I would take the "S" in SMOF to mean "scalable". At the OMG meeting on Wedneday and Thursday of this week, we agreed that the ramifications of supporting multiple classification in MOF are beyond the scope of an RTF. Pete Rivett presented a draft SMOF RFP on Wednesday, and is accepting comments on what should be included/mentioned. The scope so far is - multiple static classification of individuals - possibly "dynamic typing" or "dynamic subtyping" = runtime additions or subtractions to the list of classifications of a modeled individual - possibly "choice supertypes" = classifiers defined to be the union of the extents of a set of previously specified classifiers (e.g., imported classifiers). (The purpose of choice-types is to make instances of all of those classes eligible participants in certain modeled association roles, but the effect is "late Generalization".) The intent is to issue an RFP for SMOF with very limited scope, in order to shorten the time to issue and the time to respond, and thus the time to provide a viable solution to various metamodeling teams. The target for issuance is June. So if you care, now would be the time to participate. -Ed -- Edward J. Barkmeyer Email: edbark@nist.gov National Institute of Standards & Technology Manufacturing Systems Integration Division 100 Bureau Drive, Stop 8263 Tel: +1 301-975-3528 Gaithersburg, MD 20899-8263 FAX: +1 301-975-4482 "The opinions expressed above do not reflect consensus of NIST,