diff options
author | Daniil Baturin <daniil@baturin.org> | 2017-01-04 18:18:56 +0700 |
---|---|---|
committer | Daniil Baturin <daniil@baturin.org> | 2017-01-04 18:18:56 +0700 |
commit | 23076d3265dbfb17fe30f70aaaf74ca0a9c6cc6b (patch) | |
tree | 39ebd4499fa346daf4c828b36ffeddf1388bf068 /data | |
parent | e879c065272dc0719c0f2f91db642c315447c781 (diff) | |
download | vyconf-23076d3265dbfb17fe30f70aaaf74ca0a9c6cc6b.tar.gz vyconf-23076d3265dbfb17fe30f70aaaf74ca0a9c6cc6b.zip |
Add an RNG XML version of the component definition schema.
Diffstat (limited to 'data')
-rw-r--r-- | data/schemata/component_definition.rng | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/data/schemata/component_definition.rng b/data/schemata/component_definition.rng new file mode 100644 index 0000000..aeae0fd --- /dev/null +++ b/data/schemata/component_definition.rng @@ -0,0 +1,77 @@ +<?xml version="1.0" encoding="UTF-8"?> +<grammar xmlns="http://relaxng.org/ns/structure/1.0"> + <!-- + component_definition.rnc: VyConf component definition XML grammar + + Copyright (C) 2014 VyOS Development Group <maintainers@vyos.net> + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 + USA + --> + <start> + <element name="component"> + <ref name="nameAttr"/> + <zeroOrMore> + <ref name="description"/> + </zeroOrMore> + <zeroOrMore> + <ref name="dependencies"/> + </zeroOrMore> + <ref name="executables"/> + </element> + </start> + <define name="nameAttr"> + <attribute name="name"/> + </define> + <define name="description"> + <element name="description"> + <text/> + </element> + </define> + <define name="dependencies"> + <element name="dependencies"> + <oneOrMore> + <ref name="dependency"/> + </oneOrMore> + </element> + </define> + <define name="dependency"> + <element name="dependency"> + <text/> + </element> + </define> + <define name="executables"> + <element name="executables"> + <ref name="verify"/> + <ref name="update"/> + <ref name="apply"/> + </element> + </define> + <define name="verify"> + <element name="verify"> + <text/> + </element> + </define> + <define name="update"> + <element name="update"> + <text/> + </element> + </define> + <define name="apply"> + <element name="apply"> + <text/> + </element> + </define> +</grammar> |