Some items for discussion


Hi all,

I would like to bring up the following items to the team’s attention.

Item: Clarification of SchemaMapping concept
I think we should clarify schemaMapping concept a bit more in the spec. It
is currently a bit confused between data mapping and schema mapping (We
felt that it needed more work even while working on WSDL-S). In SAWSDL we
are concerned with adding semantic annotations for the (abstract)
interfaces of Web services. The purpose of these annotations is to enable
discovery and semantic matching - not invocation. There are many more
things that need to happen before actual invocations can be made even if
semantic similarity is established via discovery and semantic matching. For
example, even if we match ‘UPC’ and ‘SKU’ as semantically similar concepts
(because both are unique identifiers for items), a UPC code can’t pass off
for an SKU during the invocation (may be the # of digits are different and
may need some transformation function). But we shouldn’t confuse this
transformation that needs to take place between two WSDL elements (in this
case UPC element in one WSDL to SKU element in the other WSDL) with the
semantic annotations of elements in WSDL. For instance, the semantic
annotations for UPC and SKU could be ‘<someontology>#UniqueIdentifier’.
Therefore, specifying things like concatenating the values of ‘first name’
and ‘last name’ to map to an ontology concept called ‘<someont>#name’ via
an XSLT transformation is too low level information for semantic
annotations (XSLT is for transforming XML documents rather than schemas). I
think RDF mappings would be more appropriate for representing
schemaMapping. I understand that we don’t prescribe the language that users
would like to use for specifying these schema mappings but the examples
that we give in the spec should be consistent with the concepts and
recommended best practices. I think we should revisit the examples for
schema mapping and consider RDF mappings. Thoughts?

Item: Multiple annotations for operation
An operation has a modelReference. If we are supporting multiple
modelReferences on elements, we should apply the same logic for an
operation and make sure that users can associate multiple modelReferences
on an operation as well.

Item: Multiple annotations for a complex type
A complex type currently can have both a modelReference and a
schemaMapping. Also there is an implicit association between the
modelReference and schemaMapping. For example, in the example in the spec
<complexType name="POAddress"
 wssem:schemaMapping
="http://lsdis.cs.uga.edu/projects/meteor-s/wsdl-s/examples/POAddress.xsl"
 wssem:modelReference="POOntology#Address" >

there is an implicit association between the modelReference pointing to the
‘Address’ concept in the ontology POOntology and the schemaMapping concept
that is pointing to the PoAddress.xsl – which is supposed to specify the
mapping between elements in the complex type ‘POAddress’ and concepts in
the ontology POOntology. If we want to support multiple annotations, say
one for OWL and the other for WSML this association would be hard to keep
track of. There are multiple ways to deal with this.
   (a) just add multiple modelReferences and schemaMappings and let the
      tools figure out the associations.
   (b) use whatever mechanism we come up with to identify the type of a
      model, we could use the same here and keep things consistent.

Item: Conflict Resolution Rules (at the bottom of the section 2 in the
spec):
At the bottom of the section 2, we specify a bunch of rules to resolve
conflicts. Is there a way to formalize these rules or enforce them via the
spec? Or may be we should think about designing things in such a way that
conflicts don’t arise at all.

Editorial Comment:
Why was the example at the beginning taken out? I usually find most specs
very reader unfriendly. An example upfront is a great way to introduce the
ideas. I strongly believe that we should have a full example at the
beginning.

Item: Editorial Change
Section 2.1 in the current version of the SAWSDL spec refers to ‘action’
concept. It is actually a modelReference on the operation. So, references
to ‘action’ should be taken out.

Item: Editorial Comment
Should we cleanup the namespaces for examples referring to ibm and lsdis
web sites to point to more neutral namespaces.

Regards
Rama Akkiraju

Received on Tuesday, 25 April 2006 03:27:17 UTC