-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Possible bug in MOF 3.0.1 spec for complexValue using INSTANCE OF #26
Comments
Posted to the DMTF Feedback form on 14/01/2019: Hi, I think I've found a small problem with the MOF 3.0.1 spec here: https://www.dmtf.org/sites/default/files/standards/documents/DSP0221_3.0.1.pdf In the examples section "D.20 JohnDoe.mof" in Annex D there's a sample MOF file which contains the following:
However, the MOF spec was changed between version 3.0.0 and 3.0.1 and I don't think the "instance of" is strictly valid anymore as a "propertyValue" according to the spec: From DSP0221 3.0.0:
From DSP0221 3.0.1:
Some possible fixes are:
I hope this helps. Cheers, Mike |
Response from DMTF taskforce a year ago (forgot to post it before!): From: Michael [redacted] <[redacted]@yahoo.com> Mike, I have reviewed your submissions and I believe you are correct. I also had However, DSP0221 is the MOF spec for CIM Version 3. To our knowledge, there Note that work on CIM Version 3 has stopped. The only CIM Schema we publish Michael [redacted] Reply: From: Mike Clayton [email protected] Hi Michael, Thanks for the review of the submissions, and for the additional background about DSP0221. For what it's worth, DSP0221 seems like a much more detailed and comprehensive description of the MOF format than in DSP0004 (notwithstanding the differences in the actual spec) - it'd be great to see the structure and detail of DSP0221 retro-fitted back into DSP0004 at some point in the future (or maybe split out of DSP0004 as an auxiliary document for CIMV2). Incidentally, if you ever need a reference implementation of a strict parser for the (now deprecated) MOF 3.0.1 spec I've been spending quite a lot of time on this GitHub project which is how I found the issues with DSP0221 v 3.0.1 in the first place... https://github.com/KingslandConsulting/Kingsland.MofParser It's got some backward compatibility options for CIMV2 so it's not totally dead in the water now, but based on what you've said about DSP0221 it looks like I might need to do a bit of work to get it strictly compatible with DSP0004 :-). Thanks again, Mike I'll leave this ticket open to flag up the issues with the spec, but it doesn't look like it'll be fixed any time soon... |
The MOF Spec 3.0.0 defines a rule for complexValue as follows:
A.1 Value definitions
which changed to the following in the MOF Spec 3.0.1:
7.5.9 Complex type value
Both versions of the spec have an example MOF JohnDoe.mof as follows:
E.20 JohnDoe.mof / D.20 JohnDoe.mof
Note that LastPaymentDate uses
instance of GOLF_Date
, and MemberAddress usesvalue of GOLF_Address
.Both
instance of
andvalue of
are valid in MOF Spec 3.0.0 (complexValue = ( INSTANCE / VALUE ) OF ...
, but onlyvalue of
is valid in the MOF Spec 3.0.1 (complexValue = aliasIdentifier / VALUE OF ...
).Either the JohnDoe.mof sample is wrong in the MOF 3.0.1 spec and LastPaymentDate should use
value of
(or analiasIdentifier
instead), or the definition ofcomplexValue
needs to allowinstance of
.Choices are:
Implement the MOF 3.0.1 spec as-is and potentially be incompatible with MOF files that use
instance of
in property valuesAllow
instance of
in property values, but potentially parse MOF files that don't adhere to the strict standardImplement a ParserQuirks class that lets us define the behaviour of this (and other quirks) at runtime
The text was updated successfully, but these errors were encountered: