OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

sca-assembly message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: RE: [sca-assembly] Re: ISSUE 8: SCDL artifact resolution underspecified (schema adjustments for uniqueness?)


 

-----Original Message-----
From: Moberg Dale [mailto:dmoberg@axway.com]
Sent: Monday, February 11, 2008 5:48 PM
To: David Booz; sca-assembly@lists.oasis-open.org
Subject: RE: [sca-assembly] Re: ISSUE 8: SCDL artifact resolution underspecified (schema adjustments for uniqueness?)

 

 

1. If the intent is that the names of composites be unique within a

targetNamespace, that requirement would be documented.

 

<MR> Actually, we have described the concept of a symbol space, leveraging WSDL’s concept of symbol space (see lines 3069 and 3087 and section 12.6.4).  The QName have a unique definition for one symbol space.

</MR>

 

2. I guess you are wondering whether you could thereby leverage a

validity check on a file, to check on that constraint. I doubt that

tools normally enforce checking over multiple files, and as you point

out, just doing some kind of include over files where composite is the

root element won't yield a valid rooted tree anyhow.

 

<MR> We are talking about an SCA-specific QName resolution mechanism that works across documents.  Most of the places we need to resolve QNames are across documents, so a document specific resolution mechanism isn’t very helpful.  For example, if someone uses:

   <implementation.composite name=”foo:bar” xmlns:foo=”http://foo”>

Then it should resolve to a composite that exists _anywhere in the contribution_ if it is defined as:

   <composite targetNamespace=”http://foo” name=”bar”>...

</MR>

 

3. I also am pointing out that qnames are usually used where some

guarantee of uniqueness of referent is available.

 

<MR>Yes, we are asserting this uniqueness.</MR>

 

 That may tend to count

against the wisdom of using qnames for reference in scdl contributions,

given that you have no way to check on that assumption.

 

<MR>It is fairly easy to check on that assumption.</MR>

 

 URI-references,

given unique URLs for the members of the contribution, might be a better

bet. You could use standard fragments picking out referents by their ID

value and be done with it.

 

<MR>Pointing to a specific location would be fragile.  The value of logical names is that someone can change the location of the definition and it does not affect the users of that definition.  This is a very important requirement in my opinion.

</MR>

 

I have had some difficulty understanding why you are bothering with

qname anyway, because it doesn't seem like a clearly applicable device.

Your remark makes me wonder what the attraction really was?

 

<MR>My remark was the following:

 

“We chose QNames instead of URIs for exactly the reason mentioned in that article, for their brevity.  When you have a document that uses URIs where all of the URIs are identical in all but the last path segment, it can be difficult to find accidental mistakes in the earlier part of one of the URIs.”

 

Why does that make you wonder what the attraction really was?

 

Michael

</MR>

 

Dale Moberg

 

I didn't follow how this helps for composites, since they are all in

unique

XML instance documents.

 

It would help within a single sca definitions file (for bindingTypes,

intents, etc).  But even in this case, we need to worry about the

presence

of multiple sca definitions documents in the same contribution.  I

suppose

one could merge all the sca definitions documents (that are in the same

namespace) into one logical document and then run schema validation over

the logical document.

 

Dave Booz

STSM, SCA and WebSphere Architecture

Co-Chair OASIS SCA-Policy TC

"Distributed objects first, then world hunger"

Poughkeepsie, NY (845)-435-6093  or  8-295-6093

e-mail:booz@us.ibm.com

http://washome.austin.ibm.com/xwiki/bin/view/SCA2Team/WebHome

 

 

 

 

             "Moberg Dale"

 

             <dmoberg@axway.co

 

             m>

To

                                       "Michael Rowley"

<mrowley@bea.com>,

             02/11/2008 12:25          David

Booz/Poughkeepsie/IBM@IBMUS, 

             PM

<sca-assembly@lists.oasis-open.org>

 

cc

 

 

 

Subject

                                       ISSUE 8: SCDL artifact resolution

 

                                       underspecified  (schema

adjustments

                                       for uniqueness?)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

      Michael Rowley states

 

I believe that SCA definitions (composites, binding types, intents, etc)

should all be unique within a single "contribution context", by which I

mean a contribution and the exported definitions of all of its dependent

contributions.  If others agree, I'll add that text.

 

Dale Moberg>> WSDL and also schema enforce uniqueness for named things

that

they intend to reference by qnames. For example, WSDL  1.1 uses the key

constraint

 

 

*  (unique) the Identity-constraint definition asserts uniqueness, with

respect to the content identified by [selector], of the tuples resulting

from evaluation of the [fields]: XPath expression(s).

 

 

*  (key) the Identity-constraint definition asserts uniqueness as for

unique. key further asserts that all selected content actually has such

tuples.

as follows:

 

  <xs:element name="definitions" type="wsdl:tDefinitions" >

    <xs:key name="message" >

      <xs:selector xpath="wsdl:message" />

      <xs:field xpath="@name" />

    </xs:key>

    <xs:key name="portType" >

      <xs:selector xpath="wsdl:portType" />

      <xs:field xpath="@name" />

    </xs:key>

    <xs:key name="binding" >

      <xs:selector xpath="wsdl:binding" />

      <xs:field xpath="@name" />

    </xs:key>

    <xs:key name="service" >

      <xs:selector xpath="wsdl:service" />

      <xs:field xpath="@name" />

    </xs:key>

    <xs:key name="import"> >

      <xs:selector xpath="wsdl:import" />

      <xs:field xpath="@namespace" />

    </xs:key>

  </xs:element>

 

While this will only enforce uniqueness of named component, er thing,

within the "targetNamespace", it might be useful to add the appropriate

constraints to the scdl schemas, especially if you add in the Assembly

specification, a requirement for uniqueness of named scdl things that

are

to be referenced by qnames.

 

 

For XML Schema and WSDL definitions that are found by QNames, I think

they

can be ambiguous, but we can use the standard __Location attributes.  I

think that should cover the practical issues with existing badly behaved

artifacts.

 

I don't know what to do about Java.  I'm inclined to continue to say

very

little.  We currently say that "the installed contribution provides the

context" in which fully qualified classnames are resolved, but it

doesn't

say _how_ they are resolved (in fact it says there may be multiple

ways).

I think we should continue along those lines.

 

 

---------------------------------------------------------------------

To unsubscribe from this mail list, you must leave the OASIS TC that

generates this mail.  You may a link to this group and all your TCs in OASIS

at:

https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php

 



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]