RELAX NG Schema for YIN
Ladislav Lhotka
2009-03-03
YIN, XML syntax for YANG
urn:ietf:params:xml:ns:yang:yin:1
RELAX NG schema defines grammar for data models
expressed in YIN, an XML syntax equivalent to YANG.
The document element may be either "module" or "submodule.
1
int8
int16
int32
int64
uint8
uint16
uint32
uint64
float32
float64
string
enumeration
bits
binary
leafref
identityref
union
instance-identifier
current
obsolete
deprecated
user
system
unbounded
[_A-Za-z][_\-A-Za-z0-9.]*
([_A-Za-z][_\-A-Za-z0-9.]*:)?[_A-Za-z][_\-A-Za-z0-9.]*
\s*(-INF|INF|min|max|\-?(0|[1-9][0-9]*)(\.[0-9]+(E[\-+]?[0-9]+)?)?)(\s*\.\.\s*(-INF|INF|min|max|\-?(0|[1-9][0-9]*)(\.[0-9]+(E[\-+]?[0-9]+)?)?))?(\s*\|\s*(-INF|INF|min|max|\-?(0|[1-9][0-9]*)(\.[0-9]+(E[\-+]?[0-9]+)?)?)(\s*\.\.\s*(-INF|INF|min|max|\-?(0|[1-9][0-9]*)(\.[0-9]+(E[\-+]?[0-9]+)?)?))?)*\s*
\s*(min|max|(0|[1-9][0-9]*))(\s*\.\.\s*(min|max|(0|[1-9][0-9]*)))?(\s*\|\s*(min|max|(0|[1-9][0-9]*))(\s*\.\.\s*(min|max|(0|[1-9][0-9]*)))?)*\s*
((/([_A-Za-z][._\-A-Za-z0-9]*:)?[_A-Za-z][._\-A-Za-z0-9]*(\[\s*([_A-Za-z][._\-A-Za-z0-9]*:)?[_A-Za-z][._\-A-Za-z0-9]*\s*=\s*([$]this/(\.\./)+(([_A-Za-z][._\-A-Za-z0-9]*:)?[_A-Za-z][._\-A-Za-z0-9]*/)*([_A-Za-z][._\-A-Za-z0-9]*:)?[_A-Za-z][._\-A-Za-z0-9]*)\s*\])*)+|(\.\./)*([_A-Za-z][._\-A-Za-z0-9]*:)?[_A-Za-z][._\-A-Za-z0-9]*(\[\s*([_A-Za-z][._\-A-Za-z0-9]*:)?[_A-Za-z][._\-A-Za-z0-9]*\s*=\s*([$]this/(\.\./)+(([_A-Za-z][._\-A-Za-z0-9]*:)?[_A-Za-z][._\-A-Za-z0-9]*/)*([_A-Za-z][._\-A-Za-z0-9]*:)?[_A-Za-z][._\-A-Za-z0-9]*)\s*\])?(/([_A-Za-z][._\-A-Za-z0-9]*:)?[_A-Za-z][._\-A-Za-z0-9]*(\[\s*([_A-Za-z][._\-A-Za-z0-9]*:)?[_A-Za-z][._\-A-Za-z0-9]*\s*=\s*([$]this/(\.\./)+(([_A-Za-z][._\-A-Za-z0-9]*:)?[_A-Za-z][._\-A-Za-z0-9]*/)*([_A-Za-z][._\-A-Za-z0-9]*:)?[_A-Za-z][._\-A-Za-z0-9]*)\s*\])*)+)
(/([_A-Za-z][._\-A-Za-z0-9]*:)?[_A-Za-z][._\-A-Za-z0-9]*)+
([_A-Za-z][._\-A-Za-z0-9]*:)?[_A-Za-z][._\-A-Za-z0-9]*(/([_A-Za-z][._\-A-Za-z0-9]*:)?[_A-Za-z][._\-A-Za-z0-9]*)*