Subject: Re: Example for RS Section 8.2.9 (Registry Filters)
Len, group, I know I submitted a revised DTD for the Clause syntax that did indeed have updates for Equal/NotEqual on strings. So, what ever it takes, YES ! it needs to get in there.....! I currently do not think we should impose cononicalization rules for string processing.......... Scott Hinkelman, Senior Software Engineer XML Industry Enablement IBM e-business Standards Strategy 512-823-8097 (TL 793-8097) (Cell: 512-940-0519) srh@us.ibm.com, Fax: 512-838-1074 Len Gallagher <LGallagher@nist.gov> on 04/05/2001 10:13:50 AM To: ebxml-regrep@lists.ebxml.org cc: Subject: Example for RS Section 8.2.9 (Registry Filters) ebXML regrep, Special note to Scott Hinkelman -- please advise the group on the two problems below! Several readers of the Registry Services version 0.88 document have commented that the document does not have complete examples showing the integration of FilterQuery with the Clause syntax for constraints defined in Section 8.2.10. Such integration is not always desirable, since its size and complexity might detract from the main purpose of the examples, but I agree that at least one integrated example is desirable. The following example is taken from Section 8.2.2 (RegistryEntryQuery). <RegistryEntryQuery> <RegistryEntryFilter> objectType EQ "CPP" AND -- code by Clause, Section 8.2.10 status EQ "Approved" </RegistryEntryFilter> </RegistryEntryQuery> The intent of the "-- code by Clause" comment above is to indicate that the example is NOT complete and that the AND expression should be encoded in the XML Clause syntax specified in Section 8.2.10. Section 8.2.9 (Registry Filters) is the section that integrates the FilterQuery approach with the Clause syntax. Right now that Section has no examples. I propose that we add one example to that section, to expand the above example, thereby showing its integration with Clause syntax. PROPOSAL Add the following as an example in Section 8.2.9 <RegistryEntryQuery> <RegistryEntryFilter> <Clause> <CompoundClause connectivePredicate="And" > <Clause> <SimpleClause leftArgument="objectType" > <StringClause stringPredicate="???" > CPP </StringClause> </SimpleClause> </Clause> <Clause> <SimpleClause leftArgument="status" > <StringClause stringPredicate="???" > Approved </StringClause> </SimpleClause> </Clause> </CompoundClause> </Clause> </RegistryEntryFilter> </RegistryEntryQuery> Unfortunately, I just noticed two problems while attempting to do this example! PROBLEM #1 Note that there is no "stringPredicate" defined for string equality!! Is this a simple omission or is it an explicit decision? Should we add "equals" or "EQ" as another alternative to the attribute list for StringClause? I prefer "EQ" and "NE" to be consistent with the operators for numbers. If so, the new definition for StringClause would be <!ELEMENT StringClause ( #PCDATA )> <!ATTLIST StringClause stringPredicate (contains | -contains | startswith | -startswith | endswith | -endswith | EQ | NE ) #REQUIRED > PROMLEM #2 In the above example it's not clear if the carriage returns and blank spaces before and after the #PCDATA for "CPP" and "Approved" should be stripped off before testing for equality (or contains if equality is not supported!). We need to decide this, or modify the XML to make these terms attributes, before publication. Removing these carriage returns and blank spaces makes the example more difficult to read by a human. Note that many of the examples in Section 8.2.10 raise this same question. Regards, Len ************************************************************** Len Gallagher LGallagher@nist.gov NIST Work: 301-975-3251 Bldg 820 Room 562 Home: 301-424-1928 Gaithersburg, MD 20899-8970 USA Fax: 301-948-6213 ************************************************************** ------------------------------------------------------------------ To unsubscribe from this elist send a message with the single word "unsubscribe" in the body to: ebxml-regrep-request@lists.ebxml.org
Powered by
eList eXpress LLC