diff options
author | Jon Bratseth <bratseth@yahoo-inc.com> | 2016-06-15 23:09:44 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@yahoo-inc.com> | 2016-06-15 23:09:44 +0200 |
commit | 72231250ed81e10d66bfe70701e64fa5fe50f712 (patch) | |
tree | 2728bba1131a6f6e5bdf95afec7d7ff9358dac50 /config-model/src/main/resources/schema/searchchains.rnc |
Publish
Diffstat (limited to 'config-model/src/main/resources/schema/searchchains.rnc')
-rw-r--r-- | config-model/src/main/resources/schema/searchchains.rnc | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/config-model/src/main/resources/schema/searchchains.rnc b/config-model/src/main/resources/schema/searchchains.rnc new file mode 100644 index 00000000000..8b11b900557 --- /dev/null +++ b/config-model/src/main/resources/schema/searchchains.rnc @@ -0,0 +1,74 @@ +# Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +#Schema for search chains and searchers inside the searchchains section. + +include "federation.rnc" + +SearchChains = + element searchchains { + Searcher* & + SearchChainInQrservers* & + GenericConfig* + } + +# TODO: Cannot have generic config (see bug #4766780) +OuterSearchChains = + element searchchains { + Searcher* & + SearchChainInQrservers* & + GenericConfig* # TODO: Remove when we no longer need the QRServersV2 syntax (qrs without clusters) + } + +SearchChainInQrservers = + element searchchain { + GenericSearchChainInQrservers + } | + Provider + +GenericSearchChainInQrservers = + ComponentId & + SearchChainInheritanceInQrservers & + attribute searchers { text }? & + Searcher* & + Phase* & + GenericConfig* + +SearchChainInheritanceInQrservers = + attribute inherits { text }? & + attribute excludes { text }? & + element inherits { + element searchchain { ComponentSpec }* & + element exclude { ComponentSpec }* + }? + +Searcher = + RegularSearcher | + FederationSearcher + +RegularSearcher = + element searcher { + BundleSpec & + GenericSearcherOrDocumentProcessor + } + + +GenericSearcherOrDocumentProcessor = + ComponentId & + SearcherOrDocumentProcessorDependencies & + GenericConfig* + +SearcherOrDocumentProcessorDependencies = + Dependencies & + attribute provides { text }? & + element provides { xsd:Name }* + +Dependencies = + attribute before { text }? & + attribute after { text }? & + element before { xsd:Name }* & + element after { xsd:Name }* + +Phase = + element phase { + ComponentId & + Dependencies + } |