Hi Rick,
All the below seems fine, especially abandoning dependencies from
optional parent classes, although that breaks AssociatedPrintSupply
maybe, which has one Mandatory parent (Marker) and one Optional
parent (Finisher). And anyway, it was John Crandall who wanted this
stronger parent/child typing in the cross-subunit associations. Huh?
If we abandon PrinterComponent for the Printer to subunit optional
associations, we should return to our last previous ConcreteComponent
(per Jon Hass?), rather than the top-level parent Dependency, right?
ConcreteComponent says:
"It is defined as a concrete subclass of the abstract "
"CIM_Component class, to be used in place of many specific "
"subclasses of Component that add no semantics, ..."
If we can withdraw some cross-subunit associations, it's OK by me.
Cheers,
- Ira
Ira McDonald (Musician / Software Architect)
Chair - Linux Foundation Open Printing WG
Blue Roof Music / High North Inc
PO Box 221 Grand Marais, MI 49839
phone: +1-906-494-2434
email: imcdonald at sharplabs.com
-----Original Message-----
From: Richard_Landau at Dell.com [mailto:Richard_Landau at Dell.com]
Sent: Monday, August 20, 2007 11:33 AM
To: McDonald, Ira; wims at pwg.org
Cc: blueroofmusic at gmail.com
Subject: RE: WIMS> CIM> Status of CRs in Core: passed. And new news.
Wow, I must have been more unclear than usual. I managed to confuse the issue completely. Sorry. Blame it on Friday. I was trying to suggest relaxing a number of associations, particularly CIM_PrinterComponent, but only in the places where it is currently used, not new locations.
The changes I am suggesting are these:
1. Add the MIN(1) cardinality to the subunit side of the CIM_PrinterComponent association.
2. Use this association only between CIM_Printer and the mandatory subunits of a Printer. Our class diagram already states exactly which of the subunits have minimum cardinality one: InputTray, OutputTray, MediaPath, Marker, Channel, and Interpreter.
(Note that AlertLog by convention uses a different association to Printer.) (Also note that, erroneously, I have PrinterSettingData marked as cardinality one, too; I will fix that. It also uses a different association by convention.)
3. For the other subunits, where the minimum cardinality is zero, relax the model's association between CIM_Printer and the subunit to CIM_Dependency. That is, use CIM_Dependency between CIM_Printer and the optional subunits: Interlock, Supply, Finisher, and ConsoleLight.
4. If in the future someone were to make another subunit mandatory that is currently optional, one could change the association between CIM_Printer and the subunit to CIM_PrinterComponent. Since CIM_Dependency is the parent class of CIM_PrinterComponent, this is a legal change in CIM : no semantics are lost and additional semantics are gained by using the subclass instead of the parent.
5. The two proposed associations between Finisher and MediaPath and OutputTray are currently trivial subclasses of CIM_Depencency. Relax the model's associations to CIM_Dependency, the parent class, since no semantic value is gained by trivially subclassing this class.
6. If we decide to to #5, then we can withdraw the CRs to create these two new associations before they get to TC for vote.
Boy, I hope that's clearer. Again, I apologize for the over-abbreviated and confusing message.
rick
_____
From: McDonald, Ira [mailto:imcdonald at sharplabs.com]
Sent: Sunday, August 19, 2007 12:34
To: Landau, Richard; wims at pwg.org
Subject: RE: WIMS> CIM> Status of CRs in Core: passed. And new news.
Hi Rick,
About this PrinterComponent usage - NONE of our association MOFs use
the PrinterComponent association - they ALL use CIM_Dependency (which
is correct CIM usage). Only the CIM_Printer to subunit association would be
affected. That is, CIM_AssociatedMediaPath has nothing to do with
PrinterComponent - it references PrinterElement (the data class) via
CIM_PrintMediaPath.
Choosing only the mandatory subunits is a slippery slope - it means that
a Printer MIB v3 can't make more subunits mandatory (which is indeed
plausible) and be easily reflected in the CIM model.
Cheers,
- Ira
Ira McDonald (Musician / Software Architect)
Chair - Linux Foundation Open Printing WG
Blue Roof Music / High North Inc
PO Box 221 Grand Marais, MI 49839
phone: +1-906-494-2434
email: imcdonald at sharplabs.com
-----Original Message-----
From: owner-wims at pwg.org [mailto:owner-wims at pwg.org]On Behalf Of Richard_Landau at Dell.com
Sent: Friday, August 17, 2007 5:34 PM
To: wims at pwg.org
Subject: WIMS> CIM> Status of CRs in Core: passed. And new news.
The two CRs that were balloted this week, AssociatedPrintOutputTray and AssociatedPrintMediaPath, will be forwarded to TC. Yay.
There was a question about cardinality. I conferred with Ira and responded that the relationships between Finisher and MediaPath (and OutputTray) are many-to-many, so cardinality need not be specified. I updated the two CRs with the issue and response, resubmitted them to DMTF, and reposted them to the WIMS-CIM FTP site.
Also, he (Crandall) did not understand that Finisher is optional while MediaPath and OutputTray are mandatory. We perhaps did not make that sufficiently explicit in the modeling, and he thinks we should. The Visio diagram is clear about cardinalities, but we should make it clearer in the association MOFs that some components are required and others are optional.
For example, we should add MIN(1) to the CIM_PrinterComponent association and then use that for only the mandatory subunits. For the optional subunits (Interlock, Finisher, ConsoleLight, Supply), we can use simply CIM_Component.
And he asked why we are doing these specific associations at all if they do not contain any additional semantics. He feels that we could use plain old CIM_Dependency (from which these two are subclassed) if there is no additional information: no new properties, no new cardinality restrictions. (Yes, eventually, we will learn all the rules.) If we wish, we can withdraw these anytime before they are voted on in TC; we have at least a week to decide. My thought: sure, why not. If we don't need more specific classes, let's not define them. I will be happy to redraw the class diagram.
rick
----------------------
Richard_Landau(at)dell(dot)com, Stds & System Mgt Architecture, CTO Office
+1-512-728-9023, One Dell Way, RR5-3, MS RR5-09, Round Rock, TX 78682
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.484 / Virus Database: 269.12.0/961 - Release Date: 8/19/2007 7:27 AM
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.484 / Virus Database: 269.12.1/962 - Release Date: 8/20/2007 1:08 PM
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.pwg.org/archives/wims/attachments/20070820/3ee69aae/attachment.html