2 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
\r
4 * This program and the accompanying materials are made available under the
\r
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
\r
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
\r
8 package org.opendaylight.controller.yang.model.api;
\r
10 import java.util.List;
\r
13 * Interface describing YANG 'deviation' statement.
\r
15 * The 'deviation' statement defines a hierarchy of a module that the device
\r
16 * does not implement faithfully. Deviations define the way a device deviate
\r
20 public interface Deviation {
\r
23 * Enum describing YANG deviation 'deviate' statement. It defines how the
\r
24 * device's implementation of the target node deviates from its original
\r
28 NOT_SUPPORTED, ADD, REPLACE, DELETE
\r
32 * @return SchemaPath that identifies the node in the schema tree where a
\r
33 * deviation from the module occurs.
\r
35 SchemaPath getTargetPath();
\r
38 * @return deviate statement of this deviation
\r
40 Deviate getDeviate();
\r
43 * @return textual cross-reference to an external document that provides
\r
44 * additional information relevant to this node.
\r
46 String getReference();
\r
49 * @return collection of all unknown nodes defined under this schema node.
\r
51 public List<UnknownSchemaNode> getUnknownSchemaNodes();
\r