W3C

Databinding WG F2F

13 Feb 2007

See also: IRC log

Attendees

Present
Jon Calladine (BT)
George Cowe (Origo Services Limited)
Paul Downey (BT)
Yves Lafon (W3C)
Priscilla Walmsley (W3C Invited Expert) (Tuesday, by phone)
Regrets
Vladislav Bezrukov (SAP AG)
Chair
pauld
Scribe
pauld

Contents


Administrivia

gcowe: would like to change the Siebel/Origo comment in the minutes

pauld: OK!

Test Suite

pauld: we need to publish our reports - patterns detected in schemas in the wild and interoperbility of patterns with toolkits.

yves: been working with XMLUnit. It's not perfect, but may be good enough.

pauld: we need a rollup to compare individual toolkits, need to fix log namespace for non-namespace schemas, but looks good!
... Plan is for Yves to work on the rollup, pauld will work on detecting patterns in the wild jon and george to battle with Java toolkits
... OK today we answer comments, rest of the meeting we work on the reports

BREAK

lc-erh-1 : typo "casue"

Jonc: actually a typeo in "Advanced"

pauld: i seem to have fixed it
... how do I work EXIT?
... Shoot me. Shoot me now!

RESOLUTION: close lc-erh-1 as accepted

lc-i18n-1 : BOM link to Unicode FAQ

pauld: do we have any tests for BOM?

<scribe> ACTION: pdowney to write BOM examples for the testsuite [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action01]

<trackbot> Created ACTION-104 - Write BOM examples for the testsuite [on Paul Downey - due 2007-02-20].

pauld: they want us to link to http://www.unicode.org/unicode/faq/utf_bom.html#BOM

paul: informative reference?

pauld: any objections?

<scribe> ACTION: pdowney to add informative reference for BOM link to Unicode FAQ [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action02]

<trackbot> Created ACTION-105 - Add informative reference for BOM link to Unicode FAQ [on Paul Downey - due 2007-02-20].

RESOLUTION: close lc-i18n-1 as accepted

lc-i18n-2 : Working with Time Zones

pauld: want to link to http://www.w3.org/TR/2005/NOTE-timezone-20051013/
... looks like goodness

<scribe> ACTION: pdowney to add reference to http://www.w3.org/TR/2005/NOTE-timezone-20051013/ [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action03]

<trackbot> Created ACTION-106 - Add reference to http://www.w3.org/TR/2005/NOTE-timezone-20051013/ [on Paul Downey - due 2007-02-20].

RESOLUTION: close lc-i18n-2 as accepted

lc-i18n-3: language type to reference BCP47

reference comes from XML Schema, our spec is all boilerplate here

<scribe> ACTION: pdowney to add reference to BCP47 [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action04]

<trackbot> Created ACTION-107 - Add reference to BCP47 [on Paul Downey - due 2007-02-20].

RESOLUTION: close lc-i18n-3 as accepted

lc-drkm-1: XPath 2.0 and node-set

pauld: used node-set but that's XPath 1.0
... Priscilla raised the same comment, and I trust both to be correct, however node-set is in common usage. Sequence implies order, but we don't care about order
... let's park this until Priscilla joins us

lc-psd-1: WS-I Basic Profile compliant schema import

pauld: this pattern should really be Basic, is this a significant change?

gcowe: I use this pattern quite a bit

pauld: only way you can import a schema and be BP compliant
... easy to write a constrained XPath for this commonly used pattern

any objections to adding this to Basic?

<scribe> ACTION: pdowney to add a Basic Pattern for BP compliant schema import [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action05]

RESOLUTION: close lc-psd-1 as accepted

lc-jmarsh-1: XPath Expressions Too Complex?

pauld: sounds a little like "too many notes, your royal highness" ;-)
.. it is a fair comment though, our XPaths are proforma, but gnarly.
.. Jonathan thinks XPath is complex, wonder how he'll like moving to the terminology as well
... I agree, in cases such as this we can simplify the expressions
.. @targetNamespace is not the same as .[@targetNamespace]/ (., @targetNamespace) since that returns two nodes

