schema.container.rnc Maven / Gradle / Ivy
# Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
# Schema for common container options
include "processing.rnc"
Handler = element handler {
ComponentDefinition &
ServerBindings
}
Binding = element binding {text}
ServerBindings = Binding*
Server = element server {
ComponentDefinition
}
AccessControl = element access-control {
attribute domain { xsd:NCName }? & # TODO(tokle,bjorncs) Vespa > 8: Remove
attribute read { string "true" | string "false" }? & # TODO(tokle,bjorncs) Vespa > 8: Remove
attribute write { string "true" | string "false" }? & # TODO(tokle,bjorncs) Vespa > 8: Remove
attribute tls-handshake-client-auth {string "want" | string "need"}? &
element exclude {
Binding+
}?
}
HttpFilterChain =
HttpFilter* &
ChainBaseContent &
ServerBindings
HttpFilter = element filter {
ComponentDefinition &
FilterConfig?
}
FilterConfig = element filter-config {
anyElement*
}
Renderer = element renderer {
ComponentDefinition
}