This is a static archive of the previous Open Grid Forum GridForge content management system saved from host forge.ogf.org file /sf/go/artf3329?nav=1 at Sun, 06 Nov 2022 04:26:28 GMT SourceForge : artf3329: (92) Proposed change to service data schema

Project Home

Tracker

Documents

Tasks

Source Code

Discussions

File Releases

Wiki

Project Admin
Search Tracker
Project: OGSI-WG     Trackers > OGSI V1.0 Specification > View Artifact
Artifact artf3329 : (92) Proposed change to service data schema
Tracker: OGSI V1.0 Specification
Title: (92) Proposed change to service data schema
Description:
This is from the list. Submitted by Dr. Savas Parastatidis 

All,

Few weeks back I asked the group about the XML schema definition of
service data. Thomas pointed out that the non-conformant XML schema came
from the OGSI spec and indeed it did. I just found some time to work on
this and here's my proposal for the v1.1 spec.

In the current version of the spec the serviceData element is defined
using non-valid XML Schema (section 6.2.1, page 16):

<xsd:restriction base="xsd:element">

and 

<xsd:attributeGroup ref="xsd:occurs"/>

I am attaching an alternative definition of the ServiceDataType that is
valid XML Schema and, hopefully, maintains all the characteristics of
the existing one.

Furthermore, in order to allow elements of ServiceDataType to be used in
WSDL, the WSDL extensibility mechanism was used (thanks to Jim Webber
from Arjuna Technologies Ltd for pointing this out to me).

I used the portTypeExt substitution group from the published draft of
WSDL 1.2 since the OGSI spec already uses the "inheritance" feature from
this future spec. (Note that in the editor's version of the WSDL 1.2
spec the "portType" element has been renamed to "interface" and the
substitution group to "serviceExt".)

So, using this extensibility mechanism, it is possible to introduce the
following in the "types" component of the WSDL that will allow us to
continue use the serviceData element as is but in a WSDL-conformant way.
(At least this is my understanding of the WSDL spec).

<types>
   <xs:element name="serviceData" type="sd:ServiceDataType"
substitutionGroup="portTypeExt"/>
</types>

An example of a WSDL that uses this feature is attached.

What do you think?
--
Dr. Savas Parastatidis 
Chief Software Architect, North-East Regional e-Science Centre 
School of Computing Science, University of Newcastle upon Tyne, UK 
http://savas.parastatidis.name
 .
Submitted By: David Snelling
Submitted On: 05/28/2003 9:27 AM EST
Last Modified: 07/02/2003 2:49 AM EST
Closed: 07/02/2003 2:49 AM EST

Status / Comments Change Log Associations Attachments (1)  
Status  
Group: * Service Data
Status:* Closed
Category: * Proposed Change
Customer: *
Priority: * 3
Assigned To: * David Snelling
Reported in Release: *
Fixed in Release: *
Estimated Hours: * 0
Actual Hours: * 0
issue_type: * normal
resolution: *
Comments
David Snelling: 07/02/2003 2:49 AM EST
  Comment:
Steve T integrated this into one of the latest drafts.
  Action: Update
David Snelling: 07/02/2003 2:49 AM EST
  Action: Update
artifact_status changed from Open to Closed
close_date changed from - to 2003-07-02 08:49
David Snelling: 05/28/2003 9:33 AM EST
  Comment:
These are comments from Karl relevant to this issue:

I think the question about our use of XML for serviceData comes down
to a need for extensions to XML Schema, just as we needed extensions
to WSDL.  Once you accept that extensions are necessary, the only
question is how best to achieve them.

As I recall, there were several approaches to extension discussed in
the working group:

   1. (what is in the current document) Define a new mechanism
      parallel to XML Schema's element declaration to define
      serviceData element declarations.  We are using the same
      non-conformant XML Schema fix-point tricks that the XML Schema
      uses to define itself.

   2. Use XML Schema element declarations directly for serviceData
      declaration, adding our extended attributes for serviceData
      cardinality.  I am not an XSD expert, but I recall concerns that
      this could not be done without a new XML Schema specification?

   3. (what was in an early draft) Use XML Schema element declarations
      to declare the content of serviceData elements, and use a
      "service data declaration" to associate this element declaration
      with additional cardinality attributes etc., instead of adding
      these attributes to the element declaration as in (2).

The problem with (3) is that it requires an extra(-ugly) layer of
wrapping around XML Schema elements so that two different service data
declarations can assert properties about the same XSD element type and
these can be distinctly named SDEs in the same service.

Something like:

  (in tns1)

  <gwsdl:portType name="PTName1">

      <ogsi:serviceDataDeclaration name="SDName1"
             elementType="tns2:foo"
             minOccurs="0" mutability="static" ... />
           
      ...
  </gwsdl:portType>


  <gwsdl:portType name="PTName2" extends="tns1:PTName1">

      <ogsi:serviceDataDeclaration name="SDName2"
             elementType="tns2:foo"
             minOccurs="1" mutability="mutable" ... />
           
      ...
  </gwsdl:portType>


Then a service implementing portType tns1:PTName2 could have
SDE values such as:

   <tns1:SDName1>
      <tns2:foo ... />
   </tns1:SDName1>

   <tns1:SDName2>
      <tns2:foo ... />
   </tns1:SDName2>

this wrapping was considered undesireable compared to treating
serviceData as an extension of the element declaration model, as used
in the current document.


karl
  Action: Update
David Snelling: 05/28/2003 9:27 AM EST
  Action: Create

David Snelling: 05/28/2003 9:27 AM EST
  Attachment: OGSI SDE.doc (67 KB)
  Action: Update
File added set to 25: OGSI SDE.doc

 
 
 
< Previous
 
 
Next >
 


The Open Grid Forum Contact Webmaster | Report a problem | GridForge Help
This is a static archive of the previous Open Grid Forum GridForge content management system saved from host forge.ogf.org file /sf/go/artf3329?nav=1 at Sun, 06 Nov 2022 04:26:33 GMT