
rng.wadl.rnc Maven / Gradle / Ivy
namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0"
namespace local = ""
namespace wadl = "http://wadl.dev.java.net/2009/02"
start =
element wadl:application {
doc*,
grammars?,
resources*,
( resource_type | method | representation | param )*,
foreign-attribute,
foreign-element
}
doc =
element wadl:doc {
attribute xml:lang { languageTag }?,
attribute title { text }?,
( text | foreign-element )*,
foreign-attribute
}
grammars =
element wadl:grammars {
doc*,
incl*,
foreign-element
}
incl =
element wadl:include {
doc*,
attribute href { xsd:anyURI },
foreign-attribute
}
resources =
element wadl:resources {
doc*,
resource+,
attribute base { xsd:anyURI },
foreign-attribute,
foreign-element
}
resource_type =
element wadl:resource_type {
doc*,
param*,
(method | resource)*,
attribute id { xsd:token }?,
foreign-element,
foreign-attribute
}
resource =
element wadl:resource {
doc*,
param*,
(method | resource)*,
attribute type { list {xsd:anyURI} } ?,
attribute path { text }?,
attribute id { xsd:token }?,
attribute queryType { text }?,
foreign-element,
foreign-attribute
}
method =
element wadl:method {
(
(
attribute href { xsd:anyURI }
) | (
doc*,
request?,
response*,
attribute id { xsd:token }?,
attribute name {
"DELETE" | "GET" | "HEAD" | "POST" | "PUT" | xsd:token
}
)
),
foreign-element,
foreign-attribute
}
request =
element wadl:request {
doc*,
param*,
representation*,
foreign-attribute,
foreign-element
}
response =
element wadl:response {
doc*,
param*,
representation*,
attribute status { list { xsd:int+ } }?,
foreign-attribute,
foreign-element
}
representation =
element wadl:representation {
(
(
attribute href { xsd:anyURI }
) | (
doc*,
param*,
attribute id { xsd:token }?,
attribute element { xsd:QName }?,
attribute mediaType { text }?,
attribute profile { list { xsd:anyURI} }?
)
),
foreign-attribute,
foreign-element
}
param =
element wadl:param {
(
(
attribute href { xsd:anyURI }
) | (
doc*,
option*,
link?,
attribute name {xsd:token },
attribute style {
"plain" | "query" | "matrix" | "header" | "template"
},
attribute id { xsd:token }?,
attribute type { text }?,
attribute default { text }?,
attribute path { text }?,
attribute required { xsd:boolean }?,
attribute repeating { xsd:boolean }?,
attribute fixed { text }?
)
),
foreign-element,
foreign-attribute
}
option =
element wadl:option {
doc*,
attribute value { xsd:string },
attribute mediaType { text }?,
foreign-element,
foreign-attribute
}
link =
element wadl:link {
doc*,
attribute resource_type { xsd:anyURI }?,
attribute rel { xsd:token }?,
attribute rev { xsd:token }?,
foreign-element,
foreign-attribute
}
foreign-attribute = attribute * - (wadl:* | local:* | xml:*) { text }*
foreign-element =
element * - (wadl:* | local:*) {
(attribute * { text }
| text
| any-element)*
}*
any-element =
element * {
(attribute * { text }
| text
| any-element)*
}*
languageTag = xsd:string {
pattern = "[A-Za-z]{1,8}(-[A-Za-z0-9]{1,8})*"
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy