diff options
Diffstat (limited to 'config-model/src/main/resources/schema/version/7.x/federation.rnc')
-rw-r--r-- | config-model/src/main/resources/schema/version/7.x/federation.rnc | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/config-model/src/main/resources/schema/version/7.x/federation.rnc b/config-model/src/main/resources/schema/version/7.x/federation.rnc new file mode 100644 index 00000000000..15b57b9dd7b --- /dev/null +++ b/config-model/src/main/resources/schema/version/7.x/federation.rnc @@ -0,0 +1,75 @@ +# Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +# Schema for federation configuration inside the searchchains section. + +GenericSource = + GenericSearchChainInQrservers & + FederationOptions? + +Source = + element source { + GenericSource + } + +Provider = + element provider { + GenericSource & + attribute cachesize { xsd:string { pattern = "\d+(\.\d*)?\s*[kmgKMG]?" } }? & + attribute type { xsd:string }? & + attribute cluster { xsd:string }? & + + # TODO Vespa 8 Remove yca concepts from services.xml syntax + attribute yca-application-id { xsd:string }? & + attribute yca-cache-ttl { xsd:string { pattern = "\d+(\.\d*)?\s*m?s" } }? & + attribute yca-cache-retry-wait { xsd:string { pattern = "\d+(\.\d*)?\s*m?s" } }? & + YcaProxy? & + HttpProviderSearcherOptions & + + Source* + } + +YcaProxy = + element yca-proxy { + GenericNode? + } + +GenericNode = + attribute host { xsd:string } & + attribute port { xsd:int } + + +HttpProviderSearcherOptions = + attribute cacheweight { xsd:float { minInclusive = "0" } }? & + attribute path { xsd:string }? & + attribute readtimeout { xsd:string { pattern = "\d+(\.\d*)?\s*m?s" } }? & + attribute connectiontimeout { xsd:string { pattern = "\d+(\.\d*)?\s*m?s" } }? & + attribute connectionpooltimeout { xsd:string { pattern = "\d+(\.\d*)?\s*m?s" } }? & + attribute retries { xsd:int }? & + element nodes { + element node { + attribute host { xsd:string } & + attribute port { xsd:int } + }+ + } ? + +FederationOptions = + element federationoptions { + attribute optional { xsd:boolean }? & + attribute timeout { xsd:string { pattern = "\d+(\.\d*)?\s*m?s" } }? & + attribute requestTimeout { xsd:string { pattern = "\d+(\.\d*)?\s*m?s" } }? & + attribute default { xsd:boolean }? + } + +FederationSearcher = + element federation { + GenericSearcherOrDocumentProcessor & + element source { + ComponentSpec & + FederationOptions? + }* & + element target-selector { + ComponentDefinition + }? & + element source-set { + attribute inherits { string "default" } + }? + } |