aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWilliam Reehil <william.reehil@att.com>2020-08-20 15:08:30 +0000
committerGerrit Code Review <gerrit@onap.org>2020-08-20 15:08:30 +0000
commitc8e628f659fa474c9156ed744bc3dd106cc6b130 (patch)
tree38554510b6ac4abf031e57ac1e9666f66aa7f2b2
parent46f941549e4fad198877b04e75519ee030e36bac (diff)
parentf5914aabb906aeb9471eff8341f9979f5e35c21e (diff)
Merge "AAI schema changes to support TN NSSI and transport endpoint. Issue-ID: AAI-2920"
-rw-r--r--aai-schema/src/main/resources/onap/aai_schema/aai_schema_v20.xsd177
-rw-r--r--aai-schema/src/main/resources/onap/dbedgerules/v20/DbEdgeRules_ccvpn_v20.json22
-rw-r--r--aai-schema/src/main/resources/onap/oxm/v20/aai_oxm_v20.xml143
3 files changed, 335 insertions, 7 deletions
diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v20.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v20.xsd
index 9831b7f..fbce150 100644
--- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v20.xsd
+++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v20.xsd
@@ -3809,6 +3809,8 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
</xs:annotation>
</xs:element>
<xs:element ref="tns:tunnel-xconnects" minOccurs="0"/>
+ <xs:element ref="tns:logical-links" minOccurs="0"/>
+ <xs:element ref="tns:network-policies" minOccurs="0"/>
<xs:element ref="tns:relationship-list" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
@@ -4189,6 +4191,13 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
</xs:appinfo>
</xs:annotation>
</xs:element>
+ <xs:element name="max-bandwidth" type="xs:int" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="The maximum bandwidth (mb) of the connection links in a transport slice instance.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
<xs:element name="exp-data-rate" type="xs:int" minOccurs="0">
<xs:annotation>
<xs:appinfo>
@@ -4254,6 +4263,131 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
</xs:sequence>
</xs:complexType>
</xs:element>
+ <xs:element name="ip-address">
+ <xs:complexType>
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Ip address object.",uniqueProps="ip-address",indexedProps="ip-address",container="ip-address-list",uriTemplate="/endpoints/endpoint/{endpoint-id}/ip-address-list/ip-address/{ip-address}",searcheable="endpoint-id")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ <xs:sequence>
+ <xs:element name="ip-address" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="IP address.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="ip-address-end" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="IP address end range.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="ip-version" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="IP version, either 4 or 6.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="type" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="reserved, static, dhcp.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="assignment" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="assignment.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="operator" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Operator to apply to the port (greater than, less than, etc).")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="length" type="xs:int" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="ip-address prefix length, 32 for single address.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ip-address-list">
+ <xs:complexType>
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="List of IP addresses.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ <xs:sequence>
+ <xs:element ref="tns:ip-address" minOccurs="0" maxOccurs="5000"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="endpoint">
+ <xs:complexType>
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Endpoint object.",uniqueProps="endpoint-id",indexedProps="endpoint-id",container="endpoints",uriTemplate="/endpoints/endpoint/{endpoint-id}",searcheable="endpoint-id")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ <xs:sequence>
+ <xs:element name="endpoint-id" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="ID of endpoint.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="endpoint-name" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Name of endpoint.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="endpoint-type" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Type of endpoint.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="logical-interface-id" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Identity of a logical interface, e.g., VLAN ID, MPLS label.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="tns:ip-address-list" minOccurs="0"/>
+ <xs:element ref="tns:relationship-list" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="endpoints">
+ <xs:complexType>
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Collection of endpoints.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ <xs:sequence>
+ <xs:element ref="tns:endpoint" minOccurs="0" maxOccurs="5000"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
<xs:element name="service-instance">
<xs:complexType>
<xs:annotation>
@@ -4443,6 +4577,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
<xs:element ref="tns:communication-service-profiles" minOccurs="0"/>
<xs:element ref="tns:service-profiles" minOccurs="0"/>
<xs:element ref="tns:slice-profiles" minOccurs="0"/>
+ <xs:element ref="tns:endpoints" minOccurs="0"/>
<xs:element name="service-function" type="xs:string" minOccurs="0">
<xs:annotation>
<xs:appinfo>
@@ -7246,6 +7381,48 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
</xs:appinfo>
</xs:annotation>
</xs:element>
+ <xs:element name="name" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Name of the policy.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="type" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Type of the policy.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="latency" type="xs:int" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="The packet transmission latency (millisecond) through the Transport slice connections and is used to evaluate utilization performance of the end-to-end network slice instance.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="jitter" type="xs:int" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="jitter")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="max-bandwidth" type="xs:int" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="The maximum bandwidth (mb) of the connection links in a transport slice instance.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="reliability" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="The reliability requirement for a transport slice network, expressed as a percentage.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
<xs:element ref="tns:relationship-list" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
diff --git a/aai-schema/src/main/resources/onap/dbedgerules/v20/DbEdgeRules_ccvpn_v20.json b/aai-schema/src/main/resources/onap/dbedgerules/v20/DbEdgeRules_ccvpn_v20.json
index f007e0a..475abbe 100644
--- a/aai-schema/src/main/resources/onap/dbedgerules/v20/DbEdgeRules_ccvpn_v20.json
+++ b/aai-schema/src/main/resources/onap/dbedgerules/v20/DbEdgeRules_ccvpn_v20.json
@@ -445,7 +445,7 @@
"default": "true",
"description":"For CCVPN Usecase"
},
- {
+ {
"from": "p-interface",
"to": "interlayer-attachment",
"label": "tosca.relationships.network.LinksTo",
@@ -458,7 +458,7 @@
"description":"For CCVPN Usecase"
},
- {
+ {
"from": "tunnel-termination-point",
"to": "interlayer-attachment",
"label": "tosca.relationships.network.LinksTo",
@@ -483,7 +483,7 @@
"default": "true",
"description":"For CCVPN Usecase"
},
- {
+ {
"from": "logical-link",
"to": "te-link-attribute",
"label": "tosca.relationships.network.LinksTo",
@@ -496,7 +496,7 @@
"description":"For CCVPN Usecase"
},
- {
+ {
"from": "label-restriction",
"to": "te-link-attribute",
"label": "tosca.relationships.network.LinksTo",
@@ -544,6 +544,18 @@
"prevent-delete": "NONE",
"default": "true",
"description":"For MDONS usecase"
- }
+ },
+ {
+ "from": "endpoint",
+ "to": "p-interface",
+ "label": "tosca.relationships.network.LinksTo",
+ "direction": "OUT",
+ "multiplicity": "ONE2ONE",
+ "contains-other-v": "NONE",
+ "delete-other-v": "NONE",
+ "prevent-delete": "NONE",
+ "default": "true",
+ "description":"For CCVPN Transport Slicing usecase"
+ }
]
}
diff --git a/aai-schema/src/main/resources/onap/oxm/v20/aai_oxm_v20.xml b/aai-schema/src/main/resources/onap/oxm/v20/aai_oxm_v20.xml
index 5669464..8424058 100644
--- a/aai-schema/src/main/resources/onap/oxm/v20/aai_oxm_v20.xml
+++ b/aai-schema/src/main/resources/onap/oxm/v20/aai_oxm_v20.xml
@@ -3311,6 +3311,7 @@
<xml-element java-attribute="communicationServiceProfiles" name="communication-service-profiles" type="inventory.aai.onap.org.v20.CommunicationServiceProfiles"/>
<xml-element java-attribute="serviceProfiles" name="service-profiles" type="inventory.aai.onap.org.v20.ServiceProfiles"/>
<xml-element java-attribute="sliceProfiles" name="slice-profiles" type="inventory.aai.onap.org.v20.SliceProfiles"/>
+ <xml-element java-attribute="endpoints" name="endpoints" type="inventory.aai.onap.org.v20.Endpoints"/>
<xml-element java-attribute="serviceFunction" name="service-function" type="java.lang.String">
<xml-properties>
<xml-property name="description" value="String capturing function of the service."/>
@@ -4760,6 +4761,36 @@
<xml-property name="description" value="Used for optimistic concurrency. Must be empty on create, valid on update and delete."/>
</xml-properties>
</xml-element>
+ <xml-element java-attribute="name" name="name" type="java.lang.String">
+ <xml-properties>
+ <xml-property name="description" value="Name of the policy"/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="type" name="type" type="java.lang.String">
+ <xml-properties>
+ <xml-property name="description" value="Type of the policy"/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="latency" name="latency" type="java.lang.Integer">
+ <xml-properties>
+ <xml-property name="description" value="The packet transmission latency (millisecond) through the Transport slice connections and is used to evaluate utilization performance of the end-to-end network slice instance."/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="jitter" name="jitter" type="java.lang.Integer">
+ <xml-properties>
+ <xml-property name="description" value="jitter"/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="maxBandwidth" name="max-bandwidth" type="java.lang.Integer">
+ <xml-properties>
+ <xml-property name="description" value="The maximum bandwidth (mb) of the connection links in a transport slice instance."/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="reliability" name="reliability" type="java.lang.Float">
+ <xml-properties>
+ <xml-property name="description" value="The reliability requirement for an network slice subnet instance, expressed as a percentage."/>
+ </xml-properties>
+ </xml-element>
<xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v20.RelationshipList"/>
</java-attributes>
<xml-properties>
@@ -6953,6 +6984,8 @@
</xml-properties>
</xml-element>
<xml-element java-attribute="tunnelXconnects" name="tunnel-xconnects" type="inventory.aai.onap.org.v20.TunnelXconnects"/>
+ <xml-element java-attribute="logicalLinks" name="logical-links" type="inventory.aai.onap.org.v20.LogicalLinks"/>
+ <xml-element java-attribute="networkPolicies" name="network-policies" type="inventory.aai.onap.org.v20.NetworkPolicies"/>
<xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v20.RelationshipList"/>
</java-attributes>
@@ -9414,7 +9447,7 @@
<xml-root-element name="common"/>
<java-attributes>
<xml-element java-attribute="contacts" name="contacts" type="inventory.aai.onap.org.v20.Contacts"/>
- <xml-element java-attribute="profiles" name="profiles" type="inventory.aai.onap.org.v20.Profiles"/>
+ <xml-element java-attribute="profiles" name="profiles" type="inventory.aai.onap.org.v20.Profiles"/>
</java-attributes>
</java-type>
@@ -9467,7 +9500,6 @@
<xml-property name="requiredProps" value="contact-name"/>
</xml-properties>
</java-type>
-
<java-type name="Profiles">
<xml-properties>
<xml-property name="description" value="Collection of profiles"/>
@@ -9523,6 +9555,7 @@
<xml-property name="requiredProps" value="profile-name"/>
</xml-properties>
</java-type>
+
<java-type name="AggregateRoutes">
<xml-properties>
<xml-property name="description" value="Collection of aggregate routes."/>
@@ -9847,6 +9880,11 @@
<xml-property name="description" value="The availability requirement for an network slice subnet instance, expressed as a percentage."/>
</xml-properties>
</xml-element>
+ <xml-element java-attribute="maxBandwidth" name="max-bandwidth" type="java.lang.Integer">
+ <xml-properties>
+ <xml-property name="description" value="The maximum bandwidth (mb) of the connection links in a transport slice instance."/>
+ </xml-properties>
+ </xml-element>
<xml-element java-attribute="reliability" name="reliability" type="java.lang.Float">
<xml-properties>
<xml-property name="description" value="The reliability requirement for an network slice subnet instance, expressed as a percentage."/>
@@ -9899,6 +9937,107 @@
<xml-property name="searcheable" value="profile-id"/>
</xml-properties>
</java-type>
+ <java-type name="IpAddress">
+ <xml-root-element name="ip-address"/>
+ <java-attributes>
+ <xml-element java-attribute="ipAddress" name="ip-address" required="true" type="java.lang.String" xml-key="true" >
+ <xml-properties>
+ <xml-property name="description" value="IP address."/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="ipAddressEnd" name="ip-address-end" type="java.lang.String">
+ <xml-properties>
+ <xml-property name="description" value="IP address end range."/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="ipVersion" name="ip-version" type="java.lang.String">
+ <xml-properties>
+ <xml-property name="description" value="IP version, either 4 or 6."/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="type" name="type" type="java.lang.String">
+ <xml-properties>
+ <xml-property name="description" value="Type of IP address, eg., Reserved, Static, DHCP."/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="assignment" name="assignment" type="java.lang.String">
+ <xml-properties>
+ <xml-property name="description" value="assignment."/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="operator" name="operator" type="java.lang.String">
+ <xml-properties>
+ <xml-property name="description" value="Operator to apply to the port (greater than, less than, etc)."/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="length" name="length" type="java.lang.Integer">
+ <xml-properties>
+ <xml-property name="description" value="ip-address prefix length, 32 for single address."/>
+ </xml-properties>
+ </xml-element>
+ </java-attributes>
+ <xml-properties>
+ <xml-property name="description" value="IP address."/>
+ <xml-property name="uniqueProps" value="ip-address"/>
+ <xml-property name="indexedProps" value="ip-address"/>
+ <xml-property name="container" value="ip-address-list"/>
+ <xml-property name="uriTemplate" value="/endpoints/endpoint/{endpoint-id}/ip-address-list/ip-address/{ip-address}"/>
+ <xml-property name="searcheable" value="ip-address"/>
+ </xml-properties>
+ </java-type>
+ <java-type name="IpAddressList">
+ <xml-properties>
+ <xml-property name="description" value="List of IP addresses."/>
+ </xml-properties>
+ <xml-root-element name="ip-address-list"/>
+ <java-attributes>
+ <xml-element container-type="java.util.ArrayList" java-attribute="ipAddress" name="ip-address" type="inventory.aai.onap.org.v20.IpAddress"/>
+ </java-attributes>
+ </java-type>
+ <java-type name="Endpoint">
+ <xml-root-element name="endpoint"/>
+ <java-attributes>
+ <xml-element java-attribute="endpointId" name="endpoint-id" required="true" type="java.lang.String" xml-key="true" >
+ <xml-properties>
+ <xml-property name="description" value="ID of an endpoint."/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="endpointName" name="endpoint-name" type="java.lang.String">
+ <xml-properties>
+ <xml-property name="description" value="Name of an endpoint."/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="endpointType" name="endpoint-type" type="java.lang.String">
+ <xml-properties>
+ <xml-property name="description" value="Type of an endpoint."/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="logicalInterfaceId" name="logical-interface-id" type="java.lang.String">
+ <xml-properties>
+ <xml-property name="description" value="Identity of a logical interface, e.g., VLAN ID."/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="ipAddressList" name="ip-address-list" type="inventory.aai.onap.org.v20.IpAddressList"/>
+ <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v20.RelationshipList"/>
+ </java-attributes>
+ <xml-properties>
+ <xml-property name="description" value="Endpoint object."/>
+ <xml-property name="uniqueProps" value="endpoint-id"/>
+ <xml-property name="indexedProps" value="endpoint-id"/>
+ <xml-property name="container" value="endpoints"/>
+ <xml-property name="uriTemplate" value="/endpoints/endpoint/{endpoint-id}"/>
+ <xml-property name="searcheable" value="endpoint-id"/>
+ </xml-properties>
+ </java-type>
+ <java-type name="Endpoints">
+ <xml-properties>
+ <xml-property name="description" value="Collection of Endpoint objects."/>
+ </xml-properties>
+ <xml-root-element name="endpoints"/>
+ <java-attributes>
+ <xml-element container-type="java.util.ArrayList" java-attribute="endpoint" name="endpoint" type="inventory.aai.onap.org.v20.Endpoint"/>
+ </java-attributes>
+ </java-type>
</java-types>
</xml-bindings>