Hi Benoit, >> In RFC 8199, we made a distinction between model and YANG modules. >> This is why we defined the terms "Network Service YANG modules" and >> "Network Element YANG modules" and not models. You should follow this >> convention. After all, from the abstract, this document focuses on YANG. >> Ex: should "model" be replaced by "YANG module"? > > The definition imported from 7950 by 8199 looks like a reasonable distinction > and we will attempt to apply it here. I hope I am not importing too much > thought from SMI but isn't a "model" built from one or modules? A model is > used to "model" some larger entity or function, while a module is used to > describe a component of an entity or a granular function. > > Probably just some cleanup needed through this document. I'll have a go.
Well, now I'm struggling and I wonder if you can help. What I see from 7950 is that a "YANG module" is a compilable blob of YANG that may include other modules or specific constructs from another module. That is clear enough. What is less clear is what a "data model" is or is not. I think that if, for example, I wanted to model a router, I would construct a data model from one or mode YANG modules that encode various aspects of the router. You could, I suppose, present that construct as a module its own right. And that leads me to ask you when it is appropriate to use term "data model". 8199 doesn't offer me a lot of clarity. For example, section 1 says: For example, a Layer 2 Virtual Private Network (L2VPN) YANG module might be a Network Service YANG Module, ready to be used as a service model by a network operator. Later (in 2.1) it says that a module "describes an abstract model" And (in 2.2) that a module "provides a coherent data model representation" All this means (I think) that modules are documentation, but models are used. It's all a bit esoteric for me and I can't find a way forward :-( What I want to do is observe that: - Modules a constructed from YANG and may include other whole YANG modules or specific elements from other YANG modules - Modules describe may define pieces of modelling that are only useful when applied in a context. For example, a module might define a YANG construct for a timestamp or an interface, but those constructs would only be useful when included in another module that gave context to the timestamp or interface. - Modules may also describe data models for components or sub-components of a managed system (often by including YANG from other modules). - Not all modules provide data models that are independently useful, but some do. And one example is that when we want to model something like a service, we use a service model that is presented in a single YANG module. Thus, it is perfectly reasonable that 7223 is called "A YANG Data Model for Interface Management" and 8049 is a "YANG Data Model for L3VPN Service Delivery". So, my inclination is to include pointers to the 7950 definitions, and to carefully re-read the text in our draft, but not to make a wholesale change of terms. Any clues? Thanks, Adrian _______________________________________________ OPSAWG mailing list OPSAWG@ietf.org https://www.ietf.org/mailman/listinfo/opsawg