[Nml-wg] NML-NSI integration

Freek Dijkstra Freek.Dijkstra at sara.nl
Fri Feb 17 10:28:13 EST 2012


Hi all,

A port can have many properties. It can be abstract, Ethernet, (NSI)
domain boundary port, have restricted access, be part of a link bundle.

What I want to avoid is having to deal with namespaces and objects such
as <nml-nsi-ethernet-restricted-lacp:port>

> If we allow adding new tags as extensions in any place in the structure
> then we don't have too much control over the structure. Generic parsers
> will not know how to interpret such unexpected (not included in the base
> NML schema) changes. On the contrary, namespaces as extensions allow
> parsers to, at least, understand their standard properties, others would
> be ignored. The structures defined in the base NML schema are still
> followed. (Of course it is possible to define a schema in such way that
> any element could be inserted in any place but I don't think it's the
> right direction).

The RNC schema you created last year DID allow arbitrary elements inside
NML elements.

I think I misunderstand you. In particular, I do not understand the
sentence "namespaces as extensions allow parsers to, at least,
understand their standard properties."

Are you talking about chameleon namespaces?

I assume that:

* NML elements can contain arbitrary child elements, from the NML or
other namespace
* if a parser encounters an unknown element from a known namespace, it
should stop and return an error
* if a parser encounters an element from a unknown namespace, it should
ignore it (or -if we define chameleon namespaces- interpret as if it was
part of the base namespace)
(Note that in this case, I'm unclear how a parser should distinguish
between a chameleon namespace and a proprietary namespace which can
safely be ignored.)

Could you perhaps give an example of a message containing NML and NSI
information, and explain how a parser which only understands NML sees
it, and how a parsers understands both NML and NSI sees it, and if
either should ignore unknown elements or stop and return an error?

Freek


More information about the nml-wg mailing list