This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
The following is currently true in MEX: 1.) Metadata dialects/types are not required to define a "identifier". For example, there could be a dialect/type of {http://www.example.org}foo (to use the new serialization) that does not define an "identifier"; there is no single element or attribute value in a "foo" document that makes any different from any other "foo" document. 2.) @Identifier is an optional attribute of mex:PutMetadata/mex:Metadata/mex:MetadataSection. 3.) Services that implement MEX are not required to understand all the metadata dialects/types that they are asked to manage. So what happens a client does a PutMetadata with one or more MetadataSections that have no @Identifier (whether this is because the contained metadata does not define an identifier or the client simply decided to omit the @Identifier, the service can't tell - see (3)), then someone else comes along and does a GetMetadata with @Dialect="{http://www.example.org}foo" and @Identifier="http://www.w3.org/2002/ws/ra/test/scenario"? Do hunks of metatdata that were Put with no identifier match against all identifier queries or none? There are use cases to support either answer to that question.
Proposal: - make @Identifier a required attribute of mex:MetadataSection - if a metadata type does not have any useful data to use as the @Identifier value then it MUST use "" for the value - keep @Identifier optional on the mex:GetMetadata operation - mex:GetMetadata w/o @Identifier (not "") means match ALL @Identifiers
directional agreement on comment 1 with the second bullet needing work
Created attachment 963 [details] concrete proposal
resolved as proposed in comment 3