@Immutable
public interface Module extends DataNodeContainer, SourceStreamAware, ModuleIdentifier, NotificationNodeContainer {
/**
- * Default openconfig version of Module.
+ * Default semantic version of Module.
*/
- SemVer DEFAULT_OPENCONFIG_VERSION = SemVer.create(0, 0, 0);
+ SemVer DEFAULT_SEMANTIC_VERSION = SemVer.create(0, 0, 0);
/**
* Returns the prefix of the module
Date getRevision();
/**
- * Returns the openconfig version of yang module.
+ * Returns the semantic version of yang module.
*
- * If the openconfig version is not specified, default openconfig version of
+ * If the semantic version is not specified, default semantic version of
* module is returned.
*
- * @return SemVer openconfig version of yang module which is specified as
+ * @return SemVer semantic version of yang module which is specified as
* argument of
- * (http://openconfig.net/yang/openconfig-ext)openconfig-version statement
+ * (urn:opendaylight:yang:extension:semantic-version?revision
+ * =2016-02-02)semantic-version statement
*/
- default SemVer getOpenconfigVersion() {
- return Module.DEFAULT_OPENCONFIG_VERSION;
+ default SemVer getSemanticVersion() {
+ return Module.DEFAULT_SEMANTIC_VERSION;
}
}
Date getRevision();
/**
- * @return Openconfig version of module to import
+ * @return Semantic version of module to import
*/
- default SemVer getOpenconfigVersion() {
- return Module.DEFAULT_OPENCONFIG_VERSION;
+ default SemVer getSemanticVersion() {
+ return Module.DEFAULT_SEMANTIC_VERSION;
}
/**
import org.opendaylight.yangtools.yang.model.api.Module;
/**
- * YANG Schema source identifier with specified openconfig version
+ * YANG Schema source identifier with specified semantic version
*
* Simple transfer object represents identifier of source for YANG schema
* (module or submodule), which consists of
* <ul>
* <li>YANG schema name {@link #getName()}
- * <li>Openconfig version of yang schema {@link #getOpenconfigVersion()}
+ * <li>Semantic version of yang schema {@link #getSemanticVersion()}
* <li>(Optional) Module revision ({link {@link #getRevision()}
* </ul>
*
* and http://tools.ietf.org/html/rfc6022#section-3.1 ).
*/
@Beta
-public final class OpenconfigVerSourceIdentifier extends SourceIdentifier {
+public final class SemVerSourceIdentifier extends SourceIdentifier {
private static final long serialVersionUID = 1L;
private final SemVer semVer;
/**
- * Creates new YANG Schema openconfig-version source identifier.
+ * Creates new YANG Schema semVer source identifier.
*
* @param name
* Name of schema
* Optional of source revision in format YYYY-mm-dd. If not
* present, default value will be used.
* @param semVer
- * openconfig version of source
+ * semantic version of source
*/
- OpenconfigVerSourceIdentifier(final String name, final Optional<String> formattedRevision, final SemVer semVer) {
+ SemVerSourceIdentifier(final String name, final Optional<String> formattedRevision, final SemVer semVer) {
super(name, formattedRevision);
- this.semVer = semVer == null ? Module.DEFAULT_OPENCONFIG_VERSION : semVer;
+ this.semVer = semVer == null ? Module.DEFAULT_SEMANTIC_VERSION : semVer;
}
/**
- * Creates new YANG Schema openconfig-version source identifier.
+ * Creates new YANG Schema semVer source identifier.
*
* @param name
* Name of schema
* @param semVer
- * openconfig version of source
+ * semantic version of source
*/
- OpenconfigVerSourceIdentifier(final String name, final SemVer semVer) {
+ SemVerSourceIdentifier(final String name, final SemVer semVer) {
this(name, Optional.absent(), semVer);
}
/**
- * Returns openconfig version of source or
- * {@link Module#DEFAULT_OPENCONFIG_VERSION} if openconfig version was not
+ * Returns semantic version of source or
+ * {@link Module#DEFAULT_SEMANTIC_VERSION} if semantic version was not
* supplied.
*
- * @return revision of source or {@link Module#DEFAULT_OPENCONFIG_VERSION} if
+ * @return revision of source or {@link Module#DEFAULT_SEMANTIC_VERSION} if
* revision was not supplied.
*/
- public SemVer getOpenconfigVersion() {
+ public SemVer getSemanticVersion() {
return semVer;
}
/**
- * Creates new YANG Schema openconfig-version source identifier.
+ * Creates new YANG Schema semVer source identifier.
*
* @param moduleName
* Name of schema
* @param semVer
- * openconfig version of source
+ * semantic version of source
*/
- public static OpenconfigVerSourceIdentifier create(final String moduleName, final SemVer semVer) {
- return new OpenconfigVerSourceIdentifier(moduleName, semVer);
+ public static SemVerSourceIdentifier create(final String moduleName, final SemVer semVer) {
+ return new SemVerSourceIdentifier(moduleName, semVer);
}
/**
- * Creates new YANG Schema openconfig-version source identifier.
+ * Creates new YANG Schema semVer source identifier.
*
* @param moduleName
* Name of schema
* @param revision
* Revision of source in format YYYY-mm-dd
* @param semVer
- * openconfig version of source
+ * semantic version of source
*/
- public static OpenconfigVerSourceIdentifier create(final String moduleName, final String revision,
+ public static SemVerSourceIdentifier create(final String moduleName, final String revision,
final SemVer semVer) {
- return new OpenconfigVerSourceIdentifier(moduleName, Optional.of(revision), semVer);
+ return new SemVerSourceIdentifier(moduleName, Optional.of(revision), semVer);
}
/**
- * Creates new YANG Schema openconfig-version source identifier.
+ * Creates new YANG Schema semVer source identifier.
*
* @param moduleName
* Name of schema
* Optional of source revision in format YYYY-mm-dd. If not
* present, default value will be used.
* @param semVer
- * openconfig version of source
+ * semantic version of source
*/
- public static OpenconfigVerSourceIdentifier create(final String moduleName,
+ public static SemVerSourceIdentifier create(final String moduleName,
final Optional<String> revision, final SemVer semVer) {
- return new OpenconfigVerSourceIdentifier(moduleName, revision, semVer);
+ return new SemVerSourceIdentifier(moduleName, revision, semVer);
}
@Override
if (this == obj) {
return true;
}
- if (!(obj instanceof OpenconfigVerSourceIdentifier)) {
+ if (!(obj instanceof SemVerSourceIdentifier)) {
return false;
}
- final OpenconfigVerSourceIdentifier other = (OpenconfigVerSourceIdentifier) obj;
+ final SemVerSourceIdentifier other = (SemVerSourceIdentifier) obj;
return Objects.equals(getName(), other.getName()) && Objects.equals(semVer, other.semVer);
}
@Override
public String toString() {
- return "OpenconfigVerSourceIdentifier [name=" + getName() + "(" + semVer + ")" + "@" + getRevision() + "]";
+ return "SemVerSourceIdentifier [name=" + getName() + "(" + semVer + ")" + "@" + getRevision() + "]";
}
}
}
/**
- * Return an interned reference to a equivalent OpenconfigVerSourceIdentifier.
+ * Return an interned reference to a equivalent SemVerSourceIdentifier.
*
* @return Interned reference, or this object if it was interned.
*/
/**
* <p>
- * Since we've got two ways of model versioning (revision & openconfig version),
+ * Since we've got two ways of model versioning (revision & semantic version),
* this method shouldn't be called directly anymore. Eventually, callers of this method
* should be notified before method gets deleted.
* @deprecated use either
* <ul>
- * <li>{@link OpenconfigVerSourceIdentifier#create(String, SemVer)}</li>
- * <li>{@link OpenconfigVerSourceIdentifier#create(String, Optional, SemVer)}</li>
- * <li>{@link OpenconfigVerSourceIdentifier#create(String, String, SemVer)}</li>
+ * <li>{@link SemVerSourceIdentifier#create(String, SemVer)}</li>
+ * <li>{@link SemVerSourceIdentifier#create(String, Optional, SemVer)}</li>
+ * <li>{@link SemVerSourceIdentifier#create(String, String, SemVer)}</li>
* </ul>
* or
* <ul>
*/
DEFAULT_MODE,
/**
- * Openconfig version mode of statement parser. If it is enabled, module
- * imports are processed on the basis of openconfig versions.
+ * Semantic version mode of statement parser. If it is enabled, module
+ * imports are processed on the basis of semantic versions.
*/
- OPENCONFIG_VER_MODE
+ SEMVER_MODE
}
\ No newline at end of file
final SemVer semVer) {
this.name = checkNotNull(name);
this.qnameModule = QNameModule.create(namespace.orElse(null), revision.orElse(null));
- this.semVer = (semVer == null ? Module.DEFAULT_OPENCONFIG_VERSION : semVer);
+ this.semVer = (semVer == null ? Module.DEFAULT_SEMANTIC_VERSION : semVer);
}
public static ModuleIdentifier create(final String name, final Optional<URI> namespace,
final Optional<Date> revision) {
- return create(name, namespace, revision, Module.DEFAULT_OPENCONFIG_VERSION);
+ return create(name, namespace, revision, Module.DEFAULT_SEMANTIC_VERSION);
}
public static ModuleIdentifier create(final String name, final Optional<URI> namespace,
}
@Override
- public SemVer getOpenconfigVersion() {
+ public SemVer getSemanticVersion() {
return semVer;
}
return false;
}
- if (!Objects.equals(getOpenconfigVersion(), other.getOpenconfigVersion())) {
+ if (!Objects.equals(getSemanticVersion(), other.getSemanticVersion())) {
return false;
}
}
@Override
- public SemVer getOpenconfigVersion() {
- return module.getOpenconfigVersion();
+ public SemVer getSemanticVersion() {
+ return module.getSemanticVersion();
}
@Override
}
/**
- * Returns openconfig version of module
+ * Returns semantic version of module
*
- * @return openconfig version
+ * @return semantic version
*/
- public Optional<SemVer> getOpenconfigVersion() {
+ public Optional<SemVer> getSemanticVersion() {
return semVer;
}
private static YangModelDependencyInfo parseModuleContext(final StatementContext module, final String sourceName) {
final String name = Utils.stringFromStringContext(module.argument(), getReference(sourceName, module));
final String latestRevision = getLatestRevision(module, sourceName);
- final Optional<SemVer> semVer = Optional.fromNullable(getOpenconfigVersion(module, sourceName));
+ final Optional<SemVer> semVer = Optional.fromNullable(getSemanticVersion(module, sourceName));
final ImmutableSet<ModuleImport> imports = parseImports(module, sourceName);
final ImmutableSet<ModuleImport> includes = parseIncludes(module, sourceName);
getReference(sourceName, subStatementContext));
final Date revisionDate = (revisionDateStr == null) ? null : QName
.parseRevision(revisionDateStr);
- final Optional<SemVer> importSemVer = Optional.fromNullable(getOpenconfigVersion(subStatementContext, sourceName));
+ final Optional<SemVer> importSemVer = Optional.fromNullable(getSemanticVersion(subStatementContext, sourceName));
result.add(new ModuleImportImpl(importedModuleName,
revisionDate, importSemVer));
}
return ImmutableSet.copyOf(result);
}
- private static SemVer getOpenconfigVersion(final StatementContext statement, final String sourceName) {
+ private static SemVer getSemanticVersion(final StatementContext statement, final String sourceName) {
final List<StatementContext> subStatements = statement.statement();
String semVerString = null;
- final String semVerStmtName = SupportedExtensionsMapping.OPENCONFIG_VERSION.getStatementName().getLocalName();
+ final String semVerStmtName = SupportedExtensionsMapping.SEMANTIC_VERSION.getStatementName().getLocalName();
for (final StatementContext subStatement : subStatements) {
final String subStatementName = Utils.trimPrefix(subStatement.keyword().getText());
if (semVerStmtName.equals(subStatementName)) {
@Override
public String toString() {
return "Module [name=" + getName() + ", revision=" + getRevision() + ", semanticVersion="
- + getOpenconfigVersion().or(Module.DEFAULT_OPENCONFIG_VERSION) + ", dependencies=" + getDependencies() + "]";
+ + getSemanticVersion().or(Module.DEFAULT_SEMANTIC_VERSION) + ", dependencies=" + getDependencies()
+ + "]";
}
}
public ModuleImportImpl(final String moduleName, final Date revision, final Optional<SemVer> semVer) {
this.name = Preconditions.checkNotNull(moduleName, "Module name must not be null.");
this.revision = revision;
- this.semVer = semVer.or(Module.DEFAULT_OPENCONFIG_VERSION);
+ this.semVer = semVer.or(Module.DEFAULT_SEMANTIC_VERSION);
}
@Override
}
@Override
- public SemVer getOpenconfigVersion() {
+ public SemVer getSemanticVersion() {
return this.semVer;
}
return false;
}
- if (!Objects.equals(getOpenconfigVersion(), other.getOpenconfigVersion())) {
+ if (!Objects.equals(getSemanticVersion(), other.getSemanticVersion())) {
return false;
}
return true;
@Override
public String toString() {
return "ModuleImportImpl [name=" + name + ", revision="
- + QName.formattedRevision(revision) + ", semanticVersion=" + getOpenconfigVersion() + "]";
+ + QName.formattedRevision(revision) + ", semanticVersion=" + getSemanticVersion() + "]";
}
}
}
}
@Override
- public SemVer getOpenconfigVersion() {
+ public SemVer getSemanticVersion() {
return null;
}
import org.opendaylight.yangtools.concepts.SemVer;
import org.opendaylight.yangtools.yang.common.QName;
import org.opendaylight.yangtools.yang.model.api.ModuleImport;
-import org.opendaylight.yangtools.yang.model.repo.api.OpenconfigVerSourceIdentifier;
+import org.opendaylight.yangtools.yang.model.repo.api.SemVerSourceIdentifier;
import org.opendaylight.yangtools.yang.model.repo.api.SourceIdentifier;
import org.opendaylight.yangtools.yang.parser.impl.util.YangModelDependencyInfo;
-final class OpenconfigVerDependencyResolver extends DependencyResolver {
+final class SemVerDependencyResolver extends DependencyResolver {
- protected OpenconfigVerDependencyResolver(final Map<SourceIdentifier, YangModelDependencyInfo> depInfo) {
+ protected SemVerDependencyResolver(final Map<SourceIdentifier, YangModelDependencyInfo> depInfo) {
super(depInfo);
}
final String requestedModuleName = mi.getModuleName();
for (SourceIdentifier r : haystack) {
if (requestedModuleName.equals(r.getName())
- && isCompatible(((OpenconfigVerSourceIdentifier) r).getOpenconfigVersion(), mi.getOpenconfigVersion())) {
+ && isCompatible(((SemVerSourceIdentifier) r).getSemanticVersion(), mi.getSemanticVersion())) {
return r;
}
}
@Override
protected boolean isKnown(final Collection<SourceIdentifier> haystack, final ModuleImport mi) {
final String rev = mi.getRevision() != null ? QName.formattedRevision(mi.getRevision()) : null;
- final OpenconfigVerSourceIdentifier msi = OpenconfigVerSourceIdentifier.create(mi.getModuleName(), Optional.fromNullable(rev), mi.getOpenconfigVersion());
+ final SemVerSourceIdentifier msi = SemVerSourceIdentifier.create(mi.getModuleName(), Optional.fromNullable(rev), mi.getSemanticVersion());
// Quick lookup
if (haystack.contains(msi)) {
return findCompatibleVersion(haystack, mi) != null;
}
- public static OpenconfigVerDependencyResolver create(final Map<SourceIdentifier, YangModelDependencyInfo> depInfo) {
- return new OpenconfigVerDependencyResolver(depInfo);
+ public static SemVerDependencyResolver create(final Map<SourceIdentifier, YangModelDependencyInfo> depInfo) {
+ return new SemVerDependencyResolver(depInfo);
}
}
\ No newline at end of file
final Collection<SourceIdentifier> requiredSources, final StatementParserMode statementParserMode,
final Set<QName> supportedFeatures) {
return createSchemaContext(requiredSources,
- statementParserMode == StatementParserMode.OPENCONFIG_VER_MODE ? this.semVerCache : this.cache,
+ statementParserMode == StatementParserMode.SEMVER_MODE ? this.semVerCache : this.cache,
new AssembleSources(Optional.ofNullable(supportedFeatures), statementParserMode));
}
this.supportedFeatures = supportedFeatures;
this.statementParserMode = Preconditions.checkNotNull(statementParserMode);
switch (statementParserMode) {
- case OPENCONFIG_VER_MODE:
+ case SEMVER_MODE:
this.getIdentifier = ASTSchemaSource::getSemVerIdentifier;
break;
default:
LOG.debug("Resolving dependency reactor {}", deps);
- final DependencyResolver res = this.statementParserMode == StatementParserMode.OPENCONFIG_VER_MODE
- ? OpenconfigVerDependencyResolver.create(deps) : RevisionDependencyResolver.create(deps);
+ final DependencyResolver res = this.statementParserMode == StatementParserMode.SEMVER_MODE
+ ? SemVerDependencyResolver.create(deps) : RevisionDependencyResolver.create(deps);
if (!res.getUnresolvedSources().isEmpty()) {
LOG.debug("Omitting models {} due to unsatisfied imports {}", res.getUnresolvedSources(),
res.getUnsatisfiedImports());
* Preliminary cross-source relationship resolution phase which collects
* available module names and module namespaces. It is necessary in order to
* correct resolution of unknown statements used in linkage phase (e.g.
- * openconfig version of yang modules).
+ * semantic version of yang modules).
*/
SOURCE_PRE_LINKAGE(INIT),
/**
/**
* Namespace class for storing Maps of all modules with the same name. This namespace is
- * used only in case the openconfig versioning is enabled, otherwise it is empty.
+ * used only in case the semantic versioning is enabled, otherwise it is empty.
*/
@Beta
-public interface OpenconfigVersionModuleNamespace extends IdentifierNamespace<String, NavigableMap<SemVer, StmtContext<?, ?, ?>>> {
+public interface SemanticVersionModuleNamespace extends IdentifierNamespace<String, NavigableMap<SemVer, StmtContext<?, ?, ?>>> {
}
import org.opendaylight.yangtools.yang.model.api.meta.IdentifierNamespace;
/**
- * namespace class for storing openconfig version of yang modules
+ * namespace class for storing semantic version of yang modules
*/
@Beta
-public interface OpenconfigVersionNamespace extends IdentifierNamespace<StmtContext<?, ?, ?>, SemVer> {
+public interface SemanticVersionNamespace extends IdentifierNamespace<StmtContext<?, ?, ?>, SemVer> {
}
boolean isConfiguration();
- boolean isEnabledOpenconfigVersioning();
+ boolean isEnabledSemanticVersioning();
@Nonnull
<K, V, KT extends K, N extends IdentifierNamespace<K, V>> V getFromNamespace(
/**
*
- * Source-specific mapping of prefixes to module identifier with specified openconfig version
+ * Source-specific mapping of prefixes to module identifier with specified semantic version
*/
@Beta
-public interface ImpPrefixToOpenconfigVerModuleIdentifier extends IdentifierNamespace<String, ModuleIdentifier> {
+public interface ImpPrefixToSemVerModuleIdentifier extends IdentifierNamespace<String, ModuleIdentifier> {
}
* supplied statement definition map. This step is used as preparatory cross-source
* relationship resolution phase which collects available module names and namespaces.
* It is necessary in order to correct resolution of unknown statements used by linkage
- * phase (e.g. openconfig version of yang modules).
+ * phase (e.g. semantic version of yang modules).
* </li>
* <li>{@link #writeLinkage(StatementWriter, QNameToStatementDefinition, PrefixToModule)} -
* Source MUST emit only statements related in linkage, which are present in
private final Map<ModelProcessingPhase, StatementSupportBundle> supports;
private final Set<SourceSpecificContext> sources = new HashSet<>();
private final Set<YangVersion> supportedVersions;
- private final boolean enabledOpenconfigVersions;
+ private final boolean enabledSemanticVersions;
private Set<SourceSpecificContext> libSources = new HashSet<>();
private ModelProcessingPhase currentPhase = ModelProcessingPhase.INIT;
switch (statementParserMode) {
case DEFAULT_MODE:
- enabledOpenconfigVersions = false;
+ enabledSemanticVersions = false;
break;
- case OPENCONFIG_VER_MODE:
- enabledOpenconfigVersions = true;
+ case SEMVER_MODE:
+ enabledSemanticVersions = true;
break;
default:
throw new IllegalArgumentException("Unhandled parser mode " + statementParserMode);
this.supportedVersions = ImmutableSet.copyOf(supports.get(ModelProcessingPhase.INIT).getSupportedVersions());
}
- boolean isEnabledOpenconfigVersioning() {
- return enabledOpenconfigVersions;
+ boolean isEnabledSemanticVersioning() {
+ return enabledSemanticVersions;
}
StatementSupportBundle getSupportsForPhase(final ModelProcessingPhase currentPhase) {
}
void addLibSource(@Nonnull final StatementStreamSource libSource) {
- Preconditions.checkState(!isEnabledOpenconfigVersioning(),
- "Library sources are not supported in openconfig version mode currently.");
+ Preconditions.checkState(!isEnabledSemanticVersioning(),
+ "Library sources are not supported in semantic version mode currently.");
Preconditions.checkState(currentPhase == ModelProcessingPhase.INIT,
"Add library source is allowed in ModelProcessingPhase.INIT only");
libSources.add(new SourceSpecificContext(this, libSource));
* are present in resulting SchemaContext. Any other library sources are
* ignored and this also applies to error reporting.
*
- * Library sources are not supported in openconfig version mode currently.
+ * Library sources are not supported in semantic version mode currently.
*
* @param libSources
* yang sources which should be added into library sources
}
@Override
- public boolean isEnabledOpenconfigVersioning() {
- return sourceContext.isEnabledOpenconfigVersioning();
+ public boolean isEnabledSemanticVersioning() {
+ return sourceContext.isEnabledSemanticVersioning();
}
@Override
this.source = Preconditions.checkNotNull(source);
}
- boolean isEnabledOpenconfigVersioning(){
- return currentContext.isEnabledOpenconfigVersioning();
+ boolean isEnabledSemanticVersioning(){
+ return currentContext.isEnabledSemanticVersioning();
}
ModelProcessingPhase getInProgressPhase() {
}
@Override
- public boolean isEnabledOpenconfigVersioning() {
- return parent.isEnabledOpenconfigVersioning();
+ public boolean isEnabledSemanticVersioning() {
+ return parent.isEnabledSemanticVersioning();
}
@Override
import org.opendaylight.yangtools.yang.parser.spi.meta.ModelActionBuilder;
import org.opendaylight.yangtools.yang.parser.spi.meta.ModelActionBuilder.InferenceAction;
import org.opendaylight.yangtools.yang.parser.spi.meta.ModelActionBuilder.Prerequisite;
-import org.opendaylight.yangtools.yang.parser.spi.meta.OpenconfigVersionModuleNamespace;
-import org.opendaylight.yangtools.yang.parser.spi.meta.OpenconfigVersionNamespace;
+import org.opendaylight.yangtools.yang.parser.spi.meta.SemanticVersionModuleNamespace;
+import org.opendaylight.yangtools.yang.parser.spi.meta.SemanticVersionNamespace;
import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext.Mutable;
import org.opendaylight.yangtools.yang.parser.spi.source.ImpPrefixToModuleIdentifier;
import org.opendaylight.yangtools.yang.parser.spi.source.ImpPrefixToNamespace;
-import org.opendaylight.yangtools.yang.parser.spi.source.ImpPrefixToOpenconfigVerModuleIdentifier;
+import org.opendaylight.yangtools.yang.parser.spi.source.ImpPrefixToSemVerModuleIdentifier;
import org.opendaylight.yangtools.yang.parser.spi.source.ImportedModuleContext;
import org.opendaylight.yangtools.yang.parser.spi.source.ModuleCtxToModuleIdentifier;
import org.opendaylight.yangtools.yang.parser.spi.source.ModuleNameToNamespace;
.builder(YangStmtMapping.IMPORT)
.addMandatory(YangStmtMapping.PREFIX)
.addOptional(YangStmtMapping.REVISION_DATE)
- .addOptional(SupportedExtensionsMapping.OPENCONFIG_VERSION)
+ .addOptional(SupportedExtensionsMapping.SEMANTIC_VERSION)
.build();
public ImportStatementDefinition() {
@Override
public void onLinkageDeclared(
final Mutable<String, ImportStatement, EffectiveStatement<String, ImportStatement>> stmt) {
- if (stmt.isEnabledOpenconfigVersioning()) {
- OpenconfigVersionImport.onLinkageDeclared(stmt);
+ if (stmt.isEnabledSemanticVersioning()) {
+ SemanticVersionImport.onLinkageDeclared(stmt);
} else {
RevisionImport.onLinkageDeclared(stmt);
}
}
}
- private static class OpenconfigVersionImport {
- private OpenconfigVersionImport() {
+ private static class SemanticVersionImport {
+ private SemanticVersionImport() {
throw new UnsupportedOperationException("Utility class");
}
if (importedModuleEntry != null) {
importedModule = importedModuleEntry.getValue();
importedModuleIdentifier = importedModule.getFromNamespace(ModuleCtxToModuleIdentifier.class, importedModule);
- semVerModuleIdentifier = createOpenconfigVerModuleIdentifier(importedModuleIdentifier, importedModuleEntry.getKey());
+ semVerModuleIdentifier = createSemVerModuleIdentifier(importedModuleIdentifier, importedModuleEntry.getKey());
} else {
throw new InferenceException(stmt.getStatementSourceReference(),
"Unable to find module compatible with requested import [%s(%s)].", impIdentifier
linkageTarget.get().addToNs(ImportedModuleContext.class, importedModuleIdentifier, importedModule);
final String impPrefix = firstAttributeOf(stmt.declaredSubstatements(), PrefixStatement.class);
stmt.addToNs(ImpPrefixToModuleIdentifier.class, impPrefix, importedModuleIdentifier);
- stmt.addToNs(ImpPrefixToOpenconfigVerModuleIdentifier.class, impPrefix, semVerModuleIdentifier);
+ stmt.addToNs(ImpPrefixToSemVerModuleIdentifier.class, impPrefix, semVerModuleIdentifier);
final URI modNs = firstAttributeOf(importedModule.declaredSubstatements(), NamespaceStatement.class);
stmt.addToNs(URIStringToImpPrefix.class, modNs.toString(), impPrefix);
}
private static SemVer getRequestedImportVersion(final Mutable<?, ?, ?> impStmt) {
- SemVer requestedImportVersion = impStmt.getFromNamespace(OpenconfigVersionNamespace.class, impStmt);
+ SemVer requestedImportVersion = impStmt.getFromNamespace(SemanticVersionNamespace.class, impStmt);
if (requestedImportVersion == null) {
- requestedImportVersion = Module.DEFAULT_OPENCONFIG_VERSION;
+ requestedImportVersion = Module.DEFAULT_SEMANTIC_VERSION;
}
return requestedImportVersion;
}
private static Entry<SemVer, StmtContext<?, ?, ?>> findRecentCompatibleModuleEntry(final String moduleName,
final Mutable<String, ImportStatement, EffectiveStatement<String, ImportStatement>> impStmt) {
NavigableMap<SemVer, StmtContext<?, ?, ?>> allRelevantModulesMap = impStmt.getFromNamespace(
- OpenconfigVersionModuleNamespace.class, moduleName);
+ SemanticVersionModuleNamespace.class, moduleName);
if (allRelevantModulesMap == null) {
return null;
}
Optional.of(SimpleDateFormatUtil.DEFAULT_DATE_IMP));
}
- private static ModuleIdentifier createOpenconfigVerModuleIdentifier(final ModuleIdentifier importedModuleIdentifier,
+ private static ModuleIdentifier createSemVerModuleIdentifier(final ModuleIdentifier importedModuleIdentifier,
final SemVer semVer) {
return ModuleIdentifierImpl.create(importedModuleIdentifier.getName(),
Optional.ofNullable(importedModuleIdentifier.getNamespace()),
import org.opendaylight.yangtools.yang.parser.spi.PreLinkageModuleNamespace;
import org.opendaylight.yangtools.yang.parser.spi.SubstatementValidator;
import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
-import org.opendaylight.yangtools.yang.parser.spi.meta.OpenconfigVersionModuleNamespace;
-import org.opendaylight.yangtools.yang.parser.spi.meta.OpenconfigVersionNamespace;
+import org.opendaylight.yangtools.yang.parser.spi.meta.SemanticVersionModuleNamespace;
+import org.opendaylight.yangtools.yang.parser.spi.meta.SemanticVersionNamespace;
import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext.Mutable;
import org.opendaylight.yangtools.yang.parser.spi.source.ImpPrefixToModuleIdentifier;
.addAny(YangStmtMapping.TYPEDEF)
.addAny(YangStmtMapping.USES)
.addOptional(YangStmtMapping.YANG_VERSION)
- .addOptional(SupportedExtensionsMapping.OPENCONFIG_VERSION)
+ .addOptional(SupportedExtensionsMapping.SEMANTIC_VERSION)
.build();
public ModuleStatementSupport() {
stmt.addToNs(ModuleIdentifierToModuleQName.class, moduleIdentifier, qNameModule);
stmt.addToNs(ImpPrefixToModuleIdentifier.class, modulePrefix, moduleIdentifier);
- if (stmt.isEnabledOpenconfigVersioning()) {
- addToOpenconfigVerModuleNamespace(stmt);
+ if (stmt.isEnabledSemanticVersioning()) {
+ addToSemVerModuleNamespace(stmt);
}
}
- private static void addToOpenconfigVerModuleNamespace(
+ private static void addToSemVerModuleNamespace(
final Mutable<String, ModuleStatement, EffectiveStatement<String, ModuleStatement>> stmt) {
final String moduleName = stmt.getStatementArgument();
NavigableMap<SemVer, StmtContext<?, ?, ?>> modulesMap = stmt.getFromNamespace(
- OpenconfigVersionModuleNamespace.class, moduleName);
+ SemanticVersionModuleNamespace.class, moduleName);
if (modulesMap == null) {
modulesMap = new TreeMap<>();
}
- SemVer moduleSemVer = stmt.getFromNamespace(OpenconfigVersionNamespace.class, stmt);
+ SemVer moduleSemVer = stmt.getFromNamespace(SemanticVersionNamespace.class, stmt);
if(moduleSemVer == null) {
- moduleSemVer = Module.DEFAULT_OPENCONFIG_VERSION;
+ moduleSemVer = Module.DEFAULT_SEMANTIC_VERSION;
}
modulesMap.put(moduleSemVer, stmt);
- stmt.addToNs(OpenconfigVersionModuleNamespace.class, moduleName, modulesMap);
+ stmt.addToNs(SemanticVersionModuleNamespace.class, moduleName, modulesMap);
}
@Override
import org.opendaylight.yangtools.yang.parser.spi.SubstatementValidator;
import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractDeclaredStatement;
import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
-import org.opendaylight.yangtools.yang.parser.spi.meta.OpenconfigVersionNamespace;
+import org.opendaylight.yangtools.yang.parser.spi.meta.SemanticVersionNamespace;
import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
-import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.effective.OpenconfigVersionEffectiveStatementImpl;
+import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.effective.SemanticVersionEffectiveStatementImpl;
@Beta
-public final class OpenconfigVersionStatementImpl extends AbstractDeclaredStatement<SemVer> implements
+public final class SemanticVersionStatementImpl extends AbstractDeclaredStatement<SemVer> implements
UnknownStatement<SemVer> {
private static final SubstatementValidator SUBSTATEMENT_VALIDATOR = SubstatementValidator.builder(
- SupportedExtensionsMapping.OPENCONFIG_VERSION).build();
+ SupportedExtensionsMapping.SEMANTIC_VERSION).build();
- OpenconfigVersionStatementImpl(
+ SemanticVersionStatementImpl(
final StmtContext<SemVer, UnknownStatement<SemVer>, ?> context) {
super(context);
}
- public static class OpenconfigVersionSupport
+ public static class SemanticVersionSupport
extends
AbstractStatementSupport<SemVer, UnknownStatement<SemVer>, EffectiveStatement<SemVer, UnknownStatement<SemVer>>> {
- public OpenconfigVersionSupport() {
- super(SupportedExtensionsMapping.OPENCONFIG_VERSION);
+ public SemanticVersionSupport() {
+ super(SupportedExtensionsMapping.SEMANTIC_VERSION);
}
@Override
@Override
public void onLinkageDeclared(final StmtContext.Mutable<SemVer,UnknownStatement<SemVer>,EffectiveStatement<SemVer,UnknownStatement<SemVer>>> stmt) {
- stmt.addToNs(OpenconfigVersionNamespace.class, stmt.getParentContext(), stmt.getStatementArgument());
+ stmt.addToNs(SemanticVersionNamespace.class, stmt.getParentContext(), stmt.getStatementArgument());
}
@Override
public UnknownStatement<SemVer> createDeclared(
final StmtContext<SemVer, UnknownStatement<SemVer>, ?> ctx) {
- return new OpenconfigVersionStatementImpl(ctx);
+ return new SemanticVersionStatementImpl(ctx);
}
@Override
public EffectiveStatement<SemVer, UnknownStatement<SemVer>> createEffective(
final StmtContext<SemVer, UnknownStatement<SemVer>, EffectiveStatement<SemVer, UnknownStatement<SemVer>>> ctx) {
- return new OpenconfigVersionEffectiveStatementImpl(ctx);
+ return new SemanticVersionEffectiveStatementImpl(ctx);
}
@Override
import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition;
import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.effective.AnyxmlSchemaLocationEffectiveStatementImpl;
-import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.effective.OpenconfigVersionEffectiveStatementImpl;
+import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.effective.SemanticVersionEffectiveStatementImpl;
@Beta
public enum SupportedExtensionsMapping implements StatementDefinition {
ANYXML_SCHEMA_LOCATION("urn:opendaylight:yang:extension:yang-ext", "2013-07-09",
AnyxmlSchemaLocationStatementImpl.class, AnyxmlSchemaLocationEffectiveStatementImpl.class,
"anyxml-schema-location", "target-node", false),
- OPENCONFIG_VERSION("http://openconfig.net/yang/openconfig-ext", OpenconfigVersionStatementImpl.class,
- OpenconfigVersionEffectiveStatementImpl.class,
- "openconfig-version", "semver", false);
+ SEMANTIC_VERSION("urn:opendaylight:yang:extension:semantic-version", "2016-02-02",
+ SemanticVersionStatementImpl.class, SemanticVersionEffectiveStatementImpl.class,
+ "semantic-version", "semantic-version", false);
private final Class<? extends DeclaredStatement<?>> type;
private final Class<? extends EffectiveStatement<?, ?>> effectiveType;
import org.opendaylight.yangtools.yang.parser.spi.meta.DerivedIdentitiesNamespace;
import org.opendaylight.yangtools.yang.parser.spi.meta.ModelProcessingPhase;
import org.opendaylight.yangtools.yang.parser.spi.meta.QNameCacheNamespace;
-import org.opendaylight.yangtools.yang.parser.spi.meta.OpenconfigVersionModuleNamespace;
-import org.opendaylight.yangtools.yang.parser.spi.meta.OpenconfigVersionNamespace;
+import org.opendaylight.yangtools.yang.parser.spi.meta.SemanticVersionModuleNamespace;
+import org.opendaylight.yangtools.yang.parser.spi.meta.SemanticVersionNamespace;
import org.opendaylight.yangtools.yang.parser.spi.meta.StatementDefinitionNamespace;
import org.opendaylight.yangtools.yang.parser.spi.meta.StatementSupportBundle;
import org.opendaylight.yangtools.yang.parser.spi.source.AnyxmlSchemaLocationNamespace;
import org.opendaylight.yangtools.yang.parser.spi.source.BelongsToPrefixToModuleName;
import org.opendaylight.yangtools.yang.parser.spi.source.ImpPrefixToModuleIdentifier;
import org.opendaylight.yangtools.yang.parser.spi.source.ImpPrefixToNamespace;
-import org.opendaylight.yangtools.yang.parser.spi.source.ImpPrefixToOpenconfigVerModuleIdentifier;
+import org.opendaylight.yangtools.yang.parser.spi.source.ImpPrefixToSemVerModuleIdentifier;
import org.opendaylight.yangtools.yang.parser.spi.source.ImportedModuleContext;
import org.opendaylight.yangtools.yang.parser.spi.source.IncludedModuleContext;
import org.opendaylight.yangtools.yang.parser.spi.source.IncludedSubmoduleNameToIdentifier;
.addSupport(sourceLocal(BelongsToModuleContext.class))
.addSupport(sourceLocal(QNameToStatementDefinition.class))
.addSupport(sourceLocal(BelongsToPrefixToModuleName.class))
- .addSupport(new OpenconfigVersionStatementImpl.OpenconfigVersionSupport())
- .addSupport(global(OpenconfigVersionNamespace.class))
- .addSupport(global(OpenconfigVersionModuleNamespace.class))
- .addSupport(sourceLocal(ImpPrefixToOpenconfigVerModuleIdentifier.class))
+ .addSupport(new SemanticVersionStatementImpl.SemanticVersionSupport())
+ .addSupport(global(SemanticVersionNamespace.class))
+ .addSupport(global(SemanticVersionModuleNamespace.class))
+ .addSupport(sourceLocal(ImpPrefixToSemVerModuleIdentifier.class))
.build();
public static final StatementSupportBundle STMT_DEF_BUNDLE = StatementSupportBundle
final YangVersionEffectiveStatementImpl yangVersionStmt = firstEffective(YangVersionEffectiveStatementImpl.class);
this.yangVersion = (yangVersionStmt == null) ? YangVersion.VERSION_1 : yangVersionStmt.argument();
- final OpenconfigVersionEffectiveStatementImpl semanticVersionStmt = firstEffective(OpenconfigVersionEffectiveStatementImpl.class);
- this.semanticVersion = (semanticVersionStmt == null) ? DEFAULT_OPENCONFIG_VERSION : semanticVersionStmt.argument();
+ final SemanticVersionEffectiveStatementImpl semanticVersionStmt = firstEffective(SemanticVersionEffectiveStatementImpl.class);
+ this.semanticVersion = (semanticVersionStmt == null) ? DEFAULT_SEMANTIC_VERSION : semanticVersionStmt.argument();
final OrganizationEffectiveStatementImpl organizationStmt = firstEffective(OrganizationEffectiveStatementImpl.class);
this.organization = (organizationStmt == null) ? null : organizationStmt.argument();
this.unknownNodes = ImmutableList.copyOf(unknownNodesInit);
this.augmentations = ImmutableSet.copyOf(augmentationsInit);
- if (ctx.isEnabledOpenconfigVersioning()) {
+ if (ctx.isEnabledSemanticVersioning()) {
this.imports = ImmutableSet.copyOf(importsInit);
} else {
this.imports = ImmutableSet.copyOf(resolveModuleImports(importsInit, ctx));
}
@Override
- public SemVer getOpenconfigVersion() {
+ public SemVer getSemanticVersion() {
return semanticVersion;
}
import org.opendaylight.yangtools.yang.model.api.stmt.ImportStatement;
import org.opendaylight.yangtools.yang.parser.spi.meta.MissingSubstatementException;
import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
-import org.opendaylight.yangtools.yang.parser.spi.source.ImpPrefixToOpenconfigVerModuleIdentifier;
+import org.opendaylight.yangtools.yang.parser.spi.source.ImpPrefixToSemVerModuleIdentifier;
public class ImportEffectiveStatementImpl extends DeclaredEffectiveStatementBase<String, ImportStatement> implements
ModuleImport {
ctx.getStatementSourceReference());
}
- if (!ctx.isEnabledOpenconfigVersioning()) {
+ if (!ctx.isEnabledSemanticVersioning()) {
RevisionDateEffectiveStatementImpl revisionDateStmt = firstEffective(RevisionDateEffectiveStatementImpl.class);
this.revision = (revisionDateStmt == null) ? SimpleDateFormatUtil.DEFAULT_DATE_IMP : revisionDateStmt
.argument();
- this.semVer = Module.DEFAULT_OPENCONFIG_VERSION;
+ this.semVer = Module.DEFAULT_SEMANTIC_VERSION;
} else {
- ModuleIdentifier importedModuleIdentifier = ctx.getFromNamespace(ImpPrefixToOpenconfigVerModuleIdentifier.class, prefix);
+ ModuleIdentifier importedModuleIdentifier = ctx.getFromNamespace(ImpPrefixToSemVerModuleIdentifier.class, prefix);
revision = importedModuleIdentifier.getRevision();
- semVer = importedModuleIdentifier.getOpenconfigVersion();
+ semVer = importedModuleIdentifier.getSemanticVersion();
}
DescriptionEffectiveStatementImpl descriptionStmt = firstEffective(DescriptionEffectiveStatementImpl.class);
}
@Override
- public SemVer getOpenconfigVersion() {
+ public SemVer getSemanticVersion() {
return semVer;
}
@Override
public String toString() {
return MoreObjects.toStringHelper(this).add("moduleName", getModuleName())
- .add("revision", getRevision()).add("openconfig version", getOpenconfigVersion())
+ .add("revision", getRevision()).add("semantic version", getSemanticVersion())
.add("prefix", getPrefix()).add("description", getDescription())
.add("reference", getReference()).toString();
}
private final String prefix;
public ModuleImportImpl(final String moduleName, final Date revision, final String prefix) {
- this(moduleName, revision, prefix, Module.DEFAULT_OPENCONFIG_VERSION);
+ this(moduleName, revision, prefix, Module.DEFAULT_SEMANTIC_VERSION);
}
public ModuleImportImpl(final String moduleName, final Date revision, final String prefix, final SemVer semVer) {
this.moduleName = Preconditions.checkNotNull(moduleName, "Module name must not be null.");
this.revision = revision;
this.prefix = Preconditions.checkNotNull(prefix, "Import prefix must not be null.");
- this.semVer = Preconditions.checkNotNull(semVer, "Openconfig version of module must not be null.");
+ this.semVer = Preconditions.checkNotNull(semVer, "Semantic version of module must not be null.");
}
@Override
}
@Override
- public SemVer getOpenconfigVersion() {
+ public SemVer getSemanticVersion() {
return semVer;
}
if (!Objects.equals(getPrefix(), other.getPrefix())) {
return false;
}
- if (!Objects.equals(getOpenconfigVersion(), other.getOpenconfigVersion())) {
+ if (!Objects.equals(getSemanticVersion(), other.getSemanticVersion())) {
return false;
}
return true;
import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
@Beta
-public final class OpenconfigVersionEffectiveStatementImpl extends
+public final class SemanticVersionEffectiveStatementImpl extends
UnknownEffectiveStatementBase<SemVer> {
private final SchemaPath path;
- public OpenconfigVersionEffectiveStatementImpl(
+ public SemanticVersionEffectiveStatementImpl(
final StmtContext<SemVer, UnknownStatement<SemVer>, ?> ctx) {
super(ctx);
path = ctx.getParentContext().getSchemaPath().get().createChild(getNodeType());
if (getClass() != obj.getClass()) {
return false;
}
- OpenconfigVersionEffectiveStatementImpl other = (OpenconfigVersionEffectiveStatementImpl) obj;
+ SemanticVersionEffectiveStatementImpl other = (SemanticVersionEffectiveStatementImpl) obj;
if (!Objects.equals(path, other.path)) {
return false;
}
.builder(YangStmtMapping.IMPORT)
.addMandatory(YangStmtMapping.PREFIX)
.addOptional(YangStmtMapping.REVISION_DATE)
- .addOptional(SupportedExtensionsMapping.OPENCONFIG_VERSION)
+ .addOptional(SupportedExtensionsMapping.SEMANTIC_VERSION)
.addOptional(YangStmtMapping.DESCRIPTION)
.addOptional(YangStmtMapping.REFERENCE)
.build();
.addAny(YangStmtMapping.TYPEDEF)
.addAny(YangStmtMapping.USES)
.addMandatory(YangStmtMapping.YANG_VERSION)
- .addOptional(SupportedExtensionsMapping.OPENCONFIG_VERSION)
+ .addOptional(SupportedExtensionsMapping.SEMANTIC_VERSION)
.build();
@Override
*/
package org.opendaylight.yangtools.yang.parser.util;
-import static org.opendaylight.yangtools.yang.model.api.Module.DEFAULT_OPENCONFIG_VERSION;
+import static org.opendaylight.yangtools.yang.model.api.Module.DEFAULT_SEMANTIC_VERSION;
import com.google.common.annotations.Beta;
import com.google.common.base.Function;
import org.opendaylight.yangtools.yang.model.parser.api.YangSyntaxErrorException;
import org.opendaylight.yangtools.yang.model.repo.api.RevisionSourceIdentifier;
import org.opendaylight.yangtools.yang.model.repo.api.SchemaSourceRepresentation;
-import org.opendaylight.yangtools.yang.model.repo.api.OpenconfigVerSourceIdentifier;
+import org.opendaylight.yangtools.yang.model.repo.api.SemVerSourceIdentifier;
import org.opendaylight.yangtools.yang.model.repo.api.SourceIdentifier;
import org.opendaylight.yangtools.yang.parser.impl.util.YangModelDependencyInfo;
public static final Function<ASTSchemaSource, ParserRuleContext> GET_AST = ASTSchemaSource::getAST;
private final YangModelDependencyInfo depInfo;
- private final OpenconfigVerSourceIdentifier semVerId;
+ private final SemVerSourceIdentifier semVerId;
private final ParserRuleContext tree;
private final SourceIdentifier id;
private final String symbolicName;
- private ASTSchemaSource(@Nonnull final SourceIdentifier id, @Nonnull final OpenconfigVerSourceIdentifier semVerId,
+ private ASTSchemaSource(@Nonnull final SourceIdentifier id, @Nonnull final SemVerSourceIdentifier semVerId,
@Nonnull final ParserRuleContext tree, @Nonnull final YangModelDependencyInfo depInfo,
@Nullable final String symbolicName) {
this.depInfo = Preconditions.checkNotNull(depInfo);
throws YangSyntaxErrorException {
final YangModelDependencyInfo depInfo = YangModelDependencyInfo.fromAST(name, tree);
final SourceIdentifier id = getSourceId(depInfo);
- final OpenconfigVerSourceIdentifier semVerId = getOpenconfigVerSourceId(depInfo);
+ final SemVerSourceIdentifier semVerId = getSemVerSourceId(depInfo);
return new ASTSchemaSource(id, semVerId, tree, depInfo, null);
}
: RevisionSourceIdentifier.create(name, depInfo.getFormattedRevision());
}
- private static OpenconfigVerSourceIdentifier getOpenconfigVerSourceId(final YangModelDependencyInfo depInfo) {
+ private static SemVerSourceIdentifier getSemVerSourceId(final YangModelDependencyInfo depInfo) {
return depInfo.getFormattedRevision() == null
- ? OpenconfigVerSourceIdentifier.create(depInfo.getName(),
- depInfo.getOpenconfigVersion().or(DEFAULT_OPENCONFIG_VERSION))
- : OpenconfigVerSourceIdentifier.create(depInfo.getName(), depInfo.getFormattedRevision(),
- depInfo.getOpenconfigVersion().or(DEFAULT_OPENCONFIG_VERSION));
+ ? SemVerSourceIdentifier.create(depInfo.getName(),
+ depInfo.getSemanticVersion().or(DEFAULT_SEMANTIC_VERSION))
+ : SemVerSourceIdentifier.create(depInfo.getName(), depInfo.getFormattedRevision(),
+ depInfo.getSemanticVersion().or(DEFAULT_SEMANTIC_VERSION));
}
/**
final YangModelDependencyInfo depInfo = YangModelDependencyInfo.fromAST(identifier.getName(), tree);
final SourceIdentifier id = getSourceId(depInfo);
- final OpenconfigVerSourceIdentifier semVerId;
- if (identifier instanceof OpenconfigVerSourceIdentifier && !depInfo.getOpenconfigVersion().isPresent()) {
- semVerId = (OpenconfigVerSourceIdentifier) identifier;
+ final SemVerSourceIdentifier semVerId;
+ if (identifier instanceof SemVerSourceIdentifier && !depInfo.getSemanticVersion().isPresent()) {
+ semVerId = (SemVerSourceIdentifier) identifier;
} else {
- semVerId = getOpenconfigVerSourceId(depInfo);
+ semVerId = getSemVerSourceId(depInfo);
}
return new ASTSchemaSource(id, semVerId, tree, depInfo, symbolicName);
return Optional.ofNullable(symbolicName);
}
- public OpenconfigVerSourceIdentifier getSemVerIdentifier() {
+ public SemVerSourceIdentifier getSemVerIdentifier() {
return semVerId;
}
import org.opendaylight.yangtools.yang.parser.util.ASTSchemaSource;
import org.opendaylight.yangtools.yang.parser.util.TextToASTTransformer;
-public class OpenconfigVerSharedSchemaRepositoryTest {
+public class SemVerSharedSchemaRepositoryTest {
@Test
public void testSemVerSharedSchemaRepository() throws Exception {
final SharedSchemaRepository sharedSchemaRepository = new SharedSchemaRepository(
- "openconfig-ver-shared-schema-repo-test");
+ "sem-ver-shared-schema-repo-test");
final SettableSchemaProvider<ASTSchemaSource> bar = getImmediateYangSourceProviderFromResource(
- "/openconfig-version/openconfigver-shared-schema-repository/bar@2016-01-01.yang");
+ "/semantic-version/semver-shared-schema-repository/bar@2016-01-01.yang");
bar.register(sharedSchemaRepository);
bar.setResult();
final SettableSchemaProvider<ASTSchemaSource> foo = getImmediateYangSourceProviderFromResource(
- "/openconfig-version/openconfigver-shared-schema-repository/foo.yang");
+ "/semantic-version/semver-shared-schema-repository/foo.yang");
foo.register(sharedSchemaRepository);
foo.setResult();
final SettableSchemaProvider<ASTSchemaSource> semVer = getImmediateYangSourceProviderFromResource(
- "/openconfig-version/openconfigver-shared-schema-repository/openconfig-extensions.yang");
+ "/semantic-version/semver-shared-schema-repository/semantic-version.yang");
semVer.register(sharedSchemaRepository);
semVer.setResult();
final CheckedFuture<SchemaContext, SchemaResolutionException> inetAndTopologySchemaContextFuture = fact
.createSchemaContext(Lists.newArrayList(bar.getId(), foo.getId(), semVer.getId()),
- StatementParserMode.OPENCONFIG_VER_MODE);
+ StatementParserMode.SEMVER_MODE);
assertTrue(inetAndTopologySchemaContextFuture.isDone());
assertSchemaContext(inetAndTopologySchemaContextFuture.checkedGet(), 3);
final CheckedFuture<SchemaContext, SchemaResolutionException> barSchemaContextFuture = fact
- .createSchemaContext(Lists.newArrayList(bar.getId(), semVer.getId()), StatementParserMode.OPENCONFIG_VER_MODE);
+ .createSchemaContext(Lists.newArrayList(bar.getId(), semVer.getId()), StatementParserMode.SEMVER_MODE);
assertTrue(barSchemaContextFuture.isDone());
assertSchemaContext(barSchemaContextFuture.checkedGet(), 2);
}
final SharedSchemaRepository sharedSchemaRepository = new SharedSchemaRepository("shared-schema-repo-test");
final SettableSchemaProvider<ASTSchemaSource> bar = getImmediateYangSourceProviderFromResource(
- "/openconfig-version/shared-schema-repository/bar@2016-01-01.yang");
+ "/semantic-version/shared-schema-repository/bar@2016-01-01.yang");
bar.register(sharedSchemaRepository);
bar.setResult();
final SettableSchemaProvider<ASTSchemaSource> foo = getImmediateYangSourceProviderFromResource(
- "/openconfig-version/shared-schema-repository/foo.yang");
+ "/semantic-version/shared-schema-repository/foo.yang");
foo.register(sharedSchemaRepository);
foo.setResult();
final SettableSchemaProvider<ASTSchemaSource> semVer = getImmediateYangSourceProviderFromResource(
- "/openconfig-version/shared-schema-repository/openconfig-extensions.yang");
+ "/semantic-version/shared-schema-repository/semantic-version.yang");
semVer.register(sharedSchemaRepository);
semVer.setResult();
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-package org.opendaylight.yangtools.yang.stmt.openconfigver;
+package org.opendaylight.yangtools.yang.stmt.semver;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException;
import org.opendaylight.yangtools.yang.stmt.StmtTestUtils;
-public class OpenconfigVersionBorderCaseTest {
+public class SemanticVersionBorderCaseTest {
@Test
public void borderCaseValidMajorTest() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/border-case/border-case-valid-major",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/border-case/border-case-valid-major",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
Module bar = StmtTestUtils.findImportedModule(context, foo, "bar");
- assertEquals(SemVer.valueOf("5.5.5"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("5.5.5"), bar.getSemanticVersion());
}
@Test
public void borderCaseValidMinorTest() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/border-case/border-case-valid-minor",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/border-case/border-case-valid-minor",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
Module bar = StmtTestUtils.findImportedModule(context, foo, "bar");
- assertEquals(SemVer.valueOf("5.6.5"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("5.6.5"), bar.getSemanticVersion());
}
@Test
public void borderCaseValidPatchTest() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/border-case/border-case-valid-patch",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/border-case/border-case-valid-patch",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
Module bar = StmtTestUtils.findImportedModule(context, foo, "bar");
- assertEquals(SemVer.valueOf("5.5.6"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("5.5.6"), bar.getSemanticVersion());
}
@Test
public void borderCaseInvalidMajorTest() throws Exception {
try {
- StmtTestUtils.parseYangSources("/openconfig-version/border-case/border-case-invalid-major",
- StatementParserMode.OPENCONFIG_VER_MODE);
- fail("Test should fail due to invalid openconfig version");
+ StmtTestUtils.parseYangSources("/semantic-version/border-case/border-case-invalid-major",
+ StatementParserMode.SEMVER_MODE);
+ fail("Test should fail due to invalid semantic version");
} catch (ReactorException e) {
assertTrue(e.getCause().getMessage()
.startsWith("Unable to find module compatible with requested import [bar(5.5.5)]."));
@Test
public void borderCaseInvalidMinorTest() throws Exception {
try {
- StmtTestUtils.parseYangSources("/openconfig-version/border-case/border-case-invalid-minor",
- StatementParserMode.OPENCONFIG_VER_MODE);
- fail("Test should fail due to invalid openconfig version");
+ StmtTestUtils.parseYangSources("/semantic-version/border-case/border-case-invalid-minor",
+ StatementParserMode.SEMVER_MODE);
+ fail("Test should fail due to invalid semantic version");
} catch (ReactorException e) {
assertTrue(e.getCause().getMessage()
.startsWith("Unable to find module compatible with requested import [bar(5.5.5)]."));
@Test
public void borderCaseInvalidPatchTest() throws Exception {
try {
- StmtTestUtils.parseYangSources("/openconfig-version/border-case/border-case-invalid-patch",
- StatementParserMode.OPENCONFIG_VER_MODE);
- fail("Test should fail due to invalid openconfig version");
+ StmtTestUtils.parseYangSources("/semantic-version/border-case/border-case-invalid-patch",
+ StatementParserMode.SEMVER_MODE);
+ fail("Test should fail due to invalid semantic version");
} catch (ReactorException e) {
assertTrue(e.getCause().getMessage()
.startsWith("Unable to find module compatible with requested import [bar(5.5.5)]."));
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-package org.opendaylight.yangtools.yang.stmt.openconfigver;
+package org.opendaylight.yangtools.yang.stmt.semver;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import org.opendaylight.yangtools.yang.model.util.SchemaContextUtil;
import org.opendaylight.yangtools.yang.stmt.StmtTestUtils;
-public class OpenconfigVersionComplexTest {
+public class SemanticVersionComplexTest {
@Test
public void complexTest1() throws Exception {
- final SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/complex/complex-1",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ final SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/complex/complex-1",
+ StatementParserMode.SEMVER_MODE);
verifySchemaContextTest1(context);
}
@Test
public void complexTest1Yang1_1() throws Exception {
- final SchemaContext context = StmtTestUtils.parseYangSources("/rfc7950/openconfig-version/complex-1",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ final SchemaContext context = StmtTestUtils.parseYangSources("/rfc7950/semantic-version/complex-1",
+ StatementParserMode.SEMVER_MODE);
verifySchemaContextTest1(context);
}
final Module foo = context.findModuleByNamespace(URI.create("foo")).iterator().next();
final Module semVer = context.findModuleByNamespace(
- URI.create("http://openconfig.net/yang/openconfig-ext")).iterator().next();
+ URI.create("urn:opendaylight:yang:extension:semantic-version")).iterator().next();
// check module versions
- assertEquals(SemVer.valueOf("1.3.95"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("1.50.2"), foo.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("1.3.95"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("1.50.2"), foo.getSemanticVersion());
final Module bar = StmtTestUtils.findImportedModule(context, foo, "bar");
- assertEquals(SemVer.valueOf("1.2.6"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("1.2.6"), bar.getSemanticVersion());
final Module foobar = StmtTestUtils.findImportedModule(context, bar, "foobar");
- assertEquals(SemVer.valueOf("2.26.465"), foobar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("2.26.465"), foobar.getSemanticVersion());
// check imported components
assertNotNull("This component should be present", SchemaContextUtil.findDataSchemaNode(context, foo,
@Test
public void complexTest2() throws Exception {
- final SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/complex/complex-2",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ final SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/complex/complex-2",
+ StatementParserMode.SEMVER_MODE);
verifySchemaContextTest2(context);
}
@Test
public void complexTest2Yang1_1() throws Exception {
- final SchemaContext context = StmtTestUtils.parseYangSources("/rfc7950/openconfig-version/complex-2",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ final SchemaContext context = StmtTestUtils.parseYangSources("/rfc7950/semantic-version/complex-2",
+ StatementParserMode.SEMVER_MODE);
verifySchemaContextTest2(context);
}
final Module foo = context.findModuleByNamespace(URI.create("foo")).iterator().next();
final Module semVer = context.findModuleByNamespace(URI.create(
- "http://openconfig.net/yang/openconfig-ext")).iterator().next();
+ "urn:opendaylight:yang:extension:semantic-version")).iterator().next();
// check module versions
- assertEquals(SemVer.valueOf("2.5.50"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("2.32.2"), foo.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("2.5.50"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("2.32.2"), foo.getSemanticVersion());
final Module bar = StmtTestUtils.findImportedModule(context, foo, "bar");
- assertEquals(SemVer.valueOf("4.9.8"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("4.9.8"), bar.getSemanticVersion());
final Module foobar = StmtTestUtils.findImportedModule(context, bar, "foobar");
- assertEquals(SemVer.valueOf("7.13.99"), foobar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("7.13.99"), foobar.getSemanticVersion());
// check used augmentations
assertNotNull("This component should be present", SchemaContextUtil.findDataSchemaNode(context, bar,
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-package org.opendaylight.yangtools.yang.stmt.openconfigver;
+package org.opendaylight.yangtools.yang.stmt.semver;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException;
import org.opendaylight.yangtools.yang.stmt.StmtTestUtils;
-public class OpenconfigVersionDefaultsTest {
+public class SemanticVersionDefaultsTest {
@Test
public void defaultsTest() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/defaults/defaults",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/defaults/defaults",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
Module bar = context.findModuleByNamespace(new URI("bar")).iterator().next();
- assertEquals(SemVer.valueOf("0.0.0"), foo.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.0.0"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.0"), foo.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.0.0"), bar.getSemanticVersion());
}
@Test
public void defaultMajorValidTest() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/defaults/default-major-valid",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/defaults/default-major-valid",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
Module bar = context.findModuleByNamespace(new URI("bar")).iterator().next();
- assertEquals(SemVer.valueOf("0.0.0"), foo.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.99.99"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.0"), foo.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.99.99"), bar.getSemanticVersion());
}
@Test
public void defaultMajorInvalidTest() throws Exception {
try {
- StmtTestUtils.parseYangSources("/openconfig-version/defaults/default-major-invalid",
- StatementParserMode.OPENCONFIG_VER_MODE);
- fail("Test should fail due to invalid openconfig version");
+ StmtTestUtils.parseYangSources("/semantic-version/defaults/default-major-invalid",
+ StatementParserMode.SEMVER_MODE);
+ fail("Test should fail due to invalid semantic version");
} catch (ReactorException e) {
assertTrue(e.getCause().getMessage()
.startsWith("Unable to find module compatible with requested import [bar(0.0.0)]."));
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-package org.opendaylight.yangtools.yang.stmt.openconfigver;
+package org.opendaylight.yangtools.yang.stmt.semver;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import org.opendaylight.yangtools.yang.model.repo.api.StatementParserMode;
import org.opendaylight.yangtools.yang.stmt.StmtTestUtils;
-public class OpenconfigVersionIgnoringRevisionTest {
+public class SemanticVersionIgnoringRevisionTest {
@Test
public void ignoringRevisionTest() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/ignoring-revision",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/ignoring-revision",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
Module bar = context.findModuleByNamespace(new URI("bar")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.2"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.2"), bar.getSemanticVersion());
}
@Test
public void ignoringRevision2Test() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/ignoring-revision-2",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/ignoring-revision-2",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
Module bar = StmtTestUtils.findImportedModule(context, foo, "bar");
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.2"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.2"), bar.getSemanticVersion());
}
}
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-package org.opendaylight.yangtools.yang.stmt.openconfigver;
+package org.opendaylight.yangtools.yang.stmt.semver;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException;
import org.opendaylight.yangtools.yang.stmt.StmtTestUtils;
-public class OpenconfigVersionImportTest {
+public class SemanticVersionImportTest {
@Test
public void importValidTest() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/import/import-valid",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/import/import-valid",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("1.0.0"), semVer.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("1.0.0"), semVer.getSemanticVersion());
}
@Test
public void importInvalidDeprecatedTest1() throws Exception {
try {
- StmtTestUtils.parseYangSources("/openconfig-version/import/import-invalid-deprecated-1",
- StatementParserMode.OPENCONFIG_VER_MODE);
- fail("Test should fail due to invalid import of openconfig-version module");
+ StmtTestUtils.parseYangSources("/semantic-version/import/import-invalid-deprecated-1",
+ StatementParserMode.SEMVER_MODE);
+ fail("Test should fail due to invalid import of semantic-version module");
} catch (ReactorException e) {
assertTrue(e.getCause().getMessage().startsWith(
- "Unable to find module compatible with requested import " + "[openconfig-extensions(1.0.0)]."));
+ "Unable to find module compatible with requested import " + "[semantic-version(1.0.0)]."));
}
}
@Test
public void importInvalidDeprecatedTest2() throws Exception {
try {
- StmtTestUtils.parseYangSources("/openconfig-version/import/import-invalid-deprecated-2",
- StatementParserMode.OPENCONFIG_VER_MODE);
- fail("Test should fail due to invalid import of openconfig-version module");
+ StmtTestUtils.parseYangSources("/semantic-version/import/import-invalid-deprecated-2",
+ StatementParserMode.SEMVER_MODE);
+ fail("Test should fail due to invalid import of semantic-version module");
} catch (ReactorException e) {
assertTrue(e.getCause().getMessage().startsWith(
- "Unable to find module compatible with requested import " + "[openconfig-extensions(0.9.9)]."));
+ "Unable to find module compatible with requested import " + "[semantic-version(0.9.9)]."));
}
}
@Test
public void importInvalidNotsufficientTest1() throws Exception {
try {
- StmtTestUtils.parseYangSources("/openconfig-version/import/import-invalid-notsufficient-1",
- StatementParserMode.OPENCONFIG_VER_MODE);
- fail("Test should fail due to invalid import of openconfig-version module");
+ StmtTestUtils.parseYangSources("/semantic-version/import/import-invalid-notsufficient-1",
+ StatementParserMode.SEMVER_MODE);
+ fail("Test should fail due to invalid import of semantic-version module");
} catch (ReactorException e) {
assertTrue(e.getCause().getMessage().startsWith(
- "Unable to find module compatible with requested import " + "[openconfig-extensions(2.0.0)]."));
+ "Unable to find module compatible with requested import " + "[semantic-version(2.0.0)]."));
}
}
@Test
public void importInvalidNotsufficientTest2() throws Exception {
try {
- StmtTestUtils.parseYangSources("/openconfig-version/import/import-invalid-notsufficient-2",
- StatementParserMode.OPENCONFIG_VER_MODE);
- fail("Test should fail due to invalid import of openconfig-version module");
+ StmtTestUtils.parseYangSources("/semantic-version/import/import-invalid-notsufficient-2",
+ StatementParserMode.SEMVER_MODE);
+ fail("Test should fail due to invalid import of semantic-version module");
} catch (ReactorException e) {
assertTrue(e.getCause().getMessage().startsWith(
- "Unable to find module compatible with requested import " + "[openconfig-extensions(2.0.5)]."));
+ "Unable to find module compatible with requested import " + "[semantic-version(2.0.5)]."));
}
}
}
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-package org.opendaylight.yangtools.yang.stmt.openconfigver;
+package org.opendaylight.yangtools.yang.stmt.semver;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException;
import org.opendaylight.yangtools.yang.stmt.StmtTestUtils;
-public class OpenconfigVersionMultipleImportTest {
+public class SemanticVersionMultipleImportTest {
@Test
public void multipleInvalidDeprecatedTest() throws Exception {
try {
- StmtTestUtils.parseYangSources("/openconfig-version/multiple/multiple-invalid-deprecated",
- StatementParserMode.OPENCONFIG_VER_MODE);
- fail("Test should fail due to invalid openconfig version");
+ StmtTestUtils.parseYangSources("/semantic-version/multiple/multiple-invalid-deprecated",
+ StatementParserMode.SEMVER_MODE);
+ fail("Test should fail due to invalid semantic version");
} catch (ReactorException e) {
assertTrue(e.getCause().getMessage()
.startsWith("Unable to find module compatible with requested import [bar(1.0.0)]."));
@Test
public void multipleInvalidNosufficientTest() throws Exception {
try {
- StmtTestUtils.parseYangSources("/openconfig-version/multiple/multiple-invalid-nosufficient",
- StatementParserMode.OPENCONFIG_VER_MODE);
- fail("Test should fail due to invalid openconfig version");
+ StmtTestUtils.parseYangSources("/semantic-version/multiple/multiple-invalid-nosufficient",
+ StatementParserMode.SEMVER_MODE);
+ fail("Test should fail due to invalid semantic version");
} catch (ReactorException e) {
assertTrue(e.getCause().getMessage()
.startsWith("Unable to find module compatible with requested import [bar(2.5.5)]."));
@Test
public void multipleValidDefaultsTest() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/multiple/multiple-valid-defaults",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/multiple/multiple-valid-defaults",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
Module bar = findImportedModule(context, foo, "bar");
- assertEquals(SemVer.valueOf("0.9.5"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.9.5"), bar.getSemanticVersion());
}
@Test
public void multipleValidSpecifiedTest() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/multiple/multiple-valid-specified",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/multiple/multiple-valid-specified",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
Module bar = findImportedModule(context, foo, "bar");
- assertEquals(SemVer.valueOf("5.5.6"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("5.5.6"), bar.getSemanticVersion());
}
private static Module findImportedModule(final SchemaContext context, final Module rootModule,
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-package org.opendaylight.yangtools.yang.stmt.openconfigver;
+package org.opendaylight.yangtools.yang.stmt.semver;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import org.opendaylight.yangtools.yang.model.repo.api.StatementParserMode;
import org.opendaylight.yangtools.yang.stmt.StmtTestUtils;
-public class OpenconfigVersionPositionTest {
+public class SemanticVersionPositionTest {
@Test
public void positionHeadTest() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/position/position-head",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/position/position-head",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
Module bar = context.findModuleByNamespace(new URI("bar")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.2"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.2"), bar.getSemanticVersion());
}
@Test
public void positionMiddleTest() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/position/position-middle",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/position/position-middle",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
Module bar = context.findModuleByNamespace(new URI("bar")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.2"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.2"), bar.getSemanticVersion());
}
@Test
public void positiontailTest() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/position/position-tail",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/position/position-tail",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
Module bar = context.findModuleByNamespace(new URI("bar")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.2"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.2"), bar.getSemanticVersion());
}
}
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-package org.opendaylight.yangtools.yang.stmt.openconfigver;
+package org.opendaylight.yangtools.yang.stmt.semver;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException;
import org.opendaylight.yangtools.yang.stmt.StmtTestUtils;
-public class OpenconfigVersionTest {
+public class SemanticVersionTest {
@Test
public void basicTest() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/basic",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/basic",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
Module bar = context.findModuleByNamespace(new URI("bar")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.2"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.2"), bar.getSemanticVersion());
}
@Test
public void basicTest2() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/basic-2",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/basic-2",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
Module bar = context.findModuleByNamespace(new URI("bar")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.2"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.2"), bar.getSemanticVersion());
}
@Test
public void basicTest3() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/basic-3",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/basic-3",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
}
@Test
public void basicImportTest1() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/basic-import-1",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/basic-import-1",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
Module bar = StmtTestUtils.findImportedModule(context, foo, "bar");
- assertEquals(SemVer.valueOf("0.1.2"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.1.2"), bar.getSemanticVersion());
}
@Test
public void multipleModulesTest() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/multiple-modules",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/multiple-modules",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
Module bar = StmtTestUtils.findImportedModule(context, foo, "bar");
- assertEquals(SemVer.valueOf("0.10.4"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.10.4"), bar.getSemanticVersion());
}
@Test
public void basicImportErrTest1() throws Exception {
try {
- StmtTestUtils.parseYangSources("/openconfig-version/basic-import-invalid-1", StatementParserMode.OPENCONFIG_VER_MODE);
- fail("Test should fail due to invalid openconfig version");
+ StmtTestUtils.parseYangSources("/semantic-version/basic-import-invalid-1", StatementParserMode.SEMVER_MODE);
+ fail("Test should fail due to invalid semantic version");
} catch (ReactorException e) {
assertTrue(e.getCause().getMessage()
.startsWith("Unable to find module compatible with requested import [bar(0.1.2)]."));
@Test
public void basicImportErrTest2() throws Exception {
try {
- StmtTestUtils.parseYangSources("/openconfig-version/basic-import-invalid-2", StatementParserMode.OPENCONFIG_VER_MODE);
- fail("Test should fail due to invalid openconfig version");
+ StmtTestUtils.parseYangSources("/semantic-version/basic-import-invalid-2", StatementParserMode.SEMVER_MODE);
+ fail("Test should fail due to invalid semantic version");
} catch (ReactorException e) {
assertTrue(e.getCause().getMessage()
.startsWith("Unable to find module compatible with requested import [bar(0.1.2)]."));
@Test
public void nodeTest() throws Exception {
- SchemaContext context = StmtTestUtils.parseYangSources("/openconfig-version/node-test",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYangSources("/semantic-version/node-test",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("2016.1.1"), foo.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("2016.1.1"), foo.getSemanticVersion());
Module bar = StmtTestUtils.findImportedModule(context, foo, "bar");
- assertEquals(SemVer.valueOf("2016.4.6"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("2016.4.6"), bar.getSemanticVersion());
QName root = QName.create("foo", "2016-01-01", "foo-root");
QName container20160404 = QName.create("foo", "2016-01-01", "con20160404");
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-package org.opendaylight.yangtools.yang.stmt.openconfigver.yin;
+package org.opendaylight.yangtools.yang.stmt.semver.yin;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
import org.opendaylight.yangtools.yang.stmt.StmtTestUtils;
-public class YinOpenconfigVersionTest {
+public class YinSemanticVersionTest {
@Test
public void basicTest() throws SourceException, FileNotFoundException, ReactorException, URISyntaxException {
- SchemaContext context = StmtTestUtils.parseYinSources("/openconfig-version/yin-input/basic",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYinSources("/semantic-version/yin-input/basic",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
Module bar = context.findModuleByNamespace(new URI("bar")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.2"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.2"), bar.getSemanticVersion());
}
@Test
public void basicImportTest1() throws SourceException, FileNotFoundException, ReactorException, URISyntaxException {
- SchemaContext context = StmtTestUtils.parseYinSources("/openconfig-version/yin-input/basic-import",
- StatementParserMode.OPENCONFIG_VER_MODE);
+ SchemaContext context = StmtTestUtils.parseYinSources("/semantic-version/yin-input/basic-import",
+ StatementParserMode.SEMVER_MODE);
assertNotNull(context);
Module foo = context.findModuleByNamespace(new URI("foo")).iterator().next();
- Module semVer = context.findModuleByNamespace(new URI("http://openconfig.net/yang/openconfig-ext"))
+ Module semVer = context.findModuleByNamespace(new URI("urn:opendaylight:yang:extension:semantic-version"))
.iterator().next();
- assertEquals(SemVer.valueOf("0.0.1"), semVer.getOpenconfigVersion());
- assertEquals(SemVer.valueOf("0.1.1"), foo.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.0.1"), semVer.getSemanticVersion());
+ assertEquals(SemVer.valueOf("0.1.1"), foo.getSemanticVersion());
Module bar = StmtTestUtils.findImportedModule(context, foo, "bar");
- assertEquals(SemVer.valueOf("0.1.2"), bar.getOpenconfigVersion());
+ assertEquals(SemVer.valueOf("0.1.2"), bar.getSemanticVersion());
}
@Test
public void basicImportErrTest1() throws SourceException, FileNotFoundException, ReactorException,
URISyntaxException {
try {
- StmtTestUtils.parseYinSources("/openconfig-version/yin-input/basic-import-invalid", StatementParserMode.OPENCONFIG_VER_MODE);
- fail("Test should fail due to invalid openconfig version");
+ StmtTestUtils.parseYinSources("/semantic-version/yin-input/basic-import-invalid", StatementParserMode.SEMVER_MODE);
+ fail("Test should fail due to invalid semantic version");
} catch (ReactorException e) {
assertTrue(e.getCause().getMessage()
.startsWith("Unable to find module compatible with requested import [bar(0.1.2)]."));
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; oc-ext:openconfig-version "0.1.2";}
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; oc-ext:openconfig-version "0.1.2";}
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; revision-date 2016-01-31; oc-ext:openconfig-version "0.1.2";}
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; revision-date 2016-01-31; oc-ext:openconfig-version "0.1.2";}
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; oc-ext:openconfig-version "5.5.5"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; oc-ext:openconfig-version "5.5.5"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "5.5.2";
-
- container root {
- }
-}
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; oc-ext:openconfig-version "5.5.5"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "4.5.5";
-
- container root {
- }
-}
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; oc-ext:openconfig-version "5.5.5"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "5.4.5";
-
- container root {
- }
-}
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-02" {
- description "Initial version";
- }
- oc-ext:openconfig-version "5.5.5";
-
- container root {
- }
-}
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-03" {
- description "Initial version";
- }
- oc-ext:openconfig-version "5.6.5";
-
- container root {
- }
-}
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; oc-ext:openconfig-version "5.5.5"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "5.5.4";
-
- container root {
- }
-}
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-02" {
- description "Initial version";
- }
- oc-ext:openconfig-version "5.5.5";
-
- container root {
- }
-}
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-03" {
- description "Initial version";
- }
- oc-ext:openconfig-version "5.5.6";
-
- container root {
- }
-}
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; oc-ext:openconfig-version "5.5.5"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "1.0.0"; }
- import bar { prefix bar; oc-ext:openconfig-version "1.2.5"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "1.50.02";
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "1.3.95";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "2.5.40"; }
- import bar { prefix bar; oc-ext:openconfig-version "4.1.1"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "2.32.2";
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "2.5.50";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-31" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.99.99";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.2";
-
- container root {
- }
-}
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; revision-date 2016-01-31; oc-ext:openconfig-version "0.1.2";}
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.2";
-
- container root {
- }
-}
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; revision-date 2016-01-31; oc-ext:openconfig-version "0.1.2";}
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "2.0.0";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "1.0.0";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "1.0.0";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "2.0.0";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "1.0.0"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "1.0.0";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-02" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.2";
-
- container root {
- }
-}
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-03" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.3";
-
- container root {
- }
-}
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-31" {
- description "Initial version";
- }
- oc-ext:openconfig-version "1.1.2";
-
- container root {
- }
-}
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; oc-ext:openconfig-version "0.1.2";}
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "2.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-02" {
- description "Initial version";
- }
- oc-ext:openconfig-version "2.1.2";
-
- container root {
- }
-}
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; revision-date 2016-01-31; oc-ext:openconfig-version "1.0.0"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "2.0.0";
-
- container root {
- }
-}
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-02" {
- description "Initial version";
- }
- oc-ext:openconfig-version "2.1.0";
-
- container root {
- }
-}
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; oc-ext:openconfig-version "2.5.5"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.0.1";
-
- container root {
- }
-}
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-02" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.0";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "4.4.0";
-
- container root {
- }
-}
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-02" {
- description "Initial version";
- }
- oc-ext:openconfig-version "5.5.0";
-
- container root {
- }
-}
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; oc-ext:openconfig-version "5.5.5"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; revision-date 2017-04-06; oc-ext:openconfig-version "2016.4.5"; }
-
- revision 2016-01-01 {
- description "test";
- }
-
- oc-ext:openconfig-version "2016.1.1";
-
- container foo-root {
- uses bar:grp;
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.2";
-
- container root {
- }
-}
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; revision-date 2016-01-31; oc-ext:openconfig-version "0.1.2";}
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module foo {
- oc-ext:openconfig-version "0.1.1";
- import bar { prefix bar; revision-date 2016-01-31; oc-ext:openconfig-version "0.1.2";}
-
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
-
- container root {
- }
-}
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-31" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.2";
-
- container root {
- }
-}
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; revision-date 2016-01-31; oc-ext:openconfig-version "0.1.2";}
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
-
- container root {
- }
-
- oc-ext:openconfig-version "0.1.1";
- import bar { prefix bar; revision-date 2016-01-31; oc-ext:openconfig-version "0.1.2";}
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-
- oc-ext:openconfig-version "0.0.1";
-}
\ No newline at end of file
+++ /dev/null
-module bar {
- namespace "bar";
- prefix bar;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
-
- revision "2016-01-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.2";
-
- container root {
- }
-}
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1;
-
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
- import bar { prefix bar; revision-date 2016-01-01; oc-ext:openconfig-version "0.1.2";}
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "0.1.1";
-
- container root {
- }
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<module xmlns="urn:ietf:params:xml:ns:yang:yin:1" xmlns:oc-ext="http://openconfig.net/yang/openconfig-ext"
- name="openconfig-extensions">
- <yang-version value="1"></yang-version>
- <namespace uri="http://openconfig.net/yang/openconfig-ext"></namespace>
- <prefix value="oc-ext"></prefix>
- <organization>
- <text>OpenConfig working group</text>
- </organization>
- <contact>
- <text>OpenConfig working group www.openconfig.net</text>
- </contact>
- <description>
- <text>
- This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.
- </text>
- </description>
- <revision date="2017-01-29">
- <description>
- <text>Added extension for annotating encrypted values.</text>
- </description>
- <reference>
- <text>TBD</text>
- </reference>
- </revision>
- <revision date="2015-10-09">
- <description>
- <text>Initial OpenConfig public release</text>
- </description>
- <reference>
- <text>TBD</text>
- </reference>
- </revision>
- <revision date="2015-10-05">
- <description>
- <text>Initial revision</text>
- </description>
- <reference>
- <text>TBD</text>
- </reference>
- </revision>
- <oc-ext:openconfig-version semver="0.0.1"></oc-ext:openconfig-version>
- <extension name="openconfig-version">
- <argument name="semver">
- <yin-element value="false"></yin-element>
- </argument>
- <status value="current"></status>
- <description>
- <text>The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.
- </text>
- </description>
- </extension>
- <extension name="openconfig-encrypted-value">
- <description>
- <text>
- This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.
- </text>
- </description>
- </extension>
-</module>
\ No newline at end of file
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<module xmlns="urn:ietf:params:xml:ns:yang:yin:1" xmlns:oc-ext="http://openconfig.net/yang/openconfig-ext"
- name="openconfig-extensions">
- <yang-version value="1"></yang-version>
- <namespace uri="http://openconfig.net/yang/openconfig-ext"></namespace>
- <prefix value="oc-ext"></prefix>
- <organization>
- <text>OpenConfig working group</text>
- </organization>
- <contact>
- <text>OpenConfig working group www.openconfig.net</text>
- </contact>
- <description>
- <text>
- This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.
- </text>
- </description>
- <revision date="2017-01-29">
- <description>
- <text>Added extension for annotating encrypted values.</text>
- </description>
- <reference>
- <text>TBD</text>
- </reference>
- </revision>
- <revision date="2015-10-09">
- <description>
- <text>Initial OpenConfig public release</text>
- </description>
- <reference>
- <text>TBD</text>
- </reference>
- </revision>
- <revision date="2015-10-05">
- <description>
- <text>Initial revision</text>
- </description>
- <reference>
- <text>TBD</text>
- </reference>
- </revision>
- <oc-ext:openconfig-version semver="0.0.1"></oc-ext:openconfig-version>
- <extension name="openconfig-version">
- <argument name="semver">
- <yin-element value="false"></yin-element>
- </argument>
- <status value="current"></status>
- <description>
- <text>The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.
- </text>
- </description>
- </extension>
- <extension name="openconfig-encrypted-value">
- <description>
- <text>
- This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.
- </text>
- </description>
- </extension>
-</module>
\ No newline at end of file
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<module xmlns="urn:ietf:params:xml:ns:yang:yin:1" xmlns:bar="bar"
- xmlns:oc-ext="http://openconfig.net/yang/openconfig-ext" name="bar">
- <yang-version value="1"></yang-version>
- <namespace uri="bar"></namespace>
- <prefix value="bar"></prefix>
- <import module="openconfig-extensions">
- <prefix value="oc-ext"></prefix>
- <revision-date date="2017-01-29"></revision-date>
- <oc-ext:openconfig-version semver="0.0.1"></oc-ext:openconfig-version>
- </import>
- <organization>
- <text></text>
- </organization>
- <contact>
- <text></text>
- </contact>
- <revision date="2016-01-31"></revision>
- <oc-ext:openconfig-version semver="0.1.2"></oc-ext:openconfig-version>
- <container name="root">
- <presence value="false"></presence>
- <config value="true"></config>
- <status value="current"></status>
- </container>
-</module>
\ No newline at end of file
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<module xmlns="urn:ietf:params:xml:ns:yang:yin:1" xmlns:oc-ext="http://openconfig.net/yang/openconfig-ext"
- name="openconfig-extensions">
- <yang-version value="1"></yang-version>
- <namespace uri="http://openconfig.net/yang/openconfig-ext"></namespace>
- <prefix value="oc-ext"></prefix>
- <organization>
- <text>OpenConfig working group</text>
- </organization>
- <contact>
- <text>OpenConfig working group www.openconfig.net</text>
- </contact>
- <description>
- <text>
- This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.
- </text>
- </description>
- <revision date="2017-01-29">
- <description>
- <text>Added extension for annotating encrypted values.</text>
- </description>
- <reference>
- <text>TBD</text>
- </reference>
- </revision>
- <revision date="2015-10-09">
- <description>
- <text>Initial OpenConfig public release</text>
- </description>
- <reference>
- <text>TBD</text>
- </reference>
- </revision>
- <revision date="2015-10-05">
- <description>
- <text>Initial revision</text>
- </description>
- <reference>
- <text>TBD</text>
- </reference>
- </revision>
- <oc-ext:openconfig-version semver="0.0.1"></oc-ext:openconfig-version>
- <extension name="openconfig-version">
- <argument name="semver">
- <yin-element value="false"></yin-element>
- </argument>
- <status value="current"></status>
- <description>
- <text>The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.
- </text>
- </description>
- </extension>
- <extension name="openconfig-encrypted-value">
- <description>
- <text>
- This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.
- </text>
- </description>
- </extension>
-</module>
\ No newline at end of file
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1.1;
-
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "1.0.0"; }
- import bar { prefix bar; oc-ext:openconfig-version "1.2.5"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "1.50.02";
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1.1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "1.3.95";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+++ /dev/null
-module foo {
- namespace "foo";
- prefix foo;
- yang-version 1.1;
-
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "2.5.40"; }
- import bar { prefix bar; oc-ext:openconfig-version "4.1.1"; }
-
- revision "2016-02-01" {
- description "Initial version";
- }
- oc-ext:openconfig-version "2.32.2";
-}
+++ /dev/null
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
-
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
- }
-
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "2.5.50";
-
- extension openconfig-version {
- argument "semver" {
- yin-element false;
- }
- description
- "The OpenConfig version number for the module. This is
- expressed as a semantic version number of the form:
- x.y.z
- where:
- * x corresponds to the major version,
- * y corresponds to a minor version,
- * z corresponds to a patch version.
- This version corresponds to the model file within which it is
- defined, and does not cover the whole set of OpenConfig models.
- Where several modules are used to build up a single block of
- functionality, the same module version is specified across each
- file that makes up the module.
-
- A major version number of 0 indicates that this model is still
- in development (whether within OpenConfig or with industry
- partners), and is potentially subject to change.
-
- Following a release of major version 1, all modules will
- increment major revision number where backwards incompatible
- changes to the model are made.
-
- The minor version is changed when features are added to the
- model that do not impact current clients use of the model.
-
- The patch-level version is incremented when non-feature changes
- (such as bugfixes or clarifications to human-readable
- descriptions that do not impact model functionality) are made
- that maintain backwards compatibility.
-
- The version number is stored in the module meta-data.";
- }
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
prefix bar;
yang-version 1.1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "1.2.012"; }
- import foobar { prefix foobar; oc-ext:openconfig-version "2.25.3"; }
+ import semantic-version { prefix sv; sv:semantic-version "1.2.012"; }
+ import foobar { prefix foobar; sv:semantic-version "2.25.3"; }
revision "2016-01-03" {
description "Imported version";
}
- oc-ext:openconfig-version "1.2.6";
+ sv:semantic-version "1.2.6";
container root {
container test-container {
prefix bar;
yang-version 1.1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "1.2.210"; }
- import foobar { prefix foobar; oc-ext:openconfig-version "2.25.3"; }
+ import semantic-version { prefix sv; sv:semantic-version "1.2.210"; }
+ import foobar { prefix foobar; sv:semantic-version "2.25.3"; }
revision "2016-01-04" {
description "Not-imported version";
}
- oc-ext:openconfig-version "2.200.200";
+ sv:semantic-version "2.200.200";
container root {
container test-container {
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1.1;
+
+ import semantic-version { prefix sv; sv:semantic-version "1.0.0"; }
+ import bar { prefix bar; sv:semantic-version "1.2.5"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "1.50.02";
+}
prefix foobar;
yang-version 1.1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "1.2.95"; }
+ import semantic-version { prefix sv; sv:semantic-version "1.2.95"; }
revision "2016-01-31" {
description "Not-imported version";
}
- oc-ext:openconfig-version "2.25.2";
+ sv:semantic-version "2.25.2";
grouping test-grouping {
leaf name {
prefix foobar;
yang-version 1.1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "1.3.95"; }
+ import semantic-version { prefix sv; sv:semantic-version "1.3.95"; }
revision "2016-02-28" {
description "Imported version";
}
- oc-ext:openconfig-version "2.26.465";
+ sv:semantic-version "2.26.465";
grouping test-grouping {
leaf name {
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1.1;
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
+ revision 2016-02-02 {
+ description "Initial verison";
}
+ sv:semantic-version "1.3.95";
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
+ extension semantic-version {
+ argument "semantic-version" {
yin-element false;
}
description
The version number is stored in the module meta-data.";
}
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "2.0.40"; }
- import foobar { prefix foobar; oc-ext:openconfig-version "7.12.54"; }
+ import semantic-version { prefix sv; sv:semantic-version "2.0.40"; }
+ import foobar { prefix foobar; sv:semantic-version "7.12.54"; }
revision "2016-01-03" {
description "Imported version";
}
- oc-ext:openconfig-version "4.9.8";
+ sv:semantic-version "4.9.8";
augment "/foobar:root/foobar:test-container" {
leaf should-present-leaf-1 {
prefix bar;
yang-version 1.1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "2.0.50"; }
- import foobar { prefix foobar; oc-ext:openconfig-version "7.12.54"; }
+ import semantic-version { prefix sv; sv:semantic-version "2.0.50"; }
+ import foobar { prefix foobar; sv:semantic-version "7.12.54"; }
revision "2016-01-04" {
description "Not-imported version";
}
- oc-ext:openconfig-version "3.0.5";
+ sv:semantic-version "3.0.5";
augment "/foobar:root/foobar:test-container" {
leaf should-not-be-present-leaf-1 {
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1.1;
+
+ import semantic-version { prefix sv; sv:semantic-version "2.5.40"; }
+ import bar { prefix bar; sv:semantic-version "4.1.1"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "2.32.2";
+}
prefix foobar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "2.1.950"; }
+ import semantic-version { prefix sv; sv:semantic-version "2.1.950"; }
revision "2016-01-31" {
description "Not-imported version";
}
- oc-ext:openconfig-version "8.0.0";
+ sv:semantic-version "8.0.0";
container root {
leaf included-not-correct-mark {
prefix foobar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "2.5.50"; }
+ import semantic-version { prefix sv; sv:semantic-version "2.5.50"; }
revision "2016-02-27" {
description "Not-imported version";
}
- oc-ext:openconfig-version "7.13.0";
+ sv:semantic-version "7.13.0";
container root {
leaf included-not-correct-mark {
prefix foobar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "2.5.50"; }
+ import semantic-version { prefix sv; sv:semantic-version "2.5.50"; }
revision "2016-02-28" {
description "Imported version";
}
- oc-ext:openconfig-version "7.13.99";
+ sv:semantic-version "7.13.99";
container root {
leaf included-correct-mark {
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
+ revision 2016-02-02 {
+ description "Initial verison";
}
+ sv:semantic-version "2.5.50";
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
+ extension semantic-version {
+ argument "semantic-version" {
yin-element false;
}
description
The version number is stored in the module meta-data.";
}
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29;}
+ import semantic-version { prefix sv; revision-date 2016-02-02;}
revision "2016-01-31" {
description "Initial version";
}
- oc-ext:openconfig-version "0.1.2";
+ sv:semantic-version "0.1.2";
container root {
}
prefix foo;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29;}
+ import semantic-version { prefix sv; revision-date 2016-02-02;}
import bar { prefix bar; revision-date 2016-01-31;}
revision "2016-02-01" {
description "Initial version";
}
- oc-ext:openconfig-version "0.1.1";
+ sv:semantic-version "0.1.1";
container root {
}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-01" {
description "Initial version";
}
- oc-ext:openconfig-version "5.2.5";
+ sv:semantic-version "0.1.2";
container root {
}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-31" {
description "Initial version";
}
- oc-ext:openconfig-version "1.1.2";
+ sv:semantic-version "1.1.2";
container root {
}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; sv:semantic-version "0.1.2";}
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-01" {
description "Initial version";
}
- oc-ext:openconfig-version "2.5.5";
+ sv:semantic-version "1.1.2";
container root {
}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-31" {
description "Initial version";
}
- oc-ext:openconfig-version "1.1.3";
+ sv:semantic-version "1.1.3";
container root {
}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; sv:semantic-version "0.1.2";}
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-31" {
description "Initial version";
}
- oc-ext:openconfig-version "0.1.2";
+ sv:semantic-version "1.1.2";
container root {
}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; revision-date 2016-01-31; sv:semantic-version "0.1.2";}
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-31" {
description "Initial version";
}
- oc-ext:openconfig-version "1.0.0";
+ sv:semantic-version "0.1.2";
container root {
}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; revision-date 2016-01-31; sv:semantic-version "0.1.2";}
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-01" {
description "Initial version";
}
- oc-ext:openconfig-version "1.1.2";
+ sv:semantic-version "2.5.5";
container root {
}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-02" {
description "Initial version";
}
- oc-ext:openconfig-version "5.5.5";
+ sv:semantic-version "3.5.5";
container root {
}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-03" {
description "Initial version";
}
- oc-ext:openconfig-version "6.5.5";
+ sv:semantic-version "4.5.5";
container root {
}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; sv:semantic-version "5.5.5"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-01" {
description "Initial version";
}
- oc-ext:openconfig-version "0.1.2";
+ sv:semantic-version "5.2.5";
container root {
}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-02" {
description "Initial version";
}
- oc-ext:openconfig-version "3.5.5";
+ sv:semantic-version "5.3.5";
container root {
}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-03" {
description "Initial version";
}
- oc-ext:openconfig-version "4.5.5";
+ sv:semantic-version "5.4.5";
container root {
}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; sv:semantic-version "5.5.5"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "5.5.2";
+
+ container root {
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-02" {
description "Initial version";
}
- oc-ext:openconfig-version "5.3.5";
+ sv:semantic-version "5.5.3";
container root {
}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-03" {
description "Initial version";
}
- oc-ext:openconfig-version "5.4.5";
+ sv:semantic-version "5.5.4";
container root {
}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; sv:semantic-version "5.5.5"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "4.5.5";
+
+ container root {
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-02" {
description "Initial version";
}
- oc-ext:openconfig-version "5.5.3";
+ sv:semantic-version "5.5.5";
container root {
}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-03" {
description "Initial version";
}
- oc-ext:openconfig-version "5.5.4";
+ sv:semantic-version "6.5.5";
container root {
}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; sv:semantic-version "5.5.5"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "5.4.5";
+
+ container root {
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-02" {
+ description "Initial version";
+ }
+ sv:semantic-version "5.5.5";
+
+ container root {
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-03" {
+ description "Initial version";
+ }
+ sv:semantic-version "5.6.5";
+
+ container root {
+ }
+}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; sv:semantic-version "5.5.5"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "5.5.4";
+
+ container root {
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-02" {
+ description "Initial version";
+ }
+ sv:semantic-version "5.5.5";
+
+ container root {
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-03" {
+ description "Initial version";
+ }
+ sv:semantic-version "5.5.6";
+
+ container root {
+ }
+}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; sv:semantic-version "5.5.5"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "1.2.012"; }
- import foobar { prefix foobar; oc-ext:openconfig-version "2.25.3"; }
+ import semantic-version { prefix sv; sv:semantic-version "1.2.012"; }
+ import foobar { prefix foobar; sv:semantic-version "2.25.3"; }
revision "2016-01-03" {
description "Imported version";
}
- oc-ext:openconfig-version "1.2.6";
+ sv:semantic-version "1.2.6";
container root {
container test-container {
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "1.2.210"; }
- import foobar { prefix foobar; oc-ext:openconfig-version "2.25.3"; }
+ import semantic-version { prefix sv; sv:semantic-version "1.2.210"; }
+ import foobar { prefix foobar; sv:semantic-version "2.25.3"; }
revision "2016-01-04" {
description "Not-imported version";
}
- oc-ext:openconfig-version "2.200.200";
+ sv:semantic-version "2.200.200";
container root {
container test-container {
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; sv:semantic-version "1.0.0"; }
+ import bar { prefix bar; sv:semantic-version "1.2.5"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "1.50.02";
+}
prefix foobar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "1.2.95"; }
+ import semantic-version { prefix sv; sv:semantic-version "1.2.95"; }
revision "2016-01-31" {
description "Not-imported version";
}
- oc-ext:openconfig-version "2.25.2";
+ sv:semantic-version "2.25.2";
grouping test-grouping {
leaf name {
prefix foobar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "1.3.95"; }
+ import semantic-version { prefix sv; sv:semantic-version "1.3.95"; }
revision "2016-02-28" {
description "Imported version";
}
- oc-ext:openconfig-version "2.26.465";
+ sv:semantic-version "2.26.465";
grouping test-grouping {
leaf name {
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "1.3.95";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "2.0.40"; }
- import foobar { prefix foobar; oc-ext:openconfig-version "7.12.54"; }
+ import semantic-version { prefix sv; sv:semantic-version "2.0.40"; }
+ import foobar { prefix foobar; sv:semantic-version "7.12.54"; }
revision "2016-01-03" {
description "Imported version";
}
- oc-ext:openconfig-version "4.9.8";
+ sv:semantic-version "4.9.8";
augment "/foobar:root/foobar:test-container" {
leaf should-present-leaf-1 {
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "2.0.50"; }
- import foobar { prefix foobar; oc-ext:openconfig-version "7.12.54"; }
+ import semantic-version { prefix sv; sv:semantic-version "2.0.50"; }
+ import foobar { prefix foobar; sv:semantic-version "7.12.54"; }
revision "2016-01-04" {
description "Not-imported version";
}
- oc-ext:openconfig-version "3.0.5";
+ sv:semantic-version "3.0.5";
augment "/foobar:root/foobar:test-container" {
leaf should-not-be-present-leaf-1 {
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; sv:semantic-version "2.5.40"; }
+ import bar { prefix bar; sv:semantic-version "4.1.1"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "2.32.2";
+}
prefix foobar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "2.1.950"; }
+ import semantic-version { prefix sv; sv:semantic-version "2.1.950"; }
revision "2016-01-31" {
description "Not-imported version";
}
- oc-ext:openconfig-version "8.0.0";
+ sv:semantic-version "8.0.0";
container root {
leaf included-not-correct-mark {
prefix foobar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "2.5.50"; }
+ import semantic-version { prefix sv; sv:semantic-version "2.5.50"; }
revision "2016-02-27" {
description "Not-imported version";
}
- oc-ext:openconfig-version "7.13.0";
+ sv:semantic-version "7.13.0";
container root {
leaf included-not-correct-mark {
prefix foobar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; oc-ext:openconfig-version "2.5.50"; }
+ import semantic-version { prefix sv; sv:semantic-version "2.5.50"; }
revision "2016-02-28" {
description "Imported version";
}
- oc-ext:openconfig-version "7.13.99";
+ sv:semantic-version "7.13.99";
container root {
leaf included-correct-mark {
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "2.5.50";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-31" {
description "Initial version";
}
- oc-ext:openconfig-version "1.1.2";
+ sv:semantic-version "1.0.0";
container root {
}
prefix foo;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
import bar { prefix bar; revision-date 2016-01-31; }
revision "2016-02-01" {
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-31" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.99.99";
+
+ container root {
+ }
+}
prefix foo;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
import bar { prefix bar; revision-date 2016-01-31; }
revision "2016-02-01" {
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.2";
+
+ container root {
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-31" {
description "Initial version";
}
- oc-ext:openconfig-version "1.1.2";
+ sv:semantic-version "1.1.2";
container root {
}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; revision-date 2016-01-31; sv:semantic-version "0.1.2";}
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.2";
+
+ container root {
+ }
+}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; revision-date 2016-01-31; sv:semantic-version "0.1.2";}
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
prefix foo;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.9.9"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "1.0.0"; }
revision "2016-02-01" {
description "Initial version";
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "2.0.0";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
prefix foo;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "1.0.0"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.9.9"; }
revision "2016-02-01" {
description "Initial version";
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "1.0.0";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
prefix foo;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "2.0.5"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "2.0.0"; }
revision "2016-02-01" {
description "Initial version";
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "1.0.0";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
prefix foo;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "2.0.0"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "2.0.5"; }
revision "2016-02-01" {
description "Initial version";
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "2.0.0";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "1.0.0"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "1.0.0";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-02" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.2";
+
+ container root {
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-03" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.3";
+
+ container root {
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-04" {
description "Initial version";
}
- oc-ext:openconfig-version "0.10.4";
+ sv:semantic-version "0.10.4";
container root {
}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-31" {
+ description "Initial version";
+ }
+ sv:semantic-version "1.1.2";
+
+ container root {
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-02-28" {
description "Initial version";
}
- oc-ext:openconfig-version "1.2.28";
+ sv:semantic-version "1.2.28";
container root {
}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; sv:semantic-version "0.1.2";}
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "2.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-02" {
+ description "Initial version";
+ }
+ sv:semantic-version "2.1.2";
+
+ container root {
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-02-01" {
description "Initial version";
}
- oc-ext:openconfig-version "5.5.5";
+ sv:semantic-version "4.1.1";
container root {
}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-02-02" {
description "Initial version";
}
- oc-ext:openconfig-version "5.5.6";
+ sv:semantic-version "5.0.0";
container root {
}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; revision-date 2016-01-31; sv:semantic-version "1.0.0"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "2.0.0";
+
+ container root {
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-02" {
+ description "Initial version";
+ }
+ sv:semantic-version "2.1.0";
+
+ container root {
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-02-01" {
description "Initial version";
}
- oc-ext:openconfig-version "4.1.1";
+ sv:semantic-version "2.5.0";
container root {
}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-02-02" {
description "Initial version";
}
- oc-ext:openconfig-version "5.0.0";
+ sv:semantic-version "2.5.4";
container root {
}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; sv:semantic-version "2.5.5"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.0.1";
+
+ container root {
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-02" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.0";
+
+ container root {
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-02-01" {
description "Initial version";
}
- oc-ext:openconfig-version "2.5.0";
+ sv:semantic-version "0.9.5";
container root {
}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-02-02" {
description "Initial version";
}
- oc-ext:openconfig-version "2.5.4";
+ sv:semantic-version "1.0.0";
container root {
}
prefix foo;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
import bar { prefix bar; }
revision "2016-02-01" {
description "Initial version";
}
- oc-ext:openconfig-version "0.1.1";
+ sv:semantic-version "0.1.1";
container root {
}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "4.4.0";
+
+ container root {
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-02" {
+ description "Initial version";
+ }
+ sv:semantic-version "5.5.0";
+
+ container root {
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-02-01" {
description "Initial version";
}
- oc-ext:openconfig-version "0.9.5";
+ sv:semantic-version "5.5.5";
container root {
}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-02-02" {
description "Initial version";
}
- oc-ext:openconfig-version "1.0.0";
+ sv:semantic-version "5.5.6";
container root {
}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; sv:semantic-version "5.5.5"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision 2016-04-04 {
description "test";
}
- oc-ext:openconfig-version "2016.4.4";
+ sv:semantic-version "2016.4.4";
grouping grp {
container con20160404 {
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision 2016-04-05 {
description "test";
}
- oc-ext:openconfig-version "2016.4.5";
+ sv:semantic-version "2016.4.5";
grouping grp {
container con20160404 {
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision 2016-04-06 {
description "test";
}
- oc-ext:openconfig-version "2016.4.6";
+ sv:semantic-version "2016.4.6";
grouping grp {
container con20160404 {
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision 2017-04-06 {
description "test";
}
- oc-ext:openconfig-version "2017.4.6";
+ sv:semantic-version "2017.4.6";
grouping grp {
container con20160404 {
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; revision-date 2017-04-06; sv:semantic-version "2016.4.5"; }
+
+ revision 2016-01-01 {
+ description "test";
+ }
+
+ sv:semantic-version "2016.1.1";
+
+ container foo-root {
+ uses bar:grp;
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
module bar {
- oc-ext:openconfig-version "0.1.2";
+ sv:semantic-version "0.1.2";
namespace "bar";
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-31" {
description "Initial version";
--- /dev/null
+module foo {
+ sv:semantic-version "0.1.1";
+ import bar { prefix bar; revision-date 2016-01-31; sv:semantic-version "0.1.2";}
+
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+
+ container root {
+ }
+}
-module openconfig-extensions {
- oc-ext:openconfig-version "0.0.1";
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
+module semantic-version {
+ sv:semantic-version "0.0.1";
- organization "OpenConfig working group";
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
+ revision 2016-02-02 {
+ description "Initial verison";
}
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- extension openconfig-version {
- argument "semver" {
+ extension semantic-version {
+ argument "semantic-version" {
yin-element false;
}
description
The version number is stored in the module meta-data.";
}
-
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-31" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.2";
+
+ container root {
+ }
+}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; revision-date 2016-01-31; sv:semantic-version "0.1.2";}
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
prefix bar;
yang-version 1;
- import openconfig-extensions { prefix oc-ext; revision-date 2017-01-29; oc-ext:openconfig-version "0.0.1"; }
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
revision "2016-01-31" {
description "Initial version";
container root {
}
- oc-ext:openconfig-version "0.1.2";
+ sv:semantic-version "0.1.2";
}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+
+ container root {
+ }
+
+ sv:semantic-version "0.1.1";
+ import bar { prefix bar; revision-date 2016-01-31; sv:semantic-version "0.1.2";}
+}
-module openconfig-extensions {
- yang-version "1";
- namespace "http://openconfig.net/yang/openconfig-ext";
- prefix "oc-ext";
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
- organization "OpenConfig working group";
-
- contact
- "OpenConfig working group
- www.openconfig.net";
-
- description
- "This module provides extensions to the YANG language to allow
- OpenConfig specific functionality and meta-data to be defined.";
-
- revision "2017-01-29" {
- description
- "Added extension for annotating encrypted values.";
- reference "TBD";
- }
-
- revision "2015-10-09" {
- description
- "Initial OpenConfig public release";
- reference "TBD";
+ revision 2016-02-02 {
+ description "Initial verison";
}
- revision "2015-10-05" {
- description
- "Initial revision";
- reference "TBD";
- }
-
- oc-ext:openconfig-version "0.0.1";
-
- extension openconfig-version {
- argument "semver" {
+ extension semantic-version {
+ argument "semantic-version" {
yin-element false;
}
description
The version number is stored in the module meta-data.";
}
- extension openconfig-encrypted-value {
- description
- "This extension provides an annotation on schema nodes to
- indicate that the corresponding value should be stored and
- reported in encrypted form.
- Clients reading the configuration or applied configuration
- for the node should expect to receive only the encrypted value.
- This annotation may be used on nodes such as secure passwords
- in which the device never reports a cleartext value, even
- if the input is provided as cleartext.";
- }
-}
\ No newline at end of file
+ sv:semantic-version "0.0.1";
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.2";
+
+ container root {
+ }
+}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; revision-date 2016-01-31; sv:semantic-version "0.1.2";}
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
--- /dev/null
+module bar {
+ namespace "bar";
+ prefix bar;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+
+ revision "2016-01-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.2";
+
+ container root {
+ }
+}
--- /dev/null
+module foo {
+ namespace "foo";
+ prefix foo;
+ yang-version 1;
+
+ import semantic-version { prefix sv; revision-date 2016-02-02; sv:semantic-version "0.0.1"; }
+ import bar { prefix bar; revision-date 2016-01-01; sv:semantic-version "0.1.2";}
+
+ revision "2016-02-01" {
+ description "Initial version";
+ }
+ sv:semantic-version "0.1.1";
+
+ container root {
+ }
+}
--- /dev/null
+module semantic-version {
+ namespace "urn:opendaylight:yang:extension:semantic-version";
+ prefix sv;
+ yang-version 1;
+
+ revision 2016-02-02 {
+ description "Initial verison";
+ }
+ sv:semantic-version "0.0.1";
+
+ extension semantic-version {
+ argument "semantic-version" {
+ yin-element false;
+ }
+ description
+ "The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.";
+ }
+}
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:ietf:params:xml:ns:yang:yin:1" xmlns:bar="bar"
- xmlns:oc-ext="http://openconfig.net/yang/openconfig-ext" name="bar">
+ xmlns:sv="urn:opendaylight:yang:extension:semantic-version" name="bar">
<yang-version value="1"></yang-version>
<namespace uri="bar"></namespace>
<prefix value="bar"></prefix>
- <import module="openconfig-extensions">
- <prefix value="oc-ext"></prefix>
+ <import module="semantic-version">
+ <prefix value="sv"></prefix>
<revision-date date="2016-02-02"></revision-date>
- <oc-ext:openconfig-version semver="0.0.1"></oc-ext:openconfig-version>
+ <sv:semantic-version semantic-version="0.0.1"></sv:semantic-version>
</import>
<organization>
<text></text>
<text></text>
</contact>
<revision date="2016-01-01"></revision>
- <oc-ext:openconfig-version semver="1.1.2"></oc-ext:openconfig-version>
+ <sv:semantic-version semantic-version="1.1.2"></sv:semantic-version>
<container name="root">
<presence value="false"></presence>
<config value="true"></config>
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:ietf:params:xml:ns:yang:yin:1" xmlns:bar="bar"
- xmlns:oc-ext="http://openconfig.net/yang/openconfig-ext" name="bar">
+ xmlns:sv="urn:opendaylight:yang:extension:semantic-version" name="bar">
<yang-version value="1"></yang-version>
<namespace uri="bar"></namespace>
<prefix value="bar"></prefix>
- <import module="openconfig-extensions">
- <prefix value="oc-ext"></prefix>
+ <import module="semantic-version">
+ <prefix value="sv"></prefix>
<revision-date date="2016-02-02"></revision-date>
- <oc-ext:openconfig-version semver="0.0.1"></oc-ext:openconfig-version>
+ <sv:semantic-version semantic-version="0.0.1"></sv:semantic-version>
</import>
<organization>
<text></text>
<text></text>
</contact>
<revision date="2016-01-31"></revision>
- <oc-ext:openconfig-version semver="1.1.3"></oc-ext:openconfig-version>
+ <sv:semantic-version semantic-version="1.1.3"></sv:semantic-version>
<container name="root">
<presence value="false"></presence>
<config value="true"></config>
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:ietf:params:xml:ns:yang:yin:1" xmlns:foo="foo" xmlns:bar="bar"
- xmlns:oc-ext="http://openconfig.net/yang/openconfig-ext" name="foo">
+ xmlns:sv="urn:opendaylight:yang:extension:semantic-version" name="foo">
<yang-version value="1"></yang-version>
<namespace uri="foo"></namespace>
<prefix value="foo"></prefix>
<import module="bar">
<prefix value="bar"></prefix>
<revision-date date="2016-01-31"></revision-date>
- <oc-ext:openconfig-version semver="0.1.2"></oc-ext:openconfig-version>
+ <sv:semantic-version semantic-version="0.1.2"></sv:semantic-version>
</import>
- <import module="openconfig-extensions">
- <prefix value="oc-ext"></prefix>
+ <import module="semantic-version">
+ <prefix value="sv"></prefix>
<revision-date date="2016-02-02"></revision-date>
- <oc-ext:openconfig-version semver="0.0.1"></oc-ext:openconfig-version>
+ <sv:semantic-version semantic-version="0.0.1"></sv:semantic-version>
</import>
<organization>
<text></text>
<text></text>
</contact>
<revision date="2016-02-01"></revision>
- <oc-ext:openconfig-version semver="0.1.1"></oc-ext:openconfig-version>
+ <sv:semantic-version semantic-version="0.1.1"></sv:semantic-version>
<container name="root">
<presence value="false"></presence>
<config value="true"></config>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<module xmlns="urn:ietf:params:xml:ns:yang:yin:1" xmlns:sv="urn:opendaylight:yang:extension:semantic-version"
+ name="semantic-version">
+ <yang-version value="1"></yang-version>
+ <namespace uri="urn:opendaylight:yang:extension:semantic-version"></namespace>
+ <prefix value="sv"></prefix>
+ <organization>
+ <text></text>
+ </organization>
+ <contact>
+ <text></text>
+ </contact>
+ <revision date="2016-02-02"></revision>
+ <sv:semantic-version semantic-version="0.0.1"></sv:semantic-version>
+ <extension name="semantic-version">
+ <argument name="semantic-version">
+ <yin-element value="false"></yin-element>
+ </argument>
+ <status value="current"></status>
+ <description>
+ <text>The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.
+ </text>
+ </description>
+ </extension>
+</module>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:ietf:params:xml:ns:yang:yin:1" xmlns:bar="bar"
- xmlns:oc-ext="http://openconfig.net/yang/openconfig-ext" name="bar">
+ xmlns:sv="urn:opendaylight:yang:extension:semantic-version" name="bar">
<yang-version value="1"></yang-version>
<namespace uri="bar"></namespace>
<prefix value="bar"></prefix>
- <import module="openconfig-extensions">
- <prefix value="oc-ext"></prefix>
+ <import module="semantic-version">
+ <prefix value="sv"></prefix>
<revision-date date="2016-02-02"></revision-date>
- <oc-ext:openconfig-version semver="0.0.1"></oc-ext:openconfig-version>
+ <sv:semantic-version semantic-version="0.0.1"></sv:semantic-version>
</import>
<organization>
<text></text>
<text></text>
</contact>
<revision date="2016-01-01"></revision>
- <oc-ext:openconfig-version semver="0.1.2"></oc-ext:openconfig-version>
+ <sv:semantic-version semantic-version="0.1.2"></sv:semantic-version>
<container name="root">
<presence value="false"></presence>
<config value="true"></config>
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:ietf:params:xml:ns:yang:yin:1" xmlns:bar="bar"
- xmlns:oc-ext="http://openconfig.net/yang/openconfig-ext" name="bar">
+ xmlns:sv="urn:opendaylight:yang:extension:semantic-version" name="bar">
<yang-version value="1"></yang-version>
<namespace uri="bar"></namespace>
<prefix value="bar"></prefix>
- <import module="openconfig-extensions">
- <prefix value="oc-ext"></prefix>
+ <import module="semantic-version">
+ <prefix value="sv"></prefix>
<revision-date date="2016-02-02"></revision-date>
- <oc-ext:openconfig-version semver="0.0.1"></oc-ext:openconfig-version>
+ <sv:semantic-version semantic-version="0.0.1"></sv:semantic-version>
</import>
<organization>
<text></text>
<text></text>
</contact>
<revision date="2016-01-31"></revision>
- <oc-ext:openconfig-version semver="1.1.2"></oc-ext:openconfig-version>
+ <sv:semantic-version semantic-version="1.1.2"></sv:semantic-version>
<container name="root">
<presence value="false"></presence>
<config value="true"></config>
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:ietf:params:xml:ns:yang:yin:1" xmlns:foo="foo" xmlns:bar="bar"
- xmlns:oc-ext="http://openconfig.net/yang/openconfig-ext" name="foo">
+ xmlns:sv="urn:opendaylight:yang:extension:semantic-version" name="foo">
<yang-version value="1"></yang-version>
<namespace uri="foo"></namespace>
<prefix value="foo"></prefix>
<import module="bar">
<prefix value="bar"></prefix>
<revision-date date="2016-01-31"></revision-date>
- <oc-ext:openconfig-version semver="0.1.2"></oc-ext:openconfig-version>
+ <sv:semantic-version semantic-version="0.1.2"></sv:semantic-version>
</import>
- <import module="openconfig-extensions">
- <prefix value="oc-ext"></prefix>
+ <import module="semantic-version">
+ <prefix value="sv"></prefix>
<revision-date date="2016-02-02"></revision-date>
- <oc-ext:openconfig-version semver="0.0.1"></oc-ext:openconfig-version>
+ <sv:semantic-version semantic-version="0.0.1"></sv:semantic-version>
</import>
<organization>
<text></text>
<text></text>
</contact>
<revision date="2016-02-01"></revision>
- <oc-ext:openconfig-version semver="0.1.1"></oc-ext:openconfig-version>
+ <sv:semantic-version semantic-version="0.1.1"></sv:semantic-version>
<container name="root">
<presence value="false"></presence>
<config value="true"></config>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<module xmlns="urn:ietf:params:xml:ns:yang:yin:1" xmlns:sv="urn:opendaylight:yang:extension:semantic-version"
+ name="semantic-version">
+ <yang-version value="1"></yang-version>
+ <namespace uri="urn:opendaylight:yang:extension:semantic-version"></namespace>
+ <prefix value="sv"></prefix>
+ <organization>
+ <text></text>
+ </organization>
+ <contact>
+ <text></text>
+ </contact>
+ <revision date="2016-02-02"></revision>
+ <sv:semantic-version semantic-version="0.0.1"></sv:semantic-version>
+ <extension name="semantic-version">
+ <argument name="semantic-version">
+ <yin-element value="false"></yin-element>
+ </argument>
+ <status value="current"></status>
+ <description>
+ <text>The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.
+ </text>
+ </description>
+ </extension>
+</module>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<module xmlns="urn:ietf:params:xml:ns:yang:yin:1" xmlns:bar="bar"
+ xmlns:sv="urn:opendaylight:yang:extension:semantic-version" name="bar">
+ <yang-version value="1"></yang-version>
+ <namespace uri="bar"></namespace>
+ <prefix value="bar"></prefix>
+ <import module="semantic-version">
+ <prefix value="sv"></prefix>
+ <revision-date date="2016-02-02"></revision-date>
+ <sv:semantic-version semantic-version="0.0.1"></sv:semantic-version>
+ </import>
+ <organization>
+ <text></text>
+ </organization>
+ <contact>
+ <text></text>
+ </contact>
+ <revision date="2016-01-31"></revision>
+ <sv:semantic-version semantic-version="0.1.2"></sv:semantic-version>
+ <container name="root">
+ <presence value="false"></presence>
+ <config value="true"></config>
+ <status value="current"></status>
+ </container>
+</module>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:ietf:params:xml:ns:yang:yin:1" xmlns:foo="foo" xmlns:bar="bar"
- xmlns:oc-ext="http://openconfig.net/yang/openconfig-ext" name="foo">
+ xmlns:sv="urn:opendaylight:yang:extension:semantic-version" name="foo">
<yang-version value="1"></yang-version>
<namespace uri="foo"></namespace>
<prefix value="foo"></prefix>
<import module="bar">
<prefix value="bar"></prefix>
<revision-date date="2016-01-31"></revision-date>
- <oc-ext:openconfig-version semver="0.1.2"></oc-ext:openconfig-version>
+ <sv:semantic-version semantic-version="0.1.2"></sv:semantic-version>
</import>
- <import module="openconfig-extensions">
- <prefix value="oc-ext"></prefix>
- <revision-date date="2017-01-29"></revision-date>
- <oc-ext:openconfig-version semver="0.0.1"></oc-ext:openconfig-version>
+ <import module="semantic-version">
+ <prefix value="sv"></prefix>
+ <revision-date date="2016-02-02"></revision-date>
+ <sv:semantic-version semantic-version="0.0.1"></sv:semantic-version>
</import>
<organization>
<text></text>
<text></text>
</contact>
<revision date="2016-02-01"></revision>
- <oc-ext:openconfig-version semver="0.1.1"></oc-ext:openconfig-version>
+ <sv:semantic-version semantic-version="0.1.1"></sv:semantic-version>
<container name="root">
<presence value="false"></presence>
<config value="true"></config>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<module xmlns="urn:ietf:params:xml:ns:yang:yin:1" xmlns:sv="urn:opendaylight:yang:extension:semantic-version"
+ name="semantic-version">
+ <yang-version value="1"></yang-version>
+ <namespace uri="urn:opendaylight:yang:extension:semantic-version"></namespace>
+ <prefix value="sv"></prefix>
+ <organization>
+ <text></text>
+ </organization>
+ <contact>
+ <text></text>
+ </contact>
+ <revision date="2016-02-02"></revision>
+ <sv:semantic-version semantic-version="0.0.1"></sv:semantic-version>
+ <extension name="semantic-version">
+ <argument name="semantic-version">
+ <yin-element value="false"></yin-element>
+ </argument>
+ <status value="current"></status>
+ <description>
+ <text>The OpenConfig version number for the module. This is
+ expressed as a semantic version number of the form:
+ x.y.z
+ where:
+ * x corresponds to the major version,
+ * y corresponds to a minor version,
+ * z corresponds to a patch version.
+ This version corresponds to the model file within which it is
+ defined, and does not cover the whole set of OpenConfig models.
+ Where several modules are used to build up a single block of
+ functionality, the same module version is specified across each
+ file that makes up the module.
+
+ A major version number of 0 indicates that this model is still
+ in development (whether within OpenConfig or with industry
+ partners), and is potentially subject to change.
+
+ Following a release of major version 1, all modules will
+ increment major revision number where backwards incompatible
+ changes to the model are made.
+
+ The minor version is changed when features are added to the
+ model that do not impact current clients use of the model.
+
+ The patch-level version is incremented when non-feature changes
+ (such as bugfixes or clarifications to human-readable
+ descriptions that do not impact model functionality) are made
+ that maintain backwards compatibility.
+
+ The version number is stored in the module meta-data.
+ </text>
+ </description>
+ </extension>
+</module>
\ No newline at end of file