Minutes from XML Schema Patterns for Databinding F2F 22-23 May 2006

Draft minutes from our F2F meeting are now available here:


Text is copied below for tracker's searching:

XML Schema Patterns for Databinding WG F2F

22nd-23rd May 2006

Origo Services, Edinburgh, Scotland, UK



          Jon Calladine (BT)
          George Cowe (Origo)
          Paul Downey (BT)
          Otu Ekanem (BT)
          Paul Fremantle (WSO2) (Tues)
          Yves Lafon (W3C)

   Observers Present for part of meeting:
          Mark Seaborne (Origo)




     * [3]Monday
         1. [4]Administrivia
         2. [5]Action Item Review
         3. [6]How We Work
         4. [7]Issues List Review
         5. [8]Origo XForms Demonstration
         6. [9]Test Suite
         1. [11]Echo Services
         2. [12]Tasks
         3. [13]Detection of Patterns
         4. [14]Echo Services
         5. [15]WSO2 Tungsten Demonstration
         6. [16]Origo Patterns
         7. [17]Wrap-Up
     * [18]Summary of Action Items


   Chair: Given there are so few of us here and nobody
   participating remotely, scribing everything that is said is
   likely to become the primary focus of our attention. I want to
   have a more informal meeting to try and make progress. The
   minutes will therefore just capture any decisions we make.

   Minutes from 9-May approved

Action Item Review

   Chair: most of our action items surround practical testing of
   proposed patterns, most of which I've picked up or dumped on
     * [20]ACTION-10 [21]Propose text for ISSUE-8 - Using
       patterns to constrain numerical types Anthony Julian
     * [22]ACTION-19 [23]Build list of implementations Paul
     * [24]ACTION-21 [25]Report on code-first experiences with
       /all/ and toolkits Otu Ekanem
     * [26]ACTION-27 [27]evaluate xs:default in toolkits for
       ISSUE-13/ISSUE-14 Otu Ekanem
     * [28]ACTION-28 [29]investigate null patterns on tools for
       ISSUE-15 Paul Downey
     * [30]ACTION-31 [31]Test inline arrays with tools Otu Ekanem
     * [32]ACTION-32 [33]Investigate choice with tools Otu Ekanem
     * [34]ACTION-37 [35]Build test cases for ISSUE-10 Paul
     * [36]ACTION-38 [37]Produce a documentation pattern test
       case Paul Downey
     * [38]ACTION-39 [39]create testcase for ISSUE-47 Paul Downey

How We Work


   Discussion of the risk a Basic pattern may be moved to
   Advanced subject to CR testing leads to [41]ISSUE-61 being
   raised. General concern that there is always another toolkit.

   Proposal is to mark all Basic patterns as being 'at risk'.

   Design Considerations blur this boundary, If we use Design
   Considerations as warnings ([42]ISSUE-35) we'll need some way
   of detecting them in a submitted schema. This might not be
   possible with a schema or XPath statements.

   Why a submitted pattern wouldn't be included leads to
   [43]ISSUE-62 being raised

   Overall the WG has developed a good understanding of the
     * Basic Patterns is what works now, with toolkits with which
       the WG has direct experience. Primary audience is authors
       of Schemas.
     * Advanced Patterns will most likely come from industry
       schemas and are targeted at developers of databinding
     * Data Structures are buckets in which to group patterns,
       useful to those thinking in terms of databases and
       programming languages.

   Chair:I'm concerned at this point at the lack of patterns
   being submitted to the WG. Basic patterns may indeed be very

Issues List Review

   Chair: so far we've drilled into each Issue in turn, depth
   first. I'd like to take a breadth-first review to see if there
   is a way to make progress

   Open discussion on how we make progress - we've a large number
   of issues stalled on practical testing, no clear method of
   detecting patterns and our test suite is mostly missing.
   Finding a way of working, a "steel thread" will help us move

   [44]ISSUE-51 - detecting name clashes is a particular
   challenge for pattern detection, particularly if combined with

Origo XForms Demonstration

   We're joined by Mark Seaborne of Origo and the [45]XForms WG.
   Mark gives an excellent demonstration of an XForms application
   which may be used to validate an instance document against an
   Origo schema and business rules held as Schematron assertions.
   The generated XForms may also be used to interactively rectify
   faults in the input document.

   The WG had been considering how to detect patterns in an
   example schema, either using a schema for schemas or XPath
   assertions. Based on this work, XPath still looks promising
   for our purposes. Although very interesting, the WG doesn't
   see an application for the XForms interaction at present,
   though this could be layered once we have the rules defined.


   [46]Rules and Patterns 

   WG brainstorms on how to make progress. Our documents are a
   collection of patterns. Each pattern has:
     * a unique name
     * some rules (format TBA, possibly Schematron?)
     * one or more example Schemas
     * one or more example instance documents for an each Schema


   Yves: Dan Connolly voiced an idea that it would be useful to
   be able to identify data structures generated from XML Schema
   using URIs.

   WG moves towards transforming the pattern Id into a URI, e.g.:

   spec driven test cases
     * URI points to a directory containing example Schemas,
       WSDLs, instance documents indexed by RDDL document
     * each specification enumerates the contained patterns by
       the pattern URI
     * should simplify moving patterns between specifications
     * enables differencing of patterns contained in versions of
     * pattern description in XHTML specification is the
       normative version

