RE: RelaxNG schema of XML-RPC (Was: xml-rpc and WSDL

"Gaetano Giunta" <[email protected]>
Newsgroups gmane.text.xml.rpc.specification
Message-ID <[email protected]>
here below is a 'patched' version of the relax-ng spec.

Only change I did: a struct can have zero members (the spec is not very clear about that, but I suppose most implementations allow it)

One question: what is the line "member = element member {value" used for?

Bye
gaetano

----------
# RelaxNG schema for XML-RPC (http://www.xmlrpc.com/spec)

start = methodcall | methodresponse

methodcall = element methodCall {methodname, params?}

methodresponse = element methodResponse {fault | uniqueparams}

methodname = element methodName {text} # TODO: restrict the methodName to authorized
                                       # characters

params = element params {param+}

uniqueparams = element params {param}

param = element param {value}

value = element value {typedparam | text}

typedparam = integer | boolean | stringval | double | datetime | base64 | 
             array | struct # string is a keyword

integer = element i4 {xsd:int} | element int {xsd:int} 

boolean = element boolean {"0" | "1"} # *Not* xsd:boolean (see the spec)

stringval = element string {text} 

double = element double {xsd:double}

datetime = element dateTime.iso8601 {text} # xsd:date does not allow 
                                           # "20051130T12:10:56"

base64 = element base64 {text}

array = element array {element data {value*}}

struct = element struct {namedmember*}

namedmember = element member {membername & value}

member = element member {value} ### what's this used for?

membername = element name {text}

fault = element fault {faultvalue}

faultvalue = element value {faultstruct}

faultstruct = element struct {faultcode, faultstring}

faultcode = element member {element name {"faultCode"} &
                            element value {integer}}

faultstring = element member {element name {"faultString"} &
                              element value {stringval | text}}


 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/xml-rpc/

<*> To unsubscribe from this group, send an email to:
    [email protected]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
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.