opennetworkingfoundation / 5g-xhaul Goto Github PK
View Code? Open in Web Editor NEW5G xHaul PoC Applications
License: Apache License 2.0
5G xHaul PoC Applications
License: Apache License 2.0
I have followed the steps to setup the environment and cloned the projects. the "mvn install failed because of "devicemanager-impl: Error(s) found in bundle configuration ". The details are copied,
~/odl/CENTENNIAL/code-Carbon-SR1$ mvn clean install -DskipTests
.............
[INFO] ONF :: Wireless :: mwtn-parent ..................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 03:50 min
[INFO] Finished at: 2019-04-18T16:06:11+00:00
[INFO] Final Memory: 206M/848M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.felix:maven-bundle-plugin:3.0.1:bundle (default-bundle) on project devicemanager-impl: Error(s) found in bundle configuration -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR] mvn -rf :devicemanager-impl
Thanks,
Harry
For the proposal in the issue openBackhaul/core#13 , need to include the reference sub-statement to the revision statement dated 2019-11-27
Solution :
In the UML2YANG tool in the experimental branch , need to include statement "reference="ONF-TR-512, RFC 6020 and RFC 6087"" to the revision tag of 2019-11-27 in the /models/tools/pruning-and-refactoring/core-model/src/main/resources/xslt/prune-and-refactor-core-model.xslt
<revision xmi:type="OpenModel_Profile:Revision" xmi:id="onf-core-nf-revision-2019-11-27" date="2019-11-27" version="v1.4" description="Package equipment-specification has been deleted,

because of wrong key statements and overall grouping never applied.
" additionalChanges="" reference="ONF-TR-512, RFC 6020 and RFC 6087"/>
As per TR-532 mapping guideline , for leafs , if mandatory statement is 1 , then mandatory sub statement shall be true.
As per RFC 6020 section 7.6.1 ,
Since we have default values included for all the attributes in the already provided technology specific modules, we are planning to use the following condition for including mandatory substatement,
(if multiplicity = 1 in UML) AND (no default value defined) => (then mandatory statement to be put into YANG)
To support this change, the following needs to be modified,
I am not able to open localhost:8080. It shows connection timeout. I opened ./karaf installed necessary features but still its not opening. Can anyone help me with this?
For the proposal in the issue openBackhaul/core#10 , need to prune the attribute LogicalTerminationPoint:physicalPortRefernce[*] from the CoreModel ,
Solution :
In the UML2YANG tool in the experimental branch ,
<!-- To change the datatype of physical-port-reference from string to leafref to point to a instance in the equipment list -->
<xsl:template match="ownedAttribute[@xmi:id = '_RLDi4BieEeSh8KVgZCMyDw' ]" >
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:attribute name="type">_8SXNej-HEeaRI-H69PghuA</xsl:attribute>
<xsl:attribute name="aggregation">shared</xsl:attribute>
<xsl:attribute name="association">_X1qQMD-QEeaRI-H69PghuA</xsl:attribute>
<xsl:apply-templates select="node() | text()"/>
</xsl:copy>
</xsl:template>
<property id="_RLDi4BieEeSh8KVgZCMyDw" name="physicalPortReference" prune="true"/>
~/odl/CENTENNIAL/code-Oxygen-SR3$ mvn clean install -DskipTests
[FATAL] Non-resolvable parent POM for com.highstreet.technologies.odlux:odlux-app-minimumApp:[unknown-version]: Failure to find com.highstreet.technologies.odlux:odlux-parent:pom:0.7.3-SNAPSHOT in https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/ was cached in the local repository, resolution will not be reattempted until the update interval of opendaylight-snapshot has elapsed or updates are forced and 'parent.relativePath' points at no local POM @ line 6, column 10
[WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-jar-plugin is missing. @ line 36, column 12
@
[ERROR] The build could not read 6 projects -> [Help 1]
[ERROR]
[ERROR] The project com.highstreet.technologies.odlux:odlux-app-apiDemo:[unknown-version] (/home/ubuntu/odl/CENTENNIAL/code-Oxygen-SR3/apps/odlux/apps/apiDemo/pom.xml) has 1 error
[ERROR] Non-resolvable parent POM for com.highstreet.technologies.odlux:odlux-app-apiDemo:[unknown-version]: Could not find artifact com.highstreet.technologies.odlux:odlux-parent:pom:0.7.3-SNAPSHOT in opendaylight-snapshot (https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/) and 'parent.relativePath' points at no local POM @ line 6, column 10 -> [Help 2]
[ERROR]
[ERROR] The project com.highstreet.technologies.odlux:odlux-app-connectApp:[unknown-version] (/home/ubuntu/odl/CENTENNIAL/code-Oxygen-SR3/apps/odlux/apps/connectApp/pom.xml) has 1 error
[ERROR] Non-resolvable parent POM for com.highstreet.technologies.odlux:odlux-app-connectApp:[unknown-version]: Failure to find com.highstreet.technologies.odlux:odlux-parent:pom:0.7.3-SNAPSHOT in https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/ was cached in the local repository, resolution will not be reattempted until the update interval of opendaylight-snapshot has elapsed or updates are forced and 'parent.relativePath' points at no local POM @ line 6, column 10 -> [Help 2]
[ERROR]
[ERROR] The project com.highstreet.technologies.odlux:odlux-app-demoApp:[unknown-version] (/home/ubuntu/odl/CENTENNIAL/code-Oxygen-SR3/apps/odlux/apps/demoApp/pom.xml) has 1 error
[ERROR] Non-resolvable parent POM for com.highstreet.technologies.odlux:odlux-app-demoApp:[unknown-version]: Failure to find com.highstreet.technologies.odlux:odlux-parent:pom:0.7.3-SNAPSHOT in https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/ was cached in the local repository, resolution will not be reattempted until the update interval of opendaylight-snapshot has elapsed or updates are forced and 'parent.relativePath' points at no local POM @ line 6, column 10 -> [Help 2]
[ERROR]
[ERROR] The project com.highstreet.technologies.odlux:odlux-app-faultApp:[unknown-version] (/home/ubuntu/odl/CENTENNIAL/code-Oxygen-SR3/apps/odlux/apps/faultApp/pom.xml) has 1 error
[ERROR] Non-resolvable parent POM for com.highstreet.technologies.odlux:odlux-app-faultApp:[unknown-version]: Failure to find com.highstreet.technologies.odlux:odlux-parent:pom:0.7.3-SNAPSHOT in https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/ was cached in the local repository, resolution will not be reattempted until the update interval of opendaylight-snapshot has elapsed or updates are forced and 'parent.relativePath' points at no local POM @ line 6, column 10 -> [Help 2]
[ERROR]
[ERROR] The project com.highstreet.technologies.odlux:odlux-app-inventoryApp:[unknown-version] (/home/ubuntu/odl/CENTENNIAL/code-Oxygen-SR3/apps/odlux/apps/inventoryApp/pom.xml) has 1 error
[ERROR] Non-resolvable parent POM for com.highstreet.technologies.odlux:odlux-app-inventoryApp:[unknown-version]: Failure to find com.highstreet.technologies.odlux:odlux-parent:pom:0.7.3-SNAPSHOT in https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/ was cached in the local repository, resolution will not be reattempted until the update interval of opendaylight-snapshot has elapsed or updates are forced and 'parent.relativePath' points at no local POM @ line 6, column 10 -> [Help 2]
[ERROR]
[ERROR] The project com.highstreet.technologies.odlux:odlux-app-minimumApp:[unknown-version] (/home/ubuntu/odl/CENTENNIAL/code-Oxygen-SR3/apps/odlux/apps/minimumApp/pom.xml) has 1 error
[ERROR] Non-resolvable parent POM for com.highstreet.technologies.odlux:odlux-app-minimumApp:[unknown-version]: Failure to find com.highstreet.technologies.odlux:odlux-parent:pom:0.7.3-SNAPSHOT in https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/ was cached in the local repository, resolution will not be reattempted until the update interval of opendaylight-snapshot has elapsed or updates are forced and 'parent.relativePath' points at no local POM @ line 6, column 10 -> [Help 2]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException
[ERROR] [Help 2] http://cwiki.apache.org/confluence/display/MAVEN/UnresolvableModelException
For the Proposal in the issue openBackhaul/core#23 , need to include the identities ,
SWITCH_STATE_REASON_MANUAL,
SWITCH_STATE_REASON_FORCED,
SWITCH_STATE_REASON_SIGNAL_DEGRADE,
SWITCH_STATE_REASON_SIGNAL_FAIL
Solution :
In the UML2YANG tool in the experimental branch , require to include the following code in the /models/tools/pruning-and-refactoring/core-model/src/main/resources/xslt/prune-and-refactor-core-model.xslt
<!-- To include the literal NONE,MANUAL,FORCED,DEGRADE,FAIL to the enumeration SWITCH_STATE_REASON -->
<xsl:template match="packagedElement[@name='SwitchStateReason']">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_zRKlICi9EeaGGvAxxSe1uA1" name="NONE">
<ownedComment xmi:type="uml:Comment" xmi:id="_zRKlICi9EeaGGvAxxSe1uA2" annotatedElement="_zRKlICi9EeaGGvAxxSe1uA1">
<body>No reason</body>
</ownedComment>
</ownedLiteral>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_zRKlICi9EeaGGvAxxSe1uA2" name="MANUAL">
</ownedLiteral>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_zRKlICi9EeaGGvAxxSe1uA3" name="FORCED">
</ownedLiteral>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_zRKlICi9EeaGGvAxxSe1uA4" name="DEGRADE">
</ownedLiteral>
<ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_zRKlICi9EeaGGvAxxSe1uA5" name="FAIL">
</ownedLiteral>
<xsl:apply-templates select="node() | text()"/>
</xsl:copy>
</xsl:template>
Note : Include this in the end of the file before the tag </xsl:stylesheet>
For the Proposal in the issue openBackhaul/core#28 , need to modify the attribute selected-fc-port from a list to leaf-list in CoreModel.
Solution :
In the UML2YANG tool in the experimental branch , require to include the following in the /models/tools/pruning-and-refactoring/core-model/src/main/resources/xslt/prune-and-refactor-core-model.xslt to modify the selected-fc-port from a list to leaf-list.
<!-- changing _selectedFcPort in fc-switch from list to leafref -->
<xsl:template match="ownedAttribute[@xmi:id = '_2PdiYI8lEeOw_ste-s6RrA' ]" >
<xsl:copy>
<xsl:apply-templates select="@*"/>
<xsl:attribute name="aggregation">shared</xsl:attribute>
<xsl:apply-templates select="node() | text()"/>
</xsl:copy>
</xsl:template>
Note : Include this in the end of the file before the tag </xsl:stylesheet>
It's a leafref of '/core-model:network-element/core-model:ltp/core-model:uuid' in core-model.yang;
when i trying to commit to running database after edit it's value, the following error arising:
>merge target=/network-element/ltp[uuid='LTP-MWPS-TTP-RADIO']/client-ltp value="LTP-MWS-RADIO"
RPC OK Reply 21 for session 1:
> xget-config /network-element/ltp[uuid='LTP-MWPS-TTP-RADIO']/client-ltp source=candidate
RPC Data Reply 22 for session 1:
rpc-reply {
data {
network-element {
ltp LTP-MWPS-TTP-RADIO {
uuid LTP-MWPS-TTP-RADIO
client-ltp LTP-MWS-RADIO
}
}
}
}
> xget-config /network-element/ltp[uuid='LTP-MWPS-TTP-RADIO']/client-ltp source=running
RPC Data Reply 23 for session 1:
rpc-reply {
data {
}
}
> commit
RPC Error Reply 24 for session 1:
rpc-reply {
rpc-error {
error-type application
error-tag unknown-namespace
error-severity error
error-app-tag data-invalid
error-path /core-model:network-element/core-model:ltp[core-model:uuid='LTP-MWPS-TTP-RADIO']/core-model:client-ltp
error-message 'unknown namespace'
error-info {
error-number 266
}
}
}
cloned CENTENNIAL from https://github.com/OpenNetworkingFoundation/CENTENNIAL. Followed all the steps 0-3, from https://github.com/OpenNetworkingFoundation/CENTENNIAL/tree/master/code-Carbon-SR1, at step 4,
cd $HOME/odl/CENTENNIAL/code-Carbon-SR1
./odl.sh prepare
~/odl/CENTENNIAL/code-Carbon-SR1$ ./odl.sh prepare
-bash: ./odl.sh: No such file or directory
There is no ./odl.h either.
Michael discovered that the co-channel-group is now just a yang container, but was a yang list before.
For the Proposal in the issue openBackhaul/core#27 , need to remove the substatement "must 'deref(.) = current()'" from the leafref statement.
Solution :
In the UML2YANG tool in the experimental branch , require to remove the following code from the files tools/xmi-to-yang/src/main/resources/model ,
Following the guideline to add simulation devices
https://github.com/OpenNetworkingFoundation/CENTENNIAL/tree/master/code-Oxygen-SR3
Name: Sim2230
IP Address: 127.0.0.1
port: 2230
Username: admin
Password: admin
Required: check
Browse /apidoc/explorer/index.html# for entries,
undefined
undefined
undefined
Regards,
Harry
For the Proposal in the issue openBackhaul/core#19 , need to unprune the block-direction typedefinition in CoreModel.
Solution :
In the UML2YANG tool in the experimental branch , require to modify the field "Prune" to false for the block-direction typedefinition /models/tools/pruning-and-refactoring/core-model/src/main/resources/xslt/pruning-control.xml.
<package id="_0mNOEE8gEeaGxdXEiNf4tA" name="TypeDefinitions" prune="false"/>
For the Proposal in the issue openBackhaul/core#20 , need to prune the CoreModel to remove the ConfigurationAndSwitchControl (included in the ReleaseCandidate#1 of the core-model).
Solution :
In the UML2YANG tool in the experimental branch , require to modify the field "Prune" to true for the ConfigurationAndSwitchControl class /models/tools/pruning-and-refactoring/core-model/src/main/resources/xslt/pruning-control.xml.
<class id="_k1gHQJo5EeOyHKqw-cQ_eg" name="ConfigurationAndSwitchControl" prune="true"/>
The yang g.874.1-model.yang still uses the onf date-and-time defintion.
Instead the yang:date-and-time definition must be used from ietf-yang-types.yang (ISO 8601)
For the Proposal in the issue openBackhaul/core#26 , need to include a comment to the attribute is-hot-swappable
Solution :
In the UML2YANG tool in the experimental branch , require to include the following code in the /models/tools/pruning-and-refactoring/core-model/src/main/resources/xslt/prune-and-refactor-core-model.xslt
<!-- To include the comment for the attribute is-hot-swappable -->
<xsl:template match="ownedAttribute[@name='isHotSwappable']">
<xsl:copy>
<xsl:apply-templates select="@*"/>
<ownedComment xmi:type="uml:Comment" xmi:id="_yb3zEEQgEeasL6dcjI1vCC" annotatedElement="_yb3zEEQgEeasL6dcjI1vEA">
<body>This attribute shall be set on true, if the described equipment could be inserted or removed from the running system, + (without the need of powering the system down or restarting it) + (without being damaged or causing damage to any other element in the system where the equipment is inserted/removed) + (without causing traffic interruption or an alteration on the performance of other components or parts of the system not directly supported by this equipment.) The aforementioned characteristic shall not require any manual change on other components of the system. Potential traffic interruption on the interfaces supported by the component, which is being replaced, shall not matter to the value of the is-hot-swappable attribute.</body>
</ownedComment>
<xsl:apply-templates select="node() | text()"/>
</xsl:copy>
</xsl:template>
Note : Include this in the end of the file before the tag </xsl:stylesheet>
To solve the issue openBackhaul/core#32 , the following needs to be included in the core-model/src/main/resources/xslt/prune-and-refactor-core-model.xslt
<!-- see issue: https://github.com/openBackhaul/core/issues/32 -->
<!-- To change the name-and-value-authority/uuid to optional-->
<xsl:template match="lowerValue[@xmi:id='_VM-4EI31EeO38ZmbECnvbg']">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_VM-4EI31EeO38ZmbECnvbg" value="0" />
</xsl:template>
<!-- To change the local-id-and-class/local-id to optional-->
<xsl:template match="lowerValue[@xmi:id='_yRTdYsDwEeWbqPZwR-Ot6A']">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_yRTdYsDwEeWbqPZwR-Ot6A" value="0" />
</xsl:template>
<!-- To change the local-id-and-class/class-of-instance to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_F1nxkMDxEeWbqPZwR-Ot6A']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_F1nxkMDxEeWbqPZwR-Ot6B" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the logical-termination-point/ltp-direction to optional-->
<xsl:template match="lowerValue[@xmi:id='_TbSEkEDBEeWQeOKbNUpP9A']">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_TbSEkEDBEeWQeOKbNUpP9A" value="0" />
</xsl:template>
<!-- To change the layer-protocol/termination-state to optional-->
<!-- handled in the tool to avoid the clash with changing layer-protocol-name-type change-->
<!-- To change the layer-protocol/lpDirection to optional-->
<xsl:template match="lowerValue[@xmi:id='_HFnvcEDBEeWQeOKbNUpP9A']">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_HFnvcEDBEeWQeOKbNUpP9A" value="0" />
</xsl:template>
<!-- To change the layer-protocol-name-and-qualifier/layer-protocol-name to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_Cvms0IQ4EeiXzpgfQWpR-Q']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Cvms0IQ4EeiXzpgfQWpR-R" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the fd-port/role to optional-->
<xsl:template match="lowerValue[@xmi:id='_eVO2UCT7Eee9I5wuRX6wwQ']">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_eVO2UCT7Eee9I5wuRX6wwQ" value="0" />
</xsl:template>
<!-- To change the fd-port/fd-port-direction to optional-->
<xsl:template match="lowerValue[@xmi:id='_fxO6QiT7Eee9I5wuRX6wwQ']">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fxO6QiT7Eee9I5wuRX6wwQ" value="0" />
</xsl:template>
<!-- To change the fc-port/is-internal-port to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_CSlIwNViEeWhfIeymCGl5Q']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_CSlIwNViEeWhfIeymCGl5R" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the fc-port/role to optional-->
<xsl:template match="lowerValue[@xmi:id='_Y9kz4FeGEeOVGaP4lO41SQ']">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Y9kz4FeGEeOVGaP4lO41SQ" value="0" />
</xsl:template>
<!-- To change the fc-port/fc-port-direction to optional-->
<xsl:template match="lowerValue[@xmi:id='_Dd7akEDCEeWQeOKbNUpP9A']">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Dd7akEDCEeWQeOKbNUpP9A" value="0" />
</xsl:template>
<!-- To change the fc-switch/hold-off-time to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_oGqn6FLNEeO75dO39GbF8Q']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_oGqn6FLNEeO75dO39GbF8R" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the fc-switch/prot-type to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_oGqn6lLNEeO75dO39GbF8Q']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_oGqn6lLNEeO75dO39GbF8R" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the fc-switch/switch-selection-reason to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_XjsGkCi_EeaGGvAxxSe1uA']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_XjsGkCi_EeaGGvAxxSe1uB" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the fc-switch/wait-to-restore-time to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_oGqn5lLNEeO75dO39GbF8Q']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_oGqn5lLNEeO75dO39GbF8R" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the casc-port/port-role to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_C4GqoNvwEeaL7dYp0KdCwA']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_C4GqoNvwEeaL7dYp0KdCwB" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the casc-port-role-properties/signalling-format to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_WNkx0GCHEeeJH-mSlR-JCw']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_WNkx0GCHEeeJH-mSlR-JCx" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the casc-port-role-properties/monitoring-details to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_kib-kGCHEeeJH-mSlR-JCw']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_kib-kGCHEeeJH-mSlR-JCx" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the casc-port-role-properties/control-details to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_wQGfkGCHEeeJH-mSlR-JCw']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_wQGfkGCHEeeJH-mSlR-JCx" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the name-and-value/value to optional-->
<!-- To change the clock/run-mode to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_MCMUQHXCEeeqyuooNTTDCg']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MCMUQHXCEeeqyuooNTTDCh" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the equipment-structure/category to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_gLJ28EQvEeasL6dcjI1vEA']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_gLJ28EQvEeasL6dcjI1vEB" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the holder-structure/holder-category to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_r240kERLEeasL6dcjI1vEA']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_r240kERLEeasL6dcjI1vEB" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the holder-structure/is-captive to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_4XbukERMEeasL6dcjI1vEA']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_4XbukERMEeasL6dcjI1vEB" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the holder-structure/is-guided to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_-1CEIERMEeasL6dcjI1vEA']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-1CEIERMEeasL6dcjI1vEB" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the holder-structure/is-quantised-space to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_Lj7_sERNEeasL6dcjI1vEA']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Lj7_sERNEeasL6dcjI1vEB" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the connector/connector-type to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_NBXLMEgXEeasL6dcjI1vEA']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_NBXLMEgXEeasL6dcjI1vEB" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the connector/role to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_Y4R7QC8IEeexxefg2F1i1Q']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Y4R7QC8IEeexxefg2F1i1R" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the connector/orientation to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_r6M6MEQ-EeasL6dcjI1vEA']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_r6M6MEQ-EeasL6dcjI1vEB" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the connector/pin-layout to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_EaxH4kdeEeasL6dcjI1vEA']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_EaxH4kdeEeasL6dcjI1vEB" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the holder/holder-location to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_l6LE4ERTEeasL6dcjI1vEA']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_l6LE4ERTEeasL6dcjI1vEB" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the position/relative-position to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_U_6mYERXEeasL6dcjI1vEA']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_U_6mYERXEeasL6dcjI1vEB" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the spatial-properties-of-type/height to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_k_CVUEQyEeasL6dcjI1vEA']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_k_CVUEQyEeasL6dcjI1vEB" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the spatial-properties-of-type/width to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_n6nVoEQyEeasL6dcjI1vEA']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_n6nVoEQyEeasL6dcjI1vEB" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the spatial-properties-of-type/length to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_uIPVgEQyEeasL6dcjI1vEA']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_uIPVgEQyEeasL6dcjI1vEB" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the operator-augmented-equipment-instance/asset-instance-identifier to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_87VIs4M8EeePYJZQb-Dcag']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_87VIs4M8EeePYJZQb-Dcah" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the thermal-rating/thermal-rating-name to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_r6BzkGsaEeiRh-lc79MSRw']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_r6BzkGsaEeiRh-lc79MSRx" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the thermal-rating/maximum-temperature to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_-8q-EGsaEeiRh-lc79MSRw']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-8q-EGsaEeiRh-lc79MSRx" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the thermal-rating/minimum-temperature to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_fFTHYGsbEeiRh-lc79MSRw']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fFTHYGsbEeiRh-lc79MSRx" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the power-rating/power-rating-name to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_g6bmkGsnEeiRh-lc79MSRw']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_g6bmkGsnEeiRh-lc79MSRx" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the power-rating/power-rating-value to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_sGvuAGsnEeiRh-lc79MSRw']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_sGvuAGsnEeiRh-lc79MSRx" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the signal-property-rule/signal-property-name to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_MjTgEJwzEea1Nbypr6RfLw']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_MjTgEJwzEea1Nbypr6RfLx" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the signal-property-rule/signal-property-value-rule to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_jx5GkJwzEea1Nbypr6RfLw']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_jx5GkJwzEea1Nbypr6RfLx" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the metaclass-class/metaclass-class-name to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_oIBGkGImEeerc4Zz6ufSeg']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_oIBGkGImEeerc4Zz6ufSeh" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the external-managed-universal-id/manager-identifier to optional-->
<!--included value in the same pruning file in the section "add Type ExternalManagedUniversalId" -->
<!-- To change the external-managed-universal-id/external-managed-uuid to optional-->
<!--included value in the same pruning file in the section "add Type ExternalManagedUniversalId" -->
<!-- To change the installed-software-component/name to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_JopIgD4sEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_JopIgD4sEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the installed-software-component/version to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_KBj-0D4sEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_KBj-0D4sEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the running-software-process/name to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_xlPEwD4pEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_xlPEwD4pEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the running-software-process/process-id to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_ubjXAD4pEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ubjXAD4pEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the running-software-process/run-state to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_xaU1QD4pEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_xaU1QD4pEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the running-software-process/priority to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_u54RwD4pEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_u54RwD4pEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the running-software-process/invoking-user to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_vUB3ID4pEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_vUB3ID4pEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the running-software-process/invoking-command to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_v6c98D4pEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_v6c98D4pEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the running-software-process/time-invoked to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_wyWPQD4pEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_wyWPQD4pEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the running-software-process/description to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_ydEEoD4pEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ydEEoD4pEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the file/size to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_2lnLMD4lEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_2lnLMD4lEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the file/checksum to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_UWPF4D4nEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UWPF4D4nEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the file/last-modify-time to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_QdB_sD4nEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_QdB_sD4nEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the file-system-entry/local-name to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_ejfX8D3CEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ejfX8D3CEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the file-system-entry/path-name to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_ZbaD0D3CEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ZbaD0D3CEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the file-system-entry/create-date to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_in2m0D4mEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_in2m0D4mEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the file-system-entry/is-read-only to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_A15GoD3CEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_A15GoD3CEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
<!-- To change the file-system-entry/is-hidden to optional-->
<xsl:template match="ownedAttribute[@xmi:id='_NdUhMD3CEei6HehkJk8P-g']">
<xsl:copy>
<xsl:apply-templates select="@*" />
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_NdUhMD3CEei6HehkJk8P-h" value="0" />
<xsl:apply-templates select="node() | text()" />
</xsl:copy>
</xsl:template>
revision: 2017-03-24
The following nodes are obsolete and should be removed or the yang statement "status" should be set to "obsolete".
leaf obsolete-priority-class
leaf obsolete-drop-order-rank
Discuss obsolete handling with UML2YANG guidelines.
leaf-list logical-termination-point (see also UML-bug-tracker: id=2)
For the Proposal in the issue openBackhaul/core#29 , need to prune the CoreModel.
Solution :
In the UML2YANG tool in the experimental branch , require to modify the field "Prune" to true as mentioned in the following table to the /models/tools/pruning-and-refactoring/core-model/src/main/resources/xslt/pruning-control.xml.
Attribute | Pruning-control.xml id |
---|---|
layer-protocol/configuration-and-switch-control | <property id="_d6vwsMQhEeWlWIVxswb46A" name="_configurationAndSwitchControl" prune="true"/> |
fc/configuration-and-switch-control | <property id="_v6GHsJ4LEeOO3om500DFKg" name="_configurationAndSwitchControl" prune="true"/> |
fc/fc-switch/configuration-and-switch-control | <property id="_1EKuQJo5EeOyHKqw-cQ_eg" name="_configurationAndSwitchControl" prune="true"/> |
fc/fc-switch/internal-configuration-and-switch-control | <property id="_tbetAJ4HEeOO3om500DFKg" name="_internalConfigurationAndSwitchControl" prune="true"/> |
clock/encapsulated-casc | <property id="_UJ_6IXXIEeeqyuooNTTDCg" name="_encapsulatedCasc" prune="true"/> |
casc-port/encapsulating-casc-port | <property id="_hcC-ovj7EeaAw4wsR4LIsQ" name="_encapsulatingCascPort" prune="true"/> |
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.