Detection of Patterns

   For the detection of patterns - rules from spec compiled into
   a processor which generates list of pattern URIs contained in
   a schema.

   Conformance testing looks for schema which only contains

   detecting patterns

Echo Services

   To test a databinding toolkit against patterns each example
   schema may be wrapped into a WSDL containing an 'echo'
   operation. Sending the example instance SOAP document may then
   be deserialized and reserialized and the infosets compared by
   a generic client. It may be possible to generically generate
   an echo operation in some environments, e.g. using Java or C#

   echo service



    1. Template WSDL from XSDs wrapped into an 'echo' service
    2. Extract example schema documents (XSDs)from Specs
    3. Extract example XML instance documents (EGs) from Specs
    4. Wrap EGs into example SOAP 1.1 and SOAP 1.2 documents
    5. Write Schematron Assertion rules for patterns
    6. Write Schematron Report rules for Design Considerations
    7. Build Schematron Schemas from specifications
    8. Test XSDs/WSDLs/SOAPs with toolkits
    9. Write Patterns for issues not yet in our specs

   Work starts on building a "steel thread" using the [48]'all'
   example documents:
     * Yves picks up extraction from Specs into a URI directory.
     * George works on building rules.
     * Jon starts to build example Schemas and WSDLs by hand from
       our issues list.
     * Otu and PaulF try example WSDLs with various toolkits.
     * meanwhile Pauld thrashes between the groups :-)

   Yves generates [49]extract.xml which Pauld uses to generate
   [50]examplexsd.xsd, which George uses to test rules for
   pattern detection.

WSO2 Tungsten Demonstration

   Paul Fremantle demonstrates databinding under the WSO2
   [51]Tungsten product. Axis2 supports multiple Java databinding
   implementations, including:
     * Axis Data Binding (ADB)
     * XMLBeans
     * JibX
     * JaxMe

   WSO2 may be able to help build an example 'echo' testpoint for
   our patterns using their framework.

Origo Patterns

   George presents a set of patterns used within Origo schemas:

   This generates a number of issues:
     * [53]ISSUE-54 [54]Sequence of choice Pattern
     * [55]ISSUE-55 [56]simple abstract substitutionGroup pattern
     * [57]ISSUE-56 [58]simpleType string restricted with
       minLength and maxLength facets
     * [59]ISSUE-57 [60]xs:include pattern
     * [61]ISSUE-58 [62]anonymous complexType
     * [63]ISSUE-59 [64]attributeGroup pattern
     * [65]ISSUE-60 [66]collection with local attributes defined
       by reference


   To build upon the progress made during this meeting the
   Working Group arranges two days to work together on patterns,
   rules, test cases and practical testing 5-6th June. BT has a
   room in central London for the Monday, hookup via IRC and
   phone - no need for Zakim.

   We'll have our usual telcon to address Issues raised.
   Hopefully we'll have evidence to resolve a bunch of them.

   WG tries to arrange a F2F in June/July, which descends into a
   calendar conflict death match.

   Chair: I'll arrange a room in London, hosted by BT, last week
   in July, or first week in August.

   Chair: Special thanks to Origo Services for hosting and their
   great hospitality!


Summary of Action Items

   [NEW] [67]ACTION-40 ylafon to create an URI id document for
   each pattern for ISSUE-52
   [NEW] [68]ACTION-41 pdowney to organize informal workshop 6-7
   June in London
   [NEW] [69]ACTION-43 pdowney arrange F2F meeting in London end
   of July, early August

   [End of minutes]

    Minutes formatted by David Booth's [70]scribe.perl version
    1.127 ([71]CVS log)
    $Date: 2006/06/01 22:57:16 $


   1. http://www.w3.org/
   2. http://lists.w3.org/Archives/Public/public-xsd-databinding/2006May/0030.html
   3. http://www.w3.org/2002/ws/databinding/6/5/F2F-databinding-minutes.html#monday
   4. http://www.w3.org/2002/ws/databinding/6/5/F2F-databinding-minutes.html#admin
   5. http://www.w3.org/2002/ws/databinding/6/5/F2F-databinding-minutes.html#ai
   6. http://www.w3.org/2002/ws/databinding/6/5/F2F-databinding-minutes.html#working
   7. http://www.w3.org/2002/ws/databinding/6/5/F2F-databinding-minutes.html#issues
   8. http://www.w3.org/2002/ws/databinding/6/5/F2F-databinding-minutes.html#xforms
   9. http://www.w3.org/2002/ws/databinding/6/5/F2F-databinding-minutes.html#testsuite
  10. http://www.w3.org/2002/ws/databinding/6/5/F2F-databinding-minutes.html#tuesday
  11. http://www.w3.org/2002/ws/databinding/6/5/F2F-databinding-minutes.html#echo
  12. http://www.w3.org/2002/ws/databinding/6/5/F2F-databinding-minutes.html#tasks
  13. http://www.w3.org/2002/ws/databinding/6/5/F2F-databinding-minutes.html#detection
  14. http://www.w3.org/2002/ws/databinding/6/5/F2F-databinding-minutes.html#echo
  15. http://www.w3.org/2002/ws/databinding/6/5/F2F-databinding-minutes.html#tungsten
  16. http://www.w3.org/2002/ws/databinding/6/5/F2F-databinding-minutes.html#origo
  17. http://www.w3.org/2002/ws/databinding/6/5/F2F-databinding-minutes.html#wrapup
  18. http://www.w3.org/2002/ws/databinding/6/5/F2F-databinding-minutes.html#ActionSummary
  19. http://www.w3.org/2002/ws/databinding/6/5/09-databinding-minutes.html
  20. http://www.w3.org/2005/06/tracker/databinding/actions/10
  21. http://www.w3.org/2005/06/tracker/databinding/actions/10
  22. http://www.w3.org/2005/06/tracker/databinding/actions/19
  23. http://www.w3.org/2005/06/tracker/databinding/actions/19
  24. http://www.w3.org/2005/06/tracker/databinding/actions/21
  25. http://www.w3.org/2005/06/tracker/databinding/actions/21
  26. http://www.w3.org/2005/06/tracker/databinding/actions/27
  27. http://www.w3.org/2005/06/tracker/databinding/actions/27
  28. http://www.w3.org/2005/06/tracker/databinding/actions/28
  29. http://www.w3.org/2005/06/tracker/databinding/actions/28
  30. http://www.w3.org/2005/06/tracker/databinding/actions/31
  31. http://www.w3.org/2005/06/tracker/databinding/actions/31
  32. http://www.w3.org/2005/06/tracker/databinding/actions/32
  33. http://www.w3.org/2005/06/tracker/databinding/actions/32
  34. http://www.w3.org/2005/06/tracker/databinding/actions/37
  35. http://www.w3.org/2005/06/tracker/databinding/actions/37
  36. http://www.w3.org/2005/06/tracker/databinding/actions/38
  37. http://www.w3.org/2005/06/tracker/databinding/actions/38
  38. http://www.w3.org/2005/06/tracker/databinding/actions/39
  39. http://www.w3.org/2005/06/tracker/databinding/actions/39
  40. http://www.flickr.com/photos/psd/151481402/
  41. http://www.w3.org/2005/06/tracker/databinding/issues/61
  42. http://www.w3.org/2005/06/tracker/databinding/issues/35
  43. http://www.w3.org/2005/06/tracker/databinding/issues/52
  44. http://www.w3.org/2005/06/tracker/databinding/issues/51
  45. http://www.w3.org/MarkUp/Forms/
  46. http://www.flickr.com/photos/psd/152153893/
  47. http://www.flickr.com/photos/psd/152153699/
  48. http://www.w3.org/2002/ws/databinding/edcopy/testsuite/documents/all/
  49. http://www.w3.org/2002/ws/databinding/edcopy/basic/extract.xml
  50. http://www.w3.org/2002/ws/databinding/edcopy/basic/examplexsd.xsd
  51. http://www.wso2.com/products/tungsten
  52. http://lists.w3.org/Archives/Public/public-xsd-databinding/2006May/0046.html
  53. http://www.w3.org/2005/06/tracker/databinding/issues/54
  54. http://www.w3.org/2005/06/tracker/databinding/issues/54
  55. http://www.w3.org/2005/06/tracker/databinding/issues/55
  56. http://www.w3.org/2005/06/tracker/databinding/issues/55
  57. http://www.w3.org/2005/06/tracker/databinding/issues/56
  58. http://www.w3.org/2005/06/tracker/databinding/issues/56
  59. http://www.w3.org/2005/06/tracker/databinding/issues/57
  60. http://www.w3.org/2005/06/tracker/databinding/issues/57
  61. http://www.w3.org/2005/06/tracker/databinding/issues/58
  62. http://www.w3.org/2005/06/tracker/databinding/issues/58
  63. http://www.w3.org/2005/06/tracker/databinding/issues/59
  64. http://www.w3.org/2005/06/tracker/databinding/issues/59
  65. http://www.w3.org/2005/06/tracker/databinding/issues/60
  66. http://www.w3.org/2005/06/tracker/databinding/issues/60
  67. http://www.w3.org/2005/06/tracker/databinding/actions/40
  68. http://www.w3.org/2005/06/tracker/databinding/actions/41
  69. http://www.w3.org/2005/06/tracker/databinding/actions/43
  70. http://dev.w3.org/cvsweb/~checkout~/2002/scribe/scribedoc.htm
  71. http://dev.w3.org/cvsweb/2002/scribe/

Received on Thursday, 1 June 2006 23:11:50 UTC