aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2014-06-30 15:49:51 +0000
committerRob Austein <sra@hactrn.net>2014-06-30 15:49:51 +0000
commita6f733f52772a9cfdc38822c6f252d0aa8fa7041 (patch)
treeccc60f1e12be4133ecbe13ab4bedad9adb33d1e6
parent8cd68f586a8a6e42a62bc9ca6de0d5942fb7b45b (diff)
regen
svn path=/branches/tk705/; revision=5878
-rw-r--r--rpki/relaxng.py230
-rw-r--r--schemas/relaxng/left-right-schema.rng2
-rw-r--r--schemas/relaxng/myrpki.rng2
-rw-r--r--schemas/relaxng/publication-schema.rng2
-rw-r--r--schemas/relaxng/router-certificate-schema.rng2
-rw-r--r--schemas/relaxng/rrdp.rng220
-rw-r--r--schemas/relaxng/up-down-schema.rng2
7 files changed, 168 insertions, 292 deletions
diff --git a/rpki/relaxng.py b/rpki/relaxng.py
index 96064e16..054ee237 100644
--- a/rpki/relaxng.py
+++ b/rpki/relaxng.py
@@ -6,7 +6,7 @@ import lxml.etree
## Parsed RelaxNG left_right schema
left_right = lxml.etree.RelaxNG(lxml.etree.fromstring(r'''<?xml version="1.0" encoding="UTF-8"?>
<!--
- $Id: left-right-schema.rnc 5845 2014-05-29 22:31:15Z sra $
+ $Id: left-right-schema.rnc 5876 2014-06-26 19:00:12Z sra $
RelaxNG schema for RPKI left-right protocol.
@@ -1099,7 +1099,7 @@ left_right = lxml.etree.RelaxNG(lxml.etree.fromstring(r'''<?xml version="1.0" en
## Parsed RelaxNG myrpki schema
myrpki = lxml.etree.RelaxNG(lxml.etree.fromstring(r'''<?xml version="1.0" encoding="UTF-8"?>
<!--
- $Id: myrpki.rnc 5757 2014-04-05 22:42:12Z sra $
+ $Id: myrpki.rnc 5876 2014-06-26 19:00:12Z sra $
RelaxNG schema for MyRPKI XML messages.
@@ -1482,7 +1482,7 @@ myrpki = lxml.etree.RelaxNG(lxml.etree.fromstring(r'''<?xml version="1.0" encodi
## Parsed RelaxNG publication schema
publication = lxml.etree.RelaxNG(lxml.etree.fromstring(r'''<?xml version="1.0" encoding="UTF-8"?>
<!--
- $Id: publication-schema.rnc 5845 2014-05-29 22:31:15Z sra $
+ $Id: publication-schema.rnc 5876 2014-06-26 19:00:12Z sra $
RelaxNG schema for RPKI publication protocol.
@@ -2060,7 +2060,7 @@ publication = lxml.etree.RelaxNG(lxml.etree.fromstring(r'''<?xml version="1.0" e
## Parsed RelaxNG router_certificate schema
router_certificate = lxml.etree.RelaxNG(lxml.etree.fromstring(r'''<?xml version="1.0" encoding="UTF-8"?>
<!--
- $Id: router-certificate-schema.rnc 5757 2014-04-05 22:42:12Z sra $
+ $Id: router-certificate-schema.rnc 5876 2014-06-26 19:00:12Z sra $
RelaxNG schema for BGPSEC router certificate interchange format.
@@ -2162,7 +2162,7 @@ router_certificate = lxml.etree.RelaxNG(lxml.etree.fromstring(r'''<?xml version=
## Parsed RelaxNG rrdp schema
rrdp = lxml.etree.RelaxNG(lxml.etree.fromstring(r'''<?xml version="1.0" encoding="UTF-8"?>
<!--
- $Id: rrdp.rnc 5875 2014-06-26 17:48:53Z sra $
+ $Id: rrdp.rnc 5877 2014-06-30 15:48:47Z sra $
RelaxNG schema for RPKI Repository Delta Protocol (RRDP).
@@ -2181,15 +2181,6 @@ rrdp = lxml.etree.RelaxNG(lxml.etree.fromstring(r'''<?xml version="1.0" encoding
PERFORMANCE OF THIS SOFTWARE.
-->
<grammar ns="http://www.ripe.net/rpki/rrdp" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
- <!--
- I find the use of "version" for both the protocol version and the database version
- unncessarily confusing, so I'd prefer "serial" for the latter. For the moment,
- I'm keeping the attribute names as in Tim's document and just using "serial" for
- the data type.
-
- The xsd:string types here are me being lazy in the initial version.
- We should also think about length limits for all of these types.
- -->
<define name="version">
<data type="positiveInteger">
<param name="maxInclusive">1</param>
@@ -2202,168 +2193,115 @@ rrdp = lxml.etree.RelaxNG(lxml.etree.fromstring(r'''<?xml version="1.0" encoding
<data type="anyURI"/>
</define>
<define name="uuid">
- <data type="string"/>
+ <data type="string">
+ <param name="pattern">[\-0-9a-fA-F]+</param>
+ </data>
</define>
- <define name="sha256">
- <data type="string"/>
+ <define name="hash">
+ <data type="string">
+ <param name="pattern">[0-9a-fA-F]+</param>
+ </data>
</define>
<define name="base64">
<data type="base64Binary"/>
</define>
- <define name="index">
- <data type="positiveInteger"/>
- </define>
- <!--
- Notification file: lists current snapshots and deltas
-
- We want to get rid of the multiple segment thing from Tim's original
- specification. I think this means that the multiple
- <snapshot-segment/> elements collapse down to a single snapshot, the
- attributes of which probably float up to the <snapshot/> element.
- Or maybe we just require exactly one snapshot-segment element; it's
- a bit verbose, but leaves an easy way to change our minds later,
- and it's XML so who's going to notice one more element?
-
- Specify as in the -01 draft for the moment, simplify later.
- -->
+ <!-- Notification file: lists current snapshots and deltas -->
<start combine="choice">
- <element name="msg">
+ <element name="notification">
<attribute name="version">
<ref name="version"/>
</attribute>
- <attribute name="type">
- <value>notification</value>
+ <attribute name="session_id">
+ <ref name="uuid"/>
</attribute>
- <element name="notification">
- <attribute name="session_id">
- <ref name="uuid"/>
+ <attribute name="serial">
+ <ref name="serial"/>
+ </attribute>
+ <element name="snapshot">
+ <attribute name="uri">
+ <ref name="uri"/>
</attribute>
- <attribute name="current_version">
- <ref name="serial"/>
+ <attribute name="hash">
+ <ref name="hash"/>
</attribute>
- <element name="snapshot">
- <attribute name="version">
+ </element>
+ <oneOrMore>
+ <element name="delta">
+ <attribute name="from">
<ref name="serial"/>
</attribute>
- <oneOrMore>
- <element name="snapshot-segment">
- <attribute name="uri">
- <ref name="uri"/>
- </attribute>
- <attribute name="hash">
- <ref name="sha256"/>
- </attribute>
- </element>
- </oneOrMore>
+ <attribute name="to">
+ <ref name="serial"/>
+ </attribute>
+ <attribute name="uri">
+ <ref name="uri"/>
+ </attribute>
+ <attribute name="hash">
+ <ref name="hash"/>
+ </attribute>
</element>
- <optional>
- <element name="deltas">
- <oneOrMore>
- <element name="delta-segment">
- <attribute name="from">
- <ref name="serial"/>
- </attribute>
- <attribute name="to">
- <ref name="serial"/>
- </attribute>
- <attribute name="uri">
- <ref name="uri"/>
- </attribute>
- <attribute name="hash">
- <ref name="sha256"/>
- </attribute>
- </element>
- </oneOrMore>
- </element>
- </optional>
- </element>
+ </oneOrMore>
</element>
</start>
- <!--
- If we're getting rid of multiple snapshot segments, I think the
- index attributes go away.
-
- -01 is a bit vague on <publish/> and <withdraw/> elements:
- Zero-or-more? One-or-more? Does "exact copy" include using the
- publication protocol's XML namespace instead of RRDP's? Tag
- attribute allowed? Wing it for now.
- -->
<!-- Snapshot segment: think DNS AXFR. -->
<start combine="choice">
- <element name="msg">
+ <element name="snapshot">
<attribute name="version">
<ref name="version"/>
</attribute>
- <attribute name="type">
- <value>snapshot</value>
+ <attribute name="session_id">
+ <ref name="uuid"/>
</attribute>
- <element name="snapshot">
- <attribute name="session_id">
- <ref name="uuid"/>
- </attribute>
- <attribute name="repository_version">
- <ref name="serial"/>
- </attribute>
- <attribute name="index">
- <ref name="index"/>
- </attribute>
- <zeroOrMore>
- <element name="publish">
- <attribute name="uri">
- <ref name="uri"/>
- </attribute>
- <ref name="base64"/>
- </element>
- </zeroOrMore>
- </element>
+ <attribute name="serial">
+ <ref name="serial"/>
+ </attribute>
+ <zeroOrMore>
+ <element name="publish">
+ <attribute name="uri">
+ <ref name="uri"/>
+ </attribute>
+ <ref name="base64"/>
+ </element>
+ </zeroOrMore>
</element>
</start>
<!-- Delta segment: think DNS IXFR. -->
- <!-- -01 doesn't say whether <delta/> is zero-or-more or one-or-more. -->
<start combine="choice">
- <element name="msg">
+ <element name="deltas">
<attribute name="version">
<ref name="version"/>
</attribute>
- <attribute name="type">
- <value>deltas</value>
+ <attribute name="session_id">
+ <ref name="uuid"/>
</attribute>
- <element name="deltas">
- <attribute name="session_id">
- <ref name="uuid"/>
- </attribute>
- <attribute name="from">
- <ref name="serial"/>
- </attribute>
- <attribute name="to">
- <ref name="serial"/>
- </attribute>
- <attribute name="index">
- <ref name="index"/>
- </attribute>
- <zeroOrMore>
- <element name="delta">
- <attribute name="version">
- <ref name="serial"/>
- </attribute>
- <zeroOrMore>
- <choice>
- <element name="publish">
- <attribute name="uri">
- <ref name="uri"/>
- </attribute>
- <ref name="base64"/>
- </element>
- <element name="withdraw">
- <attribute name="uri">
- <ref name="uri"/>
- </attribute>
- </element>
- </choice>
- </zeroOrMore>
- </element>
- </zeroOrMore>
- </element>
+ <attribute name="from">
+ <ref name="serial"/>
+ </attribute>
+ <attribute name="to">
+ <ref name="serial"/>
+ </attribute>
+ <oneOrMore>
+ <element name="delta">
+ <attribute name="serial">
+ <ref name="serial"/>
+ </attribute>
+ <oneOrMore>
+ <choice>
+ <element name="publish">
+ <attribute name="uri">
+ <ref name="uri"/>
+ </attribute>
+ <ref name="base64"/>
+ </element>
+ <element name="withdraw">
+ <attribute name="uri">
+ <ref name="uri"/>
+ </attribute>
+ </element>
+ </choice>
+ </oneOrMore>
+ </element>
+ </oneOrMore>
</element>
</start>
</grammar>
@@ -2380,7 +2318,7 @@ rrdp = lxml.etree.RelaxNG(lxml.etree.fromstring(r'''<?xml version="1.0" encoding
## Parsed RelaxNG up_down schema
up_down = lxml.etree.RelaxNG(lxml.etree.fromstring(r'''<?xml version="1.0" encoding="UTF-8"?>
<!--
- $Id: up-down-schema.rnc 5757 2014-04-05 22:42:12Z sra $
+ $Id: up-down-schema.rnc 5876 2014-06-26 19:00:12Z sra $
RelaxNG schema for the up-down protocol, extracted from RFC 6492.
diff --git a/schemas/relaxng/left-right-schema.rng b/schemas/relaxng/left-right-schema.rng
index c5708be1..07ef52c7 100644
--- a/schemas/relaxng/left-right-schema.rng
+++ b/schemas/relaxng/left-right-schema.rng
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- $Id: left-right-schema.rnc 5845 2014-05-29 22:31:15Z sra $
+ $Id: left-right-schema.rnc 5876 2014-06-26 19:00:12Z sra $
RelaxNG schema for RPKI left-right protocol.
diff --git a/schemas/relaxng/myrpki.rng b/schemas/relaxng/myrpki.rng
index 8c7473eb..3beafe8f 100644
--- a/schemas/relaxng/myrpki.rng
+++ b/schemas/relaxng/myrpki.rng
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- $Id: myrpki.rnc 5757 2014-04-05 22:42:12Z sra $
+ $Id: myrpki.rnc 5876 2014-06-26 19:00:12Z sra $
RelaxNG schema for MyRPKI XML messages.
diff --git a/schemas/relaxng/publication-schema.rng b/schemas/relaxng/publication-schema.rng
index c257b6bc..aac61eae 100644
--- a/schemas/relaxng/publication-schema.rng
+++ b/schemas/relaxng/publication-schema.rng
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- $Id: publication-schema.rnc 5845 2014-05-29 22:31:15Z sra $
+ $Id: publication-schema.rnc 5876 2014-06-26 19:00:12Z sra $
RelaxNG schema for RPKI publication protocol.
diff --git a/schemas/relaxng/router-certificate-schema.rng b/schemas/relaxng/router-certificate-schema.rng
index 90b50107..7ba0dd60 100644
--- a/schemas/relaxng/router-certificate-schema.rng
+++ b/schemas/relaxng/router-certificate-schema.rng
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- $Id: router-certificate-schema.rnc 5757 2014-04-05 22:42:12Z sra $
+ $Id: router-certificate-schema.rnc 5876 2014-06-26 19:00:12Z sra $
RelaxNG schema for BGPSEC router certificate interchange format.
diff --git a/schemas/relaxng/rrdp.rng b/schemas/relaxng/rrdp.rng
index a36d60b1..d2c4e6de 100644
--- a/schemas/relaxng/rrdp.rng
+++ b/schemas/relaxng/rrdp.rng
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- $Id: rrdp.rnc 5875 2014-06-26 17:48:53Z sra $
+ $Id: rrdp.rnc 5877 2014-06-30 15:48:47Z sra $
RelaxNG schema for RPKI Repository Delta Protocol (RRDP).
@@ -19,15 +19,6 @@
PERFORMANCE OF THIS SOFTWARE.
-->
<grammar ns="http://www.ripe.net/rpki/rrdp" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
- <!--
- I find the use of "version" for both the protocol version and the database version
- unncessarily confusing, so I'd prefer "serial" for the latter. For the moment,
- I'm keeping the attribute names as in Tim's document and just using "serial" for
- the data type.
-
- The xsd:string types here are me being lazy in the initial version.
- We should also think about length limits for all of these types.
- -->
<define name="version">
<data type="positiveInteger">
<param name="maxInclusive">1</param>
@@ -40,168 +31,115 @@
<data type="anyURI"/>
</define>
<define name="uuid">
- <data type="string"/>
+ <data type="string">
+ <param name="pattern">[\-0-9a-fA-F]+</param>
+ </data>
</define>
- <define name="sha256">
- <data type="string"/>
+ <define name="hash">
+ <data type="string">
+ <param name="pattern">[0-9a-fA-F]+</param>
+ </data>
</define>
<define name="base64">
<data type="base64Binary"/>
</define>
- <define name="index">
- <data type="positiveInteger"/>
- </define>
- <!--
- Notification file: lists current snapshots and deltas
-
- We want to get rid of the multiple segment thing from Tim's original
- specification. I think this means that the multiple
- <snapshot-segment/> elements collapse down to a single snapshot, the
- attributes of which probably float up to the <snapshot/> element.
- Or maybe we just require exactly one snapshot-segment element; it's
- a bit verbose, but leaves an easy way to change our minds later,
- and it's XML so who's going to notice one more element?
-
- Specify as in the -01 draft for the moment, simplify later.
- -->
+ <!-- Notification file: lists current snapshots and deltas -->
<start combine="choice">
- <element name="msg">
+ <element name="notification">
<attribute name="version">
<ref name="version"/>
</attribute>
- <attribute name="type">
- <value>notification</value>
+ <attribute name="session_id">
+ <ref name="uuid"/>
</attribute>
- <element name="notification">
- <attribute name="session_id">
- <ref name="uuid"/>
+ <attribute name="serial">
+ <ref name="serial"/>
+ </attribute>
+ <element name="snapshot">
+ <attribute name="uri">
+ <ref name="uri"/>
</attribute>
- <attribute name="current_version">
- <ref name="serial"/>
+ <attribute name="hash">
+ <ref name="hash"/>
</attribute>
- <element name="snapshot">
- <attribute name="version">
+ </element>
+ <oneOrMore>
+ <element name="delta">
+ <attribute name="from">
<ref name="serial"/>
</attribute>
- <oneOrMore>
- <element name="snapshot-segment">
- <attribute name="uri">
- <ref name="uri"/>
- </attribute>
- <attribute name="hash">
- <ref name="sha256"/>
- </attribute>
- </element>
- </oneOrMore>
+ <attribute name="to">
+ <ref name="serial"/>
+ </attribute>
+ <attribute name="uri">
+ <ref name="uri"/>
+ </attribute>
+ <attribute name="hash">
+ <ref name="hash"/>
+ </attribute>
</element>
- <optional>
- <element name="deltas">
- <oneOrMore>
- <element name="delta-segment">
- <attribute name="from">
- <ref name="serial"/>
- </attribute>
- <attribute name="to">
- <ref name="serial"/>
- </attribute>
- <attribute name="uri">
- <ref name="uri"/>
- </attribute>
- <attribute name="hash">
- <ref name="sha256"/>
- </attribute>
- </element>
- </oneOrMore>
- </element>
- </optional>
- </element>
+ </oneOrMore>
</element>
</start>
- <!--
- If we're getting rid of multiple snapshot segments, I think the
- index attributes go away.
-
- -01 is a bit vague on <publish/> and <withdraw/> elements:
- Zero-or-more? One-or-more? Does "exact copy" include using the
- publication protocol's XML namespace instead of RRDP's? Tag
- attribute allowed? Wing it for now.
- -->
<!-- Snapshot segment: think DNS AXFR. -->
<start combine="choice">
- <element name="msg">
+ <element name="snapshot">
<attribute name="version">
<ref name="version"/>
</attribute>
- <attribute name="type">
- <value>snapshot</value>
+ <attribute name="session_id">
+ <ref name="uuid"/>
</attribute>
- <element name="snapshot">
- <attribute name="session_id">
- <ref name="uuid"/>
- </attribute>
- <attribute name="repository_version">
- <ref name="serial"/>
- </attribute>
- <attribute name="index">
- <ref name="index"/>
- </attribute>
- <zeroOrMore>
- <element name="publish">
- <attribute name="uri">
- <ref name="uri"/>
- </attribute>
- <ref name="base64"/>
- </element>
- </zeroOrMore>
- </element>
+ <attribute name="serial">
+ <ref name="serial"/>
+ </attribute>
+ <zeroOrMore>
+ <element name="publish">
+ <attribute name="uri">
+ <ref name="uri"/>
+ </attribute>
+ <ref name="base64"/>
+ </element>
+ </zeroOrMore>
</element>
</start>
<!-- Delta segment: think DNS IXFR. -->
- <!-- -01 doesn't say whether <delta/> is zero-or-more or one-or-more. -->
<start combine="choice">
- <element name="msg">
+ <element name="deltas">
<attribute name="version">
<ref name="version"/>
</attribute>
- <attribute name="type">
- <value>deltas</value>
+ <attribute name="session_id">
+ <ref name="uuid"/>
</attribute>
- <element name="deltas">
- <attribute name="session_id">
- <ref name="uuid"/>
- </attribute>
- <attribute name="from">
- <ref name="serial"/>
- </attribute>
- <attribute name="to">
- <ref name="serial"/>
- </attribute>
- <attribute name="index">
- <ref name="index"/>
- </attribute>
- <zeroOrMore>
- <element name="delta">
- <attribute name="version">
- <ref name="serial"/>
- </attribute>
- <zeroOrMore>
- <choice>
- <element name="publish">
- <attribute name="uri">
- <ref name="uri"/>
- </attribute>
- <ref name="base64"/>
- </element>
- <element name="withdraw">
- <attribute name="uri">
- <ref name="uri"/>
- </attribute>
- </element>
- </choice>
- </zeroOrMore>
- </element>
- </zeroOrMore>
- </element>
+ <attribute name="from">
+ <ref name="serial"/>
+ </attribute>
+ <attribute name="to">
+ <ref name="serial"/>
+ </attribute>
+ <oneOrMore>
+ <element name="delta">
+ <attribute name="serial">
+ <ref name="serial"/>
+ </attribute>
+ <oneOrMore>
+ <choice>
+ <element name="publish">
+ <attribute name="uri">
+ <ref name="uri"/>
+ </attribute>
+ <ref name="base64"/>
+ </element>
+ <element name="withdraw">
+ <attribute name="uri">
+ <ref name="uri"/>
+ </attribute>
+ </element>
+ </choice>
+ </oneOrMore>
+ </element>
+ </oneOrMore>
</element>
</start>
</grammar>
diff --git a/schemas/relaxng/up-down-schema.rng b/schemas/relaxng/up-down-schema.rng
index 89235b7e..ba1f20ca 100644
--- a/schemas/relaxng/up-down-schema.rng
+++ b/schemas/relaxng/up-down-schema.rng
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- $Id: up-down-schema.rnc 5757 2014-04-05 22:42:12Z sra $
+ $Id: up-down-schema.rnc 5876 2014-06-26 19:00:12Z sra $
RelaxNG schema for the up-down protocol, extracted from RFC 6492.