Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

#2707 INSTANCENAME ignores KEYVALUE and VALUE.REFERENCE children

Code_Cleanup
closed-fixed
Dave Blaschke
jsr48-client
5
2013-12-13
2013-11-12
Dave Blaschke
No

Both the DOM parser's parseINSTANCENAME and SAX parser's InstanceNameNode ignore any KEYVALUE and VALUE.REFERENCE children, meaning they only recognize any KEYBINDING children:

<!ELEMENT INSTANCENAME (KEYBINDING* | KEYVALUE? | VALUE.REFERENCE?)>
<!ATTLIST INSTANCENAME
    %ClassName;
>
1 Attachments

Discussion

  • Dave Blaschke
    Dave Blaschke
    2013-11-12

    • labels: --> Java Client (JSR48)
    • assigned_to: Dave Blaschke
    • Component: none --> jsr48-client
     
  • Dave Blaschke
    Dave Blaschke
    2013-11-12

    The following issue has been raised with the JSR48 chair:

    Section 5.2.4.10 of DSP0201 states "If the class has a single key property, a single KEYVALUE or VALUE.REFERENCE subelement may be used to describe the (necessarily) unique key value without a key name." However, in JSR48 CIMProperty is a child of CIMElement so a non-null name is required. Awaiting answers to the following:

    "From a JSR48 perspective, KEYVALUE and VALUE.REFERENCE become a CIMProperty, and because CIMProperty is a child of CIMElement the name cannot be null. Now, the name can be the empty string (at least the TCK would lead me to believe this from ElementTest.testConstructor_02), but is that what should be done here? Should we come up with a constant for this (i..e. ANONYMOUS_KEY)?"

     
  • Dave Blaschke
    Dave Blaschke
    2013-11-12

    The JSR48 chair included this in his response:

    "The history for this is that Microsoft put it in the original specification as an optimization, but since they never supported CIM-XML, not sure anyone else ever really supported it…"

    So since it was supported at one point, and no one has complained about the JCC supporting it incorrectly, the best remedy is to probably create the CIMProperty with name="" and use it in the CIMObjectPath (right now it creates a CIMObjectPath with no keys).

     
  • Dave Blaschke
    Dave Blaschke
    2013-11-12

    • status: open --> open-fixed
     
  • Dave Blaschke
    Dave Blaschke
    2013-11-12

    Patch sent for community review. During a 2 week period any exploiter may comment on the patch, request changes or turn it down completely (with good reason). For the time being the patch is part of the "Experimental" branch in CVS.

     
  • Dave Blaschke
    Dave Blaschke
    2013-11-26

    • status: open-fixed --> pending-fixed
     
  • Dave Blaschke
    Dave Blaschke
    2013-11-26

    The community review is completed and we received no substantial criticism. Therefore the patch has been approved and merged into the "HEAD" branch. The next release will pick it up.

     
  • Dave Blaschke
    Dave Blaschke
    2013-12-13

    • status: pending-fixed --> closed-fixed
     
  • Dave Blaschke
    Dave Blaschke
    2013-12-13

    The patch was picked up by release 2.2.5 and will be closed.