W3C home > Mailing lists > Public > www-ws-desc@w3.org > January 2007

Re: http:location grammar

From: John Kaputin (gmail) <jakaputin@gmail.com>
Date: Fri, 12 Jan 2007 23:46:58 +0000
Message-ID: <4c2ae8f80701121546h5e83709aw7f0e33e79f87b3ca@mail.gmail.com>
To: www-ws-desc <www-ws-desc@w3.org>, "Philippe Le Hegaret" <plh@w3.org>
Phillippe,
can you please explain the meaning of CharData? I can probably guess what it
is, but I don't understand the notation [^{}]*

I Googled on EBNF and LR(k) and understand optional group [..], repeating
group {..} and zero-or-more *, but I'm not sure what {} means in this
context and the only reference I could find to the circumflex ^ was in ISO
14977 which just described it as an other-character.

thanks,
John.

On 1/12/07, Philippe Le Hegaret <plh@w3.org> wrote:
>
>
> Using EBNF, the grammar to be applied to the Infoset value of
> http:location is:
>
> httpLocation ::= CharData? (( openBrace | closeBrace | elementName )
> CharData?)*
>
> CharData ::= [^{}]*
>
> openBrace ::= '{{'
>
> closeBrace ::= '}}'
>
> elementName ::= '{' QName '}'
>
> The lexical space of QName is defined in the namespace specification and
> is also equivalent to xsd:QName. I believe we only support element
> declarations with namespaces so this explains the use QName instead of
> Name.
>
> This gives the following results (same as Jonathan's, with an additional
> one):
>
> "{town}"       > {town}           >  "Paris"
> "{{town}}"     > {{,town,}}       >  "{town}"
> "{{{town}}}"   > {{,{town},}}     >  "{Paris}"
> "{{{{town}}}}" > {{,{{,town,}},}} >  "{{town}}"
> "{{town}"      > {{,town,}        >  ERROR
> "{{{town}"     > {{,{town}        >  "{Paris"
> "{town}}"      > {town},}         >  ERROR
> "{town}}}"     > {town},}}        >  "Paris}"
> "{t{o}wn}"     > {t{o}wn}         >  ERROR
>
> I believe this is an LR(k) grammar by the way, with an unlimited k
> (QName is unlimited). It's possible k could be bounded to 1 by adding
> more states but we don't need to worry about that here.
>
> Now, unless I missed a sentence or two in the specifications, here are
> two questions:
>
> With:
> "{town}"       > {town}           >  "Paris"
> "{tr:town}"       > {tr:town}           >  "Paris"
>
> What are the namespaces associated with "town" or "tr:town"? We store
> {http location} in the content model as an xs:anyURI but we don't keep
> the namespaces in scope around despite the fact that further processing
> might need them to resolve the qnames. Should we clarify that namespace
> resolution is done according to the namespaces in scope and/or add a
> property to keep those namespaces in scope around? By just using the
>
> MessageTest-1G defines the following:
>
> <xs:schema elementFormDefault="qualified"
>       xmlns:xsmt="http://example.org/message-test/xsd">
> <xs:element name="EchoInt" type="xsmt:intStruct"/>
> <xs:complexType name="intStruct">
>      <xs:sequence>
>          <xs:element name="int" type="xs:int"/>
>      </xs:sequence>
> </xs:complexType>
> </xs:schema>
> [...]
> <interface>
> <operation name="EchoInt"
>       style="http://www.w3.org/2006/01/wsdl/style/iri">
>       <input element="xsmt:EchoInt"/>
>       <output element="xsmt:echoIntReturn"/>
> </operation>
> </interface>
> [...]
> <binding>
>     <operation ref="tns:EchoInt"
>       wsoap:action="http://example.org/message-test/action/EchoInt"
>       whttp:location="?op=EchoInt;int={int};" />
> </binding>
>
> Shouldn't it be {xsmt:int} instead?
>
>
> Philippe
>
>
>
>
>
Received on Friday, 12 January 2007 23:47:04 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:58:45 GMT