jonc: is he asking us not to use this style where not needed?

pauld: there are other XPaths which can be simplified

jonc: will review the XPaths to simplify

pauld: I quite like them all being the same style, would some introduction text help?
... but for this pattern, it is necessary to match xs:schema and targetNamesapce because we don't allow xs:schema without a targetNamespace!

<scribe> ACTION: jcalladi to review XPaths for unnecessary nodes being matched [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action06]

<trackbot> Created ACTION-108 - Review XPaths for unnecessary nodes being matched [on Jonathan Calladine - due 2007-02-20].

pauld: will reject this comment for @targetNamespace, but accept the thrust which is to simplify the patterns where possible

RESOLUTION: close c-jmarsh-1 as rejected

lc-jmarsh-2: Schema Version Attribute

pauld: how does it help with databinding?

jonc: assumption is we're encouraging it, we're just saying it's allowed

pauld: we allowed it because it's mostly harmless, tools can ignore it
... can we flag patterns as being noise

gcowe: would we leave it out or move it to Advanced?

jonc: but it's not Advanced under our criteria of doesn't fail with tools

<JonC> first do no harm....

RESOLUTION: close lc-jmarsh-2 as rejected, subject to tools working with the pattern

lc-jmarsh-3: Duplicate Listing

pauld: thinks the example is demonstrating two uses of annotation, should be split
... do we want an ElementDocumentationElement and a SchemaDocumentationElement, etc, etc?
... is there value in such fine-grained patterns?

gcowe: it's mostly ignored by tools anyway

pauld: we could go the other way and make the example have ComplexType/xs:annotation SimpleType/xs:annotation, etc to be clear, but then that would be difficult if we moved SimpleType to Advanced at some point

jonc: one pattern seems good enough

pauld: it's confusing, maybe we need another test case, but simplify the example in the spec
... we need to test it before splitting the pattern

<scribe> ACTION: gcowe: to split DocumentationElement example into more than one example / testcase [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action07]

<trackbot> Sorry, couldn't find user - gcowe:

<Yves> !rehash

RESOLUTION: accept lc-jmarsh-3

lc-jmarsh-4: Value of @mixed="false" etc

<JonC> I think we recognise the feeling here that it is the lack of problematic patterns that is of interest

<JonC> but it is not what the basic patterns document is really about

pauld: the pattern is Basic if tools swallow it without barfing
... is the @mixed!='true' really saying //@mixed!='true'

Jonc: it's a slippery slope

pauld: seen schemas which generate this and other defaults explicitly and interoperate

RESOLUTION: lc-jmarsh-4 rejected

pauld: this is a little like like ROOM 101

lc-jmarsh-5: Grouping of R2800 and R2112

pauld: puzzled - R2112 is something we allow, but BP doesn't whereas R2800 is vice-versa
... let's reject it and get Jonathan to explain why, he is a BP expert after all!

RESOLUTION: lc-jmarsh-5 rejected

lc-Microsoft-1: Support for Attributes

jonc: we're about what works with toolkits now, not what might be removed in the future

gcowe: we find attributes useful, certainly we don't want to move away from them

<JonC> also think that we have never been in the business of setting the bar so very low

pauld: I'd be sympathetic if there was a "state of the art" toolkit which didn't handle them.
... under our way of working, attributes are fine, but I think it's an interesting comment, and a warning things may be more constrained
... I'd like to be able to round-trip to and from JSON without a schema, and such a constraint would help greatly

<JonC> we have identified issues with attributes and marked as advanced this is the way forward not removing support for them entirely

pauld: our testing will help here
... nothing to stop Microsoft publishing their own "Very Basic" document using our patterns, or a few of them, anyway
... actually that's something we'd encourage, vendors being more explicit about which patterns are or are not supported

RESOLUTION: lc-Microsoft-1 rejected

lc-Microsoft-2: Element References

pauld: worries me because I use it to wrap example elements into the test suite WSDL

jonc: all our schemas contain them

pauld: I think it's a valid constraint though, and there are no natural equivalent in most modern programming languages (C pointers anyone?)
... well, not to a type, that is

<JonC> but what toolkit fails with them?

pauld: exactly, that's our criteria

discussion of mapping global elements to programming languages

if a sequence contains elements from a different namespace, what's the mapping to a C#/Java class?

pauld: .NET annotations cope with this, no?
... do we need a test case for crossing namespaces, or tighten the pattern to just within the same namespace?
... nervous of defining such patterns as they need a component model to span schemas

gcowe: do we need an example of spanning multiple namespaces?

pauld: propose we split this pattern to "within the same schema document" and "across schemas" not namespaces, and then have an example to test this
... OK, we'll keep this open, subject to testing

<scribe> ACTION: pdowney to split ElementReference into two patterns [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action08]

<trackbot> Created ACTION-110 - Split ElementReference into two patterns [on Paul Downey - due 2007-02-20].

lc-Microsoft-3: Nested Sequences and sequences other than minOccurs=maxOccurs=1

pauld: I think they're being helpful, are we too fine-grained here?

gcowe: it's complexity that's needed

jonc: is maxOccurs=1 a typeo

gcowe: think this is pushing wrapped for repeated elements
... modelling tools don't always generate wrapped arrays

jonc: we may end up making bare arrays advanced subject to testing

pauld: let's hold off on this subject to testing

lc-Microsoft-4: schemaLocation

pauld: big +1 to that

RESOLUTION: lc-Microsoft-4 accepted

<scribe> ACTION: pdowney to add advice that schemaLocation is a hint [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action09]

<trackbot> Created ACTION-111 - Add advice that schemaLocation is a hint [on Paul Downey - due 2007-02-20].

lc-Microsoft-5: maxOccurs=finite

pauld: I agree with the comment!

gcowe: we need this for our schemas

jonc: our criteria is if tools don't reject it it's basic

pauld: zero, one, many
... few tools do validation, or build an array[3] anymore, well 'C' might
... hold this open subject to testing

lc-Microsoft-6: Null enumerations

this came from an X.694 inspired contribution

pauld: it's valid schema, comment asks if it's useful

do we have to justify use of patterns in the spec?

scribe: it is listed as a "
... way of saying a value is Null
... always Null in X.694

pauld: it is fairly Zen though, sound of no data passing
... what does it mean to accept this comment?
... will write back and explain the origin, will remain in the spec subject to testing, but i suspect one tool at least doesn't support it, so it's toast

<JonC> advanced toast anyway

RESOLUTION: lc-Microsoft-6 accepted

LUNCH!

lc-Microsoft-7: Mixing elements maxOccurs=1 and maxOccurs>1 ...

Jonc: bare arrays

pauld: "Bare arrays do not support the distinction between null arrays and empty arrays"
... seems like a valid comment from a code-first POV
... you can't send a null array with a bare array
... we've decided not to offer advice on chosing a pattern, is this a special case?

<JonC> also valid comment from a efficiency/productivity POV e.g. XSLT

pauld: i don't understand the efficiency comment

jonc: tools don't bail on this

pauld: sounds like a "Design Consideration"
... maybe the XSLT comment referds to A* B* C* A*
... seems like I might elect not to use this pattern, but does that mean that schemas which exhibit this pattern are rejected by tools?
... how strongly do people feel about this? Do we need more information, how widely used is the pattern?

gcowe: we use it

<JonC> sounds more like best practice recommendation ???

pauld: and you're a member of the WG!
... it's in our spec, to lose it we have to demonstrate lack of support. To accept the comment we have to change the way we work. I might not like this pattern but if it works with tools and is used in Schemas in the wild, then it's basic.

jonc: we're going to continue using wrapped as our default, but don't see any reason to remove as yet

pauld: let's keep it open, subject to testing

lc-Microsoft-8: Mixing elements maxOccurs=1 and maxOccurs>1 in the same inheritance chain

pauld: a challenge to write an XPath for this across multiple schema documents, but is the comment valid?
... in some ways depends upon lc-Microsoft-7
... do we have a test case?

<scribe> ACTION: gcowe to write a test case for lc-Microsoft-8 [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action10]

<trackbot> Created ACTION-112 - Write a test case for lc-Microsoft-8 [on George Cowe - due 2007-02-20].

Pattern Detection Service

gcowe: patterns detection stylesheet,
... can we reference a stylesheet for the output?

pauld: prefer to do that server side

<scribe> ACTION: ylafon to make patterns detection service run stylesheet [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action11]

<trackbot> Created ACTION-113 - Make patterns detection service run stylesheet [on Yves Lafon - due 2007-02-20].

gcowe: I have a version which works with file upload and URI

yves: can we provide the source / war file for people wanting to run this for themselves

gcowe: that's fine

pauld: what about the "freshness" of the patterns.xml file used, where does it come from?

ylafon: service runs from a copy of the stylesheet

pauld: how do we get changes propogated?
... can we put the source code war file rollup into the WG CVS?

gcowe: we could make the service pickup the live version, and make that configurable

<scribe> ACTION: gcowe to make the detection service pick up the live stylesheet, configurably [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action12]

<trackbot> Created ACTION-114 - Make the detection service pick up the live stylesheet, configurably [on George Cowe - due 2007-02-20].

<scribe> ACTION: gcowe to put patterns detection source code into WG CVS [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action13]

<trackbot> Created ACTION-115 - Put patterns detection source code into WG CVS [on George Cowe - due 2007-02-20].

pauld: when do we go live / announce the service?

yves: not tied to publication of our documents

pauld: plan to announce it with publication of our reports
... do we consider bundling WS-I BP in our service?

TBD

lc-pwalmsley-1: Document or Element Node

RESOLUTION: lc-pwalmsley-1 accepted

pwalmsley: ok with me!

<scribe> ACTION: pdowney to edit lc-pwalmsley-1 [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action14]

<trackbot> Created ACTION-117 - Edit lc-pwalmsley-1 [on Paul Downey - due 2007-02-20].

lc-pwalmsley-2: "node-set" should be "sequence"

pauld: we also have this as lc-drkm-1

pwalmsley: term node-set isn't used in XPath, is order significant

pauld: no

RESOLUTION: lc-pwalmsley-2 accepted

RESOLUTION: close lc-drkm-1 as accepted

<scribe> ACTION: pdowney to edit lc-pwalmsley-2 [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action15]

<trackbot> Created ACTION-118 - Edit lc-pwalmsley-2 [on Paul Downey - due 2007-02-20].

pauld: also closes lc-drkm-1: XPath 2.0 and node-set ?

lc-pwalmsley-3: QualifiedLocalElements

pwalmsley: example doesn't have any elements

http://www.w3.org/TR/xmlschema-patterns/#pattern-QualifiedLocalElements

name of the pattern is misleading?

pwalmsley: don't feel strongly, we can just leave it

pauld: we have an assertion: http://www.w3.org/TR/xmlschema-patterns/#assert-QualifiedLocalElements-summary

RESOLUTION: lc-pwalmsley-3 rejected

pwalmsley: OK with this

lc-pwalmsley-5: ElementFinal

RESOLUTION: accept lc-pwalmsley-5

pwalmsley: OK with this

lc-pwalmsley-6: ImportTypesNamespace

pwalmsley: might be invalid use of schema

pauld: trying to capture a common pattern used within WSDL
... maybe we could add another clause to capture self reference in (@namespace = ../xs:schema/@targetNamespace)]

pwalmsley: that would be an invalid schema

RESOLUTION: rejected lc-pwalmsley-6

pwalmsley: I'm OK with that

lc-pwalmsley-7: GlobalElement and GlobalAttribute

pauld: exists not to fire the catchall

pwalmsley: might not be necessary

<pwalmsley> ./xs:element[@name and @type and contains(@type, ':')]/ (., @name, @type)

http://www.w3.org/TR/2006/WD-xmlschema-patterns-20061122/#group-GlobalElement

