Download presentation
Presentation is loading. Please wait.
Published byLesley Atkinson Modified over 9 years ago
1
Representing Netconf Data Models using Document Schema Definition Languages (DSDL) Rohan Mahy Sharon Chisholm Lada Lhotka IETF 72 - Dublin
2
Outline What is DSDL? Scope of DSDL for NETCONF Overview Drafts Vocabularies Used Next Steps Open Issues
3
What is DSDL? DSDL = Document Schema Definition Languages (http://www.dsdl.org) Family of standards ISO/IEC 19757 DSDL uses a modular approach to schema languages Part 1: Overview Part 2: RELAX NG – regular-grammar-based validation Part 3: Schematron – rule-based validation Part 4: NVDL – Namespace-based Validation Language Part 5: DTLL – Data Type Library Language Part 6: Path-based integrity constraints Part 7: CRDL – Character Repertoire Description Language Part 8: DSRL – Document Schema Renaming Language Part 9: Datatype- and Namespace-aware DTDs Part 10: Validation management
4
Scope of DSDL for NETCONF Human-friendly Language (Yang) Tool-friendly Language (DSDL for NETCONF) NETMOD Requirements (as determined by WG) Vanilla DSDL The goal is a theoretical two-way mapping of features, and a real non-lossy one- way mapping.
5
Overview A layered approach leveraging existing DSDL technologies Off-the-shelf tools/libraries can be immediately used for validation, instance editing and transformations (XSLT) The smarter the tool/library, the more semantics can be validated or processed but even baseline tools can do useful work The mapping uses 3 parts of the DSDL standard (ISO/IEC 19757), two standard annotation vocabularies and several new NETMOD-specific annotations A software tool is available that translates most of YANG semantics Output is an annotated RELAX NG schema
6
draft-mahy-canmod-dsdl-02 Reworked to fit into NETMOD framework, rather then as a proposal to CANMOD BOF Made some tweaks to make mapping from yang easier (infoType, for example) Started section mapping to yang; As yang is a moving target, does not go into excruciating detail yet. Points to –lhotka for container mapping Identified some points requiring NETMOD-level discussion Most of which have been raised on mailing list; rest coming soon
7
draft-lhotka-yang-dsdl-map-00 New individual draft summarizing the experience from implementing YANG->DSDL translator – plugin for pyang application Very complementary to -mahy draft It tries to formulate principles that the WG mapping draft should state It contains a section describing mapping details for each YANG statement.
8
Vocabularies Used RELAX NG – grammatic constraints, datatypes Schematron – semantic constraints, user-specified rules (must statement in YANG) DSRL – default values of leaf nodes Dublin Core terms – module metadata (author, revision,...) RELAX NG DTD compatibility annotations – YANG description and reference. NETMOD-specific annotations – few new attributes attached to RELAX NG.
9
Next Steps The implementation revealed several issues that have to be resolved (preferable in Dublin); some of them may require changes or clarifications in YANG. Finish the chartered DSDL mapping draft (due in September 08). It will be based on merging two existing individual drafts: draft-mahy-canmod-dsdl-02 draft-lhotka-yang-dsdl-map-00 Update the implementation: alignment with the draft implement mappings of YANG extension mechanisms
10
Major Open Issues Handling of rpc and notification YANG allows multiple root nodes, XML just one. (For a complete list of issues, visit the NETMOD session on Friday)
11
rpc and notification YANG modules describe the contents of agent configuration datastores, with two exceptions: rpc specifies signature of a new NETCONF RPC method. notification defines a NETCONF notification. Options: 1.Generate separate schemas for the configuration data tree, RPCs and notifications. 2.Work with a „conceptual tree“ that harbors the three types of content in different subtrees.
12
Multiple Root Nodes YANG allows for multiple root nodes, but well- formed XML document must have exactly one. Options: 1.Remove this possibility from YANG – „conceptual tree“ (again) – multiple root nodes of the YANG module will appear under an artificial root node.
13
Backup Conceptual tree
14
Example Conceptual Tree...main configuration data tree......rpcs......notifications...
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.