Re: http:location grammar

"John Kaputin (gmail)" <[email protected]>
Newsgroups gmane.comp.web.services.description
Message-ID <[email protected]>
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 <[email protected]> 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
>
>
>
>
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.