pauld: simplifying is goodness

<scribe> ACTION: pdowney to remove @name and @type from GlobalAttribute and GlobalElement [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action16]

<trackbot> Created ACTION-119 - Remove @name and @type from GlobalAttribute and GlobalElement [on Paul Downey - due 2007-02-20].

RESOLUTION: accept lc-pwalmsley-7

pwalmsley: OK with that!

lc-pwalmsley-8: @type colon

pwalmsley: a client also encountered this issue, so happy to withdraw the comment

RESOLUTION: lc-pwalmsley-8 rejected

lc-pwalmsley-9: GlobalElementSequence

RESOLUTION: accepted lc-pwalmsley-9

pwalmsley: I'm OK with that!

lc-pwalmsley-10: ElementMaxOccursFinite

RESOLUTION: accepted lc-pwalmsley-10

pwalmsley: I'm OK, it's incorrect

<pwalmsley> .//xs:element[@maxOccurs != ('0','1','unbounded')]

pwalmsley: other comment in the mail on global element sequence - please ignore

lc-pwalmsley-11: ElementEmptySequence @name

pauld: similar issue

RESOLUTION: accept lc-pwalmsley-11

lc-pwalmsley-12: ElementEmptySequence not(node())

pauld: not (* except xs:annotation) seems good

RESOLUTION: accept lc-pwalmsley-12

lc-pwalmsley-13, lc-pwalmsley-14:

pauld: we've been here before!

<pwalmsley> analogous to 11 and 12

RESOLUTION: accept lc-pwalmsley-13, lc-pwalmsley-14

lc-pwalmsley-15: Global SimpleType Declarations

pwalmsley: it's editorial, wording

RESOLUTION: accept lc-pwalmsley-15

lc-pwalmsley-16: GlobalSimpleType and GlobalComplexType

pwalmsley: same again!

RESOLUTION: accept lc-pwalmsley-16

lc-pwalmsley-17: StringEnumerationType

<pwalmsley> withdrawn

pwalmsley: withdraw that one, cathcall picks it up

RESOLUTION: lc-pwalmsley-17 rejected

pwalmsley: I'm OK with all the resolutions!

pauld: Right, rest of our time is to be spent working on the reports - so we're ADJOURNED!

Summary of Action Items

[NEW] ACTION: gcowe to make the detection service pick up the live stylesheet, configurably [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action12]
[NEW] ACTION: gcowe to put patterns detection source code into WG CVS [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action13]
[NEW] ACTION: gcowe to write a test case for lc-Microsoft-8 [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action10]
[NEW] ACTION: gcowe: to split DocumentationElement example into more than one example / testcase [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action07]
[NEW] ACTION: jcalladi to review XPaths for unnecessary nodes being matched [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action06]
[NEW] ACTION: pauld to add a Basic Pattern for BP compliant schema import [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action05]
[NEW] ACTION: pdowney to add advice that schemaLocation is a hint [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action09]
[NEW] ACTION: pdowney to add informative reference for BOM link to Unicode FAQ [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action02]
[NEW] ACTION: pdowney to add reference to BCP47 [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action04]
[NEW] ACTION: pdowney to add reference to http://www.w3.org/TR/2005/NOTE-timezone-20051013/ [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action03]
[NEW] ACTION: pdowney to edit lc-pwalmsley-1 [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action14]
[NEW] ACTION: pdowney to edit lc-pwalmsley-2 [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action15]
[NEW] ACTION: pdowney to remove @name and @type from GlobalAttribute and GlobalElement [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action16]
[NEW] ACTION: pdowney to split ElementReference into two patterns [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action08]
[NEW] ACTION: pdowney to write BOM examples for the testsuite [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action01]
[NEW] ACTION: ylafon to make patterns detection service run stylesheet [recorded in http://www.w3.org/2007/02/13-databinding-minutes.html#action11]
 
[End of minutes]

Minutes formatted by David Booth's scribe.perl version 1.127 (CVS log)
$Date: 2008/07/22 19:30:18 $