OWL-S tab, owls api, xslt output datatype always explicit string. ..

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

OWL-S tab, owls api, xslt output datatype always explicit string. ..

Andras Balogh-5

Hi!

 

Is owls tab using the mindswap owls api? (I checked, yes J)

There is a problem with input/output datatypes. If I use xsd:dateTime, xsd:float, xsd:boolean

the xsl transformation may be good, the api “casts” everything explicitly to xsd:string, which

is obviously a problem because the web service won`t recognise the parameters this way.

 

The error in axis:

“SCHWERWIEGEND: Could not convert java.lang.String to bean field 'employee', type boolean

 

Here`s what I speak about:

A required soap request would look like this:

<?xml version="1.0" encoding="UTF-8"?>

<env:Envelope xmlns:enc="http://schemas.xmlsoap.org/soap/encoding/"

      xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"

      xmlns:ns0="http://www.cas.de/test/"

      xmlns:xsd="http://www.w3.org/2001/XMLSchema"

      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

      <env:Body>

            <ns0:getPersonByName>

                  <ns0:p>

                        <ns0:birthdate>2006-10-10T00:00:00.000Z</ns0:birthdate>

                        <ns0:discount>123.0</ns0:discount>

                        <ns0:employee>false</ns0:employee>

                        <ns0:name>asd</ns0:name>

                  </ns0:p>

            </ns0:getPersonByName>

      </env:Body>

</env:Envelope>

Instead the api generates:

<soapenv:Envelope

      xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"

      xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"

      xmlns:xsd="http://www.w3.org/2001/XMLSchema"

      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

      soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

      <soapenv:Body>

            <getPersonByName xmlns="http://www.cas.de/test/">

                  <p xsi:type="u:MyPerson">

                        <employee xsi:type="xsd:string">true</employee>

                        <birthdate xsi:type="xsd:string">

                             2006-03-27T00:00:00.000Z

                        </birthdate>

                        <discount />

                        <name xsi:type="xsd:string">Markus Bauer</name>

                  </p>

            </getPersonByName>

      </soapenv:Body>

</soapenv:Envelope>

When the xsl looks like

<xsl:stylesheet version="1.0"

xmlns:xsl="http://www.w3.org/1999/XSL/Transform"

xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:concepts="http://localhost/ont/test.owl#"

xmlns:ns1="http://www.cas.de/test/"

ns1:keepNamespace="">

      <xsl:template match="/">

       <xsl:variable name="X1" select="//concepts:MyPerson/concepts:hasBirthdayDate"/>

 

                  <p>

Threaded

Open this post in threaded view
|

Re: OWL-S tab, owls api, xslt output datatype always explicit string. ..

semanticcrazy@icmail.net
Hi,

I had similar problem while creating my own web service(with
the complex type). See my post  in mindswap list,

http://lists.mindswap.org/pipermail/owl-s/2005-August/000422.html

Unfortunately, I have not recieved any satisfactory answer
to it. If you do, plz share it.

Many Thanks

Dhaval
----- Original Message -----
From: Andras Balogh <[hidden email]>
To: [hidden email]
Subject: [protege-owl] OWL-S tab, owls api, xslt output
datatype always explicit string. ..
Date: Wed, 29 Mar 2006 10:58:51 +0200

> Hi!
>
>  
>
> Is owls tab using the mindswap owls api? (I checked, yes
> :-))
>
> There is a problem with input/output datatypes. If I use
> xsd:dateTime, xsd:float, xsd:boolean
>
> the xsl transformation may be good, the api "casts"
> everything explicitly to xsd:string, which
>
> is obviously a problem because the web service won`t
> recognise the parameters this way.
>
>  
>
> The error in axis:
>
> "SCHWERWIEGEND: Could not convert java.lang.String to bean
> field 'employee', type boolean"
>
>  
>
> Here`s what I speak about:
>
> A required soap request would look like this:
>
> <?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?>
>
> <env:Envelope
> xmlns:enc="http://schemas.xmlsoap.org/soap/encoding/"
>
>      
> xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
>
>       xmlns:ns0="http://www.cas.de/test/"
>
>       xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>
>      
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
>
>       <env:Body>
>
>             <ns0:getPersonByName>
>
>                   <ns0:p>
>
>  
> <ns0:birthdate>2006-10-10T00:00:00.000Z</ns0:birthdate>
>
>                         <ns0:discount>123.0</ns0:discount>
>
>                         <ns0:employee>false</ns0:employee>
>
>                         <ns0:name>asd</ns0:name>
>
>                   </ns0:p>
>
>             </ns0:getPersonByName>
>
>       </env:Body>
>
> </env:Envelope>
>
> Instead the api generates:
>
> <soapenv:Envelope
>
>      
> xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
>
>      
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
>
>       xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>
>      
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>
>      
> soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/enc
> oding/">
>
>       <soapenv:Body>
>
>             <getPersonByName
> xmlns="http://www.cas.de/test/">
>
>                   <p xsi:type=&quot;u:MyPerson&quot;>
>
>                         <employee
> xsi:type="xsd:string">true</employee>
>
>                         <birthdate
xsi:type=&quot;xsd:string&quot;>
>
>                              2006-03-27T00:00:00.000Z
>
>                         </birthdate>
>
>                         <discount />
>
>                         <name
xsi:type=&quot;xsd:string&quot;>Markus

> Bauer</name>
>
>                   </p>
>
>             </getPersonByName>
>
>       </soapenv:Body>
>
> </soapenv:Envelope>
>
> When the xsl looks like
>
> <xsl:stylesheet version=&quot;1.0&quot;
>
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
>
> xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
>
> xmlns:concepts="http://localhost/ont/test.owl#"
>
> xmlns:ns1="http://www.cas.de/test/"
>
> ns1:keepNamespace="">
>
>       <xsl:template match=&quot;/&quot;>
>
>        <xsl:variable name=&quot;X1&quot;
> select="//concepts:MyPerson/concepts:hasBirthdayDate"/>
>
>  
>
>                   <p>
>
>                     <employee>
>
>                          <xsl:value-of
> select="//concepts:MyPerson/concepts:isEmployee"/>    
>
>                              </employee>          
>
>                     <birthdate>
>
>                          <xsl:value-of
> select="concat($X1,'T00:00:00.000Z')"/>    
>
>                              </birthdate>
>
>                     <discount>
>
>                          <xsl:value-of
> select="//concepts:MyPerson/concepts:hasDiscount "/>    
>
>                              </discount>          
>
>                     <name>
>
>                          <xsl:value-of
> select="//concepts:MyPerson/concepts:hasName "/>    
>
>                              </name>
>
>           </p>
>
>                
>
>       </xsl:template>
>
> </xsl:stylesheet>
>
>  
>
> Has anybody a solution? Or is it only usable with strings?
>
>  
>
> Thanks,
>
> Andras
>
>
-------------------------------------------------------------------------
To unsubscribe go to http://protege.stanford.edu/community/subscribe.html