Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Section


Column

References


Column

Attention to


Diagrams

Section


Column

Figure 1: Figure 1 - SOTN-Connectivity diagramImage RemovedFigure 1 - CCVPN model based on Beijiing releaseImage Added

Figure 3: Figure 3 - Site-Service diagramImage Removed Figure 3 - Site-Service diagramImage Added

Figure 5: Figure 5 - Cross-Domain ONAP diagram

Figure 7: Figure 7 - Intra-Domain p-interface linkImage Added

Figure 9: Figure 9 - Cross-Domain p-interface link primary 3rd partyImage Added


Column

Figure 2: Figure 2 - CCVPN model based on Beijiing releaseImage RemovedFigure 2 - SOTN Connectivity diagramImage Added

Figure 4: Figure 4 - Topology diagramImage Removed Figure 4 - Topology diagramImage Added

Figure 6: Figure 6 - Cross-domain Foreign Object and ESRImage Removed: Figure 6 - Cross-domain link diagramImage Added

Figure 8: Figure 8 - Cross-Domain p-interface link peerImage Added

Figure 10: Figure 10 - SDWAN vpn diagramImage Added



Proposal

SP Partner

Notes:

See Figure 1 above.

Proposal for specific new class of "sp-partner" objects.

topo-network

Notes:

See Figure 4 above.

Proposal for specific new class of "nce-network" objects.

termination-point

Notes:

See Figure 4 above.

Update existing class of objects.

<java-type name="ClassName"> <xml-root-element name="class-name"/> <java-attributes> <xml-element name="t-b-c" type="java.lang.String"/> <xml-element name="t-b-c" container-type="java.lang.ArrayList" type="inventory.aai.onap.org.v14.OtherClassName"/> </java-attributes> </java-type>

Reference IdCCVPN Use Case ReferenceAAI Schema ReferenceAAI Proposed Schema
AAI-1353-1

SOTN Infra

Closed Loop

Site Service Instance

Notes:

See Figure 1 above.

Use existing class of objects.

Closed loop scenario:

  • SO will create “service-instance” object in AAI
  • SO will store “customer-request” string on service-instance object in AAI
  • When Closed Loop call recreates the “service-instance”, it will query “service-instance” information first, to get the “customer-request”

aai_schema_v13.xsd

  • "service-instance"
  • "service-instances"

aai_schema_v13.xsd

  • "network"
  • "business"

Update existing "network" and "business" entry points to graph for new proposed elements:

Code Block
languagexml

add properties to existing object:

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="ServiceInstanceNetwork">
 <xml-root-element name="service-instancenetwork"/>
 <java-attributes>
  <xml-element name="customer-requestsconnectivities"
   type="java.lang.Stringinventory.aai.onap.org.v14.Connectivities"/>
 </java-attributes>
</java-type>

Code Block
languagexml
titleMockup Schema (XSD)
collapsetrue
<xs: <xml-element name="servicelan-port-instanceconfigs">
 <xs:complexType>
   <xs:sequence>
    <xs:  type="inventory.aai.onap.org.v14.LanPortConfigs"/>
  <xml-element name="customernetwork-requestsresources"
   type="xs:string"inventory.aai.onap.org.v14.NetworkResources"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>

Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/business
 /customers/customer/{global-customer-id}
 /service-subscriptions/service-subscription/{service-type}
 /service-instances/service-instance/{service-instance-id}
Method: PUT
Request Body:
{
    service-instance-id: "{service-instance-id}",
    service-instance-name: "instance name",
    service-type: "some type",
    service-role: "some role",
    resource-version: "some version",
    model-invariant-id: "model id",
    model-version-id: "model version",
    customer-requests: "request parameters"
}<xml-element name="site-resources"
   type="inventory.aai.onap.org.v14.SiteResources"/>
  <xml-element name="sdwan-vpns"
   type="inventory.aai.onap.org.v14.SdwanVpns"/>
  <xml-element name="devices"
   type="inventory.aai.onap.org.v14.Devices"/>
  <xml-element name="wan-port-configs"
   type="inventory.aai.onap.org.v14.WanPortConfigs"/>
  <xml-element name="ext-aai-networks"
   type="inventory.aai.onap.org.v14.ExtAaiNetworks"/>
 </java-attributes>
</java-type>

<java-type name="Business">
 <xml-root-element name="business"/>
 <java-attributes>
  <xml-element name="sp-partners"
   type="inventory.aai.onap.org.v14.SpPartners"/>
 </java-attributes>
</java-type>


AAI-1353-2

aai_schema_v13.xsd

  • "network"
  • "business"

SOTN Infra

Closed Loop

Site Service Instance

Notes:

See Figure 2 above.

Use existing class of objects.

Closed loop scenario:

  • SO will create “service-instance” object in AAI
  • SO will store “customer-request” string on service-instance object in AAI
  • When Closed Loop call recreates the “service-instance”, it will query “service-instance” information first, to get the “customer-request”

aai_schema_v13.xsd

  • "service-instance"
  • "service-instances"

add properties to existing "service-instance" object:

Code Block
languagexml
title

Update existing entry points to graph for new proposed elements:

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="NetworkServiceInstance">
 <xml-root-element name="networkservice-instance"/>
 <java-attributes>
  <xml-element name="connectivitiesinput-parameters"
   type="inventoryjava.aai.onap.org.v14.Connectivitieslang.String"/>
  <xml-element name="port-configs"
   type="inventory.aai.onap.org.v14.PortConfigs"/>
  <xml-element name="nce-networks"
   type="inventory.aai.onap.org.v14.NceNetworks"/>
 </java-attributes>
</java-type>


<java-type name="Business">
 <xml-root-element name="business"/>
 <java-attributes>
  <xml-element name="sp-partners"
   type="inventory.aai.onap.org.v14.SpPartners"/>
 </java-attributes>
</java-type>
Code Block
languagexml
titleMockup Schema (XSD)
collapsetrue
<xs:element name="network">
 <xs:complexType>
   <xs:sequence>
    <xs:element ref="tns:connectivities"
     minOccurs="0" maxOccurs="unbounded"/>
    <xs:element ref="tns:port-configs"
     minOccurs="0" maxOccurs="unbounded"/>
    <xs:element ref="tns:nce-networks"
     minOccurs="0" maxOccurs="unbounded"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>

<xs:element name="business">
 <xs:complexType>
   <xs:sequence>
    <xs:element ref="tns:sp-partners"
     minOccurs="0" maxOccurs="unbounded"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>
</java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/business
 /customers/customer/{global-customer-id}
 /service-subscriptions/service-subscription/{service-type}
 /service-instances/service-instance/{service-instance-id}
Method: PUT
Request Body:
{
    service-instance-id: "{service-instance-id}",
    service-instance-name: "instance name",
    service-type: "some type",
    service-role: "some role",
    resource-version: "some version",
    model-invariant-id: "model id",
    model-version-id: "model version",
    input-parameters: "request parameters"
}


AAI-1353-3

SOTN Connectivity

Notes:

See Figure 2 above.

Proposal for specific new class of "connectivity" objects.

aai_schema_v13.xsd

  • "service-instance"
  • "vpn-bindings"

new element "connectivity" and new element "connectivities":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="Connectivity">
 <xml-root-element name="connectivity"/>
 <java-attributes>
  <xml-element name="connectivity-id" type="java.lang.String"/>
  <xml-element name="bandwidth-profile-name" type="java.lang.String"/>
  <xml-element name="vpn-type" type="java.lang.String"/>
  <xml-element name="cir" type="java.lang.String"/>
  <xml-element name="eir" type="java.lang.String"/>
  <xml-element name="cbs" type="java.lang.String"/>
  <xml-element name="ebs" type="java.lang.String"/>
  <xml-element name="color-aware" type="java.lang.String"/>
  <xml-element name="coupling-flag" type="java.lang.String"/>
AAI-1353-3

SOTN Connectivity

Notes:

See Figure 1 above.

Proposal for specific new class of "connectivity" objects.

Key value is "Ethernet Service Name" property.

aai_schema_v13.xsd

  • "service-instances"
  • "vpn-bindings"

new element "connectivity", with 10-12 properties and 1-2 relationships and new element "connectivities":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="Connectivity">
 <xml-root-element name="connectivity"/>
 <java-attributes>
  <xml-element name="etht-svc-name" type="java.lang.String"/>
  <xml-element name="bandwidthaccess-profileprovider-nameid" type="java.lang.String"/>
  <xml-element name="bandwidthaccess-profileclient-typeid" type="java.lang.String"/>
  <xml-element name="CIRaccess-topology-id" type="java.lang.String"/>
  <xml-element name="EIRaccess-node-id" type="java.lang.String"/>
  <xml-element name="CBSaccess-ltp-id" type="java.lang.String"/>
  <xml-element name="EBSconnectivity-selflink" type="java.lang.String"/>
  <xml-element name="color-awarecvlan" type="java.lang.String"/>
  <xml-element name="couplingoperational-flagstatus" type="java.lang.String"/>
  <xml-element name="accessmodel-providercustomization-id" type="java.lang.String"/>
  <xml-element name="accessmodel-clientversion-id" type="java.lang.String"/>
  <xml-element name="accessmodel-topologyinvariant-id" type="java.lang.String"/>
  <xml-element name="accessrelationship-node-idlist" 
   type="java.lang.Stringinventory.aai.onap.org.v14.RelationshipList"/>
  <xml-element</java-attributes>
</java-type>

<java-type name="access-ltp-id" type="java.lang.String"Connectivities">
 <xml-root-element name="connectivities"/>
 <java-attributes>
  <xml-element name="cvlan-tag-entry" connectivity" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.CvlanTagEntryConnectivity"/>
  <xml-element name="service-instance" 
   type="inventory.aai.onap.org.v14.ServiceInstance"/>
  <xml-element name="vpn-bindings" 
   type="inventory.aai.onap.org.v14.VpnBindings"/>
 </java-attributes>

</java-type>


<java-type name="Connectivities">
 <xml-root-element name="connectivities"/>
 <java-attributes>
  <xml-element name="connectivity" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.Connectivity"/>
 </java-attributes>
</java-type>

Code Block
languagexml
titleMockup Schema (XSD)
collapsetrue
<xs:element name="connectivity">
 <xs:complexType>
   <xs:sequence>
    <xs:element name="etht-svc-name" type="xs:string" minOccurs="1">
    <xs:element name="bandwidth-profile-name" type="xs:string">
    <xs:element name="bandwidth-profile-type" type="xs:string">
    <xs:element name="CIR" type="xs:string">
    <xs:element name="EIR" type="xs:string">
    <xs:element name="CBS" type="xs:string">
    <xs:element name="EBS" type="xs:string">
    <xs:element name="color-aware" type="xs:string">
    <xs:element name="coupling-flag" type="xs:string">
    <xs:element name="access-provider-id" type="xs:string">
    <xs:element name="access-client-id" type="xs:string">
    <xs:element name="access-topology-id" type="xs:string">
    <xs:element name="access-node-id" type="xs:string">
    <xs:element name="access-ltp-id" type="xs:string">
    <xs:element ref="tns:cvlan-tag-entry"
     minOccurs="0" maxOccurs="1"/>
    <xs:element ref="tns:service-instance"
     minOccurs="0" maxOccurs="1"/>
    <xs:element ref="tns:vpn-bindings"
     minOccurs="1" maxOccurs="unbounded"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>

<xs:element name="connectivities">
 <xs:complexType>
   <xs:sequence>
    <xs:element ref="tns:connectivity"
     minOccurs="0" maxOccurs="unbounded"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>
</java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /connectivities/connectivity/{connectivityId}
Method: PUT
Request Body:
{
    "connectivity-id": "{connectivityId}",
    "bandwidth-profile-name": "a name",
    "vpn-type": "a type",
    "cir": "cir value",
    "eir": "eir value",
    "cbs": "cbs value",
    "ebs": "ebs value",
    "color-aware": "color value",
    "coupling-flag": "flag value",
    "etht-svc-name": "some name",
    "access-provider-id": "provider id",
    "access-client-id": "client id",
    "access-topology-id": "topology id",
    "access-node-id": "node id",
    "access-ltp-id": "ltp id",
    "connectivity-selflink": "some link",
    "cvlan": "some tag",
    "operational-status": "some status",
    "model-customization-id": "some customization",
    "model-version-id": "some version",
    "model-invariant-id": "some invariant",
    "relationship-list": {
        "relationship" : [
            {
                "related-to": "service-instance",
                "related-link": "url of service-instance",
                "relationship-data": [
                    "relationship-key": "service-instance.service-instance-id",
                    "relationship-value": "some id"
                ]
            },
            {
        
Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /connectivities/connectivity/{ethSvcName}
Method: PUT
Request Body:
{
    "bandwidth-profile-name": "a name",
    "bandwidth-profile-type": "a type",
    "CIR": "cir value",
    "EIR": "eir value",
    "CBS": "cbs value",
    "EBS": "ebs value",
    "color-aware": "color value",
    "coupling-flag": "flag value",
    "etht-svc-name": "{ethSvcName}",
    "access-provider-id": "provider id",
    "access-client-id": "client id",
    "access-topology-id": "topology id",
    "access-node-id": "node id",
    "access-ltp-id": "ltp id",
    "cvlan-tag-entry": {
        "cvlanrelated-tagto" : "cvlanTagvpn-binding",
    },
    "service-instance": {
        "servicerelated-instance-idlink" : "instance id"url of vpn-binding",
    },
    "vpn-bindings": {
        "vpnrelationship-bindingdata" : [
            {
                "vpnrelationship-idkey": "vpn id 1"-binding.vpn-id",
            },
        "relationship-value":    {"some id"
                "vpn-id": "vpn id 2"]
            }
        ]
    }
}


AAI-1353-4

VPN

Notes:

See Figure 1 2 above.

Update existing class of objects.


aai_schema_v13.xsd

  • "vpn-binding"
  • "vpn-bindings"

add properties to existing "vpn-binding" object:

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="VpnBinding">
 <xml-root-element name="vpn-binding"/>
 <java-attributes>
  <xml-element name="access-provider-id" type="java.lang.String"/>
  <xml-element name="access-client-id" type="java.lang.String"/>
  <xml-element name="access-topology-id" type="java.lang.String"/>
  <xml-element name="access-node-id" type="java.lang.String"/>
  <xml-element name="access-ltp-id" type="java.lang.String"/>
  <xml-element name="src-access-node-id" type="java.lang.String"/>
  <xml-element name="src-access-ltp-id" type="java.lang.String"/>
  <xml-element name="dst-access-node-id" type="java.lang.String"/>
  <xml-element name="dst-access-ltp-id" type="java.lang.String"/>
  </java-attributes>
</java-type>

Code Block
languagexml
titleMockup Schema (XSD)
collapsetrue
<xs:element name="vpn-binding">
 <xs:complexType>
   <xs:sequence>
    <xs:<xml-element name="operational-status" type="java.lang.String"/>
  <xml-element name="accessmodel-providercustomization-id" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="accessmodel-clientversion-id" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="accessmodel-topologyinvariant-id" type="xs:string">
    <xs:element name="src-access-node-id" type="xs:string">
    <xs:element name="src-access-ltp-id" type="xs:string">
    <xs:element name="dstjava.lang.String"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /vpn-bindings/vpn-binding/vpnId
Method: PUT
Request Body:
{
    "vpn-id": "vpnId",
    "vpn-name": "vpn name",
    "access-provider-id": "provider id",
    "access-client-id": "client id",
    "access-topology-id": "topology id",
    "src-access-node-id": type="xs:string">"src node id",
    <xs:element name="dst"src-access-ltp-id": type="xs:string">
   </xs:sequence>
 </xs:complexType>
</xs:element>

Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /vpn-bindings/vpn-binding/vpnId
Method: PUT
Request Body:
{
    "vpn"src ltp id",
    "dst-access-node-id": "dst node id",
    "dst-access-ltp-id": "vpnIddst ltp id",
    "vpnoperational-namestatus": "vpnsome namestatus",
    "accessmodel-providercustomization-id": "providersome idcustomization",
    "accessmodel-clientversion-id": "clientsome idversion",
    "accessmodel-topologyinvariant-id": "topologysome idinvariant",
    "src-access-node-id": "src node id",
    "src-access-ltp-id": "src ltp id",
    "dst-access-node-id": "dst node id",
    "dst-access-ltp-id": "dst ltp id"
}


}


AAI-1353-5

SP Partner

Notes:

See Figure 2 above.

Proposal for specific new class of "sp-partner" objects.


aai_schema_v13.xsd

  • "service-instances"

new element "sp-partner" and new element "sp-partners":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="SpPartner">
 <xml-root-element name="sp-partner"/>
 <java-attributes>
  <xml-element name="sp-partner-id" type="java.lang.String"/>
  <xml-element name="url" type="java.lang.String"/>
  <xml-element name="callsource" type="java.lang.String"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="SpPartners">
 <xml-root-element name="sp-partners"/>
 <java-attributes>
  
AAI-1353-5

aai_schema_v13.xsd

  • "service-instances"

new element "sp-partner" and new element "sp-partners":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="ClassName">
 <xml-root-element name="class-name"/>
 <java-attributes>
  <xml-element name="t-b-c" type="java.lang.String"/>
  <xml-element name="tsp-b-c" container-type="java.lang.ArrayList"partner"
   type="inventory.aai.onap.org.v14.OtherClassNameSpPartner"/>
 </java-attributes>
</java-type>


Code Block
languagexmljs
titleMockup Schema (XSD)API
collapsetrue
<xsURL:element name="sp-partner">
 <xs:complexType>
   <xs:sequence>
    <xs:element name="id" type="xs:string"> https://<AAI host>:<AAI port>/aai/v14/business
 /sp-partners/sp-partner/partnerId
Method: PUT
Request Body:
{
    "sp-partner-id": "partnerId",
    <xs"url":element name="partner url" type="xs:string">,
    "callsource": "some source",
    <xs:element ref="tns:service-instance""relationship-list": {
     minOccurs="0" maxOccurs="1"/>   "relationship" : [
   </xs:sequence>
 </xs:complexType>
</xs:element>

<xs:element name="sp-partners">
 <xs:complexType>
   <xs:sequence>
    <xs:element ref="tns:sp-partner"
         {
                "related-to": "service-instance",
      minOccurs="0" maxOccurs="unbounded"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>
Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/business
 /sp-partners/sp-partner/partnerId
Method: PUT
Request Body:
{
    "id": "partnerId",
    "url": "partner url",
      "related-link": "url of service-instance",
                "servicerelationship-instancedata": {[
        "service-instance-id" : "instance           "relationship-key": "service-instance.service-instance-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-6

SOTN Attachment

Notes:

See Figure 3 above.

Update existing class of objects.


aai_schema_v13.xsd

  • "allotted-resource"
  • "allotted-resources"

add properties to existing "allotted-resource" object:

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="ClassNameAllottedResource">
 <xml-root-element name="classallotted-nameresource"/>
 <java-attributes>
  <xml-element name="tallotted-bresource-cname" type="java.lang.String"/>
  <xml-element name="taccess-bprovider-cid" container-type="java.lang.ArrayListString"/>
  <xml-element name="access-client-id" type="inventoryjava.aai.onap.org.v14.OtherClassNamelang.String"/>
 </java-attributes>
</java-type>

Code Block
languagexml
titleMockup Schema (XSD)
collapsetrue
<xs: <xml-element name="allotted-resource"access-topology-id" type="java.lang.String"/>
 <xs:complexType>
   <xs:sequence>
    <xs:element  <xml-element name="access-providernode-id" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="access-clientltp-id" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="access-topology-idcvlan" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="accessvpn-node-idname" type="xs:string"java.lang.String"/>
    <xs:element name="access-ltp-id" type="xs:string">
    <xs:element ref="tns:cvlan-tag-entry"
     minOccurs="0" maxOccurs="1"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>

</java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/business
 /customers/customer/{global-customer-id}
 /service-subscriptions/service-subscription/{service-type}
 /service-instances/service-instance/{service-instance-id}
 /allotted-resources/allotted-resource/{id}
Method: PUT
Request Body:
{
    "allotted-resource-name": "some name",
    "access-provider-id": "provider id",
    "access-client-id": "client id",
    "access-topology-id": "topology id",
    "access-node-id": "node id",
    "access-ltp-id": "ltp id",
    "cvlan-tag-entry": {"some tag",
        "cvlan-tag" "vpn-name": "cvlanTagsome name"
    }
}


AAI-1353-7

LAN port config

WAN port config

Notes:

See Figure 3 above.

Proposal for specific new class of "lan-port-config" objects.


aai_schema_v13.xsd

  • "service-instances"

new element "lan-port-config" and new element "lan-port-configs":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="ClassNameLanPortConfig">
 <xml-root-element name="classlan-port-nameconfig"/>
 <java-attributes>
  <xml-element name="tlan-port-bconfig-cid" type="java.lang.String"/>
  <xml-element name="tlan-port-bconfig-cname" container-type="java.lang.ArrayListString"/>
  <xml-element name="description" type="inventoryjava.aai.onap.org.v14.OtherClassNamelang.String"/>
  <xml-element name="device-id" type="java.lang.String"/>
 </java-attributes>
</java-type>

Code Block
languagexml
titleMockup Schema (XSD)
collapsetrue
<xs: <xml-element name="port-id" type="java.lang.String"/>
  <xml-element name="ip-address" type="java.lang.String"/>
  <xml-element name="vlan-tag" type="java.lang.String"/>
  <xml-element name="portinput-config">
 <xs:complexType>
   <xs:sequence>
    <xs:element name="port-id" type="xs:string">
    <xs:element name="config-type" type="xs:string">
    <xs:element ref="tns:service-instance"
     minOccurs="0" maxOccurs="1"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>

<xs:element name="port-configs">
 <xs:complexType>
   <xs:sequence>
    <xs:element ref="tns:port-config"
     minOccurs="0" maxOccurs="unbounded"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>
Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /port-configs/port-config/portId
Method: PUT
Request Body:
{
    "port-id": "portId",
    "config-type": "lan or wan",
    "service-instance": {
        "service-instance-id" : "instance id"
    }
}

AAI-1353-8
bandwidth" type="java.lang.String"/>
  <xml-element name="output-bandwidth" type="java.lang.String"/>
  <xml-element name="dhcp-services" 
   type="inventory.aai.onap.org.v14.DhcpServices"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="LanPortConfigs">
 <xml-root-element name="lan-port-configs"/>
 <java-attributes>
  <xml-element name="lan-port-config" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.LanPortConfigs"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /lan-port-configs/lan-port-config/id
Method: PUT
Request Body:
{
    "lan-port-config-id": "id",
    "lan-port-config-name": "some name",
    "description": "some description",
    "device-id": "some device",
    "port-id": "some port",
    "ip-address": "some address",
    "vlan-tag": "some tag",
    "input-bandwidth": "some input",
    "output-bandwidth": "some output",
    "dhcp-services": {
        "dhcp-service": [
            {
                "service-enable": "some enable",
                "dhcp-service-type": "some service",
                "lease-time": "some time",
                "domain-name": "some domain",
                "dns": "some dns",
                "ntp-primary": "some ntp",
                "ntp-secondary": "some secondary",
                "nbns": "some nbns",
                "server-ip-address": "some server"
            }
        ]
    },
    "relationship-list": {
        "relationship" : [
            {
                "related-to": "service-instance",
                "related-link": "url of service-instance",
                "relationship-data": [
                    "relationship-key": "service-instance.service-instance-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-7bdhcp-service

new element "dhcp-service" and new element "dhcp-services", as sub-component of "lan-port-config":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="DhcpService">
 <xml-root-element name="dhcp-service"/>
 <java-attributes>
  <xml-element name="service-enable" type="java.lang.String"/>
  <xml-element name="dhcp-service-type" type="java.lang.String"/>
  <xml-element name="lease-time" type="java.lang.String"/>
  <xml-element name="domain-name" type="java.lang.String"/>
  <xml-element name="dns" type="java.lang.String"/>
  <xml-element name="ntp-primary" type="java.lang.String"/>
  <xml-element name="ntp-secondary" type="java.lang.String"/>
  <xml-element name="nbns" type="java.lang.String"/>
  <xml-element name="server-ip-address" type="java.lang.String"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="DhcpServices">
 <xml-root-element name="dhcp-services"/>
 <java-attributes>
  <xml-element name="dhcp-service" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.DhcpService"/>
 </java-attributes>
</java-type>


AAI-1353-8

site-resource

Notes:

See Figure 3 above.


new element "site-resource" and new element "site-resources":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="SiteResource">
 <xml-root-element name="site-resource"/>
 <java-attributes>
  <xml-element name="site-resource-id" type="java.lang.String"/>
  <xml-element name="site-resource-name" type="java.lang.String"/>
  <xml-element name="description" type="java.lang.String"/>
  <xml-element name="type" type="java.lang.String"/>
  <xml-element name="role" type="java.lang.String"/>
  <xml-element name="generated-site-id" type="java.lang.String"/>
  <xml-element name="selflink" type="java.lang.String"/>
  <xml-element name="operational-status" type="java.lang.String"/>
  <xml-element name="model-customization-id" type="java.lang.String"/>
  <xml-element name="model-version-id" type="java.lang.String"/>
  <xml-element name="model-invariant-id" type="java.lang.String"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="SiteResources">
 <xml-root-element name="site-resources"/>
 <java-attributes>
  <xml-element name="site-resource" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.SiteResource"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /site-resources/site-resource/{id}
Method: PUT
Request Body:
{
    "site-resource-id": "{id}",
    "site-resource-name": "some name",
    "description": "some description",
    "type": "some type",
    "role": "some role",
    "generated-site-id": "some id",
    "selflink": "some URL",
    "operational-status": "some status",
    "model-customization-id": "some customization",
    "model-version-id": "some version",
    "model-invariant-id": "some invariant",
    "relationship-list": {
        "relationship" : [
            {
                "related-to": "service-instance",
                "related-link": "url of service-instance",
                "relationship-data": [
                    "relationship-key": "service-instance.service-instance-id",
                    "relationship-value": "some id"
                ]
            },
            {
                "related-to": "complex",
                "related-link": "url of complex",
                "relationship-data": [
                    "relationship-key": "complex.physical-location-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-9

physical location

Notes:

See Figure 3 above.

aai_schema_v13.xsd

  • "complex"

use existing element "complex" to represent "physical location".


AAI-1353-10

topo-network

Notes:

See Figure 4 above.

Proposal for specific new class of "network-resource" objects.


aai_schema_v13.xsd

  • "pnfs"
  • "p-interfaces"
  • "vpn-bindings"

new element "network-resource" and new element "network-resources":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="networkResource">
 <xml-root-element name="network-resource"/>
 <java-attributes>
  <xml-element name="network-id" type="java.lang.String"/>
  <xml-element name="provider-id" type="java.lang.String"/>
  <xml-element name="client-id" type="java.lang.String"/>
  <xml-element name="te-topo-id" type="java.lang.String"/>
  <xml-element name="selflink" type="java.lang.String"/>
  <xml-element name="pnfs"
   type="inventory.aai.onap.org.v14.Pnfs"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="networkResources">
 <xml-root-element name="network-resources"/>
 <java-attributes>
  <xml-element name="network-resource" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.NetworkResource"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /network-resources/network-resource/{networkId}
Method: PUT
Request Body:
{
    "network-id": "{networkId}",
    "provider-id": "some provider",
    "client-id": "some client",
    "te-topo-id": "some topo",
    "selflink": "some URL",
    "pnfs": {
        "pnf" : [
            {
                "pnf-name": "name 1"
            },
            {
                "pnf-name": "name 2"
            }
        ]
    },
    "relationship-list": {
        "relationship" : [
            {
                "related-to": "vpn-binding",
                "related-link": "url of vpn-binding",
                "relationship-data": [
                    "relationship-key": "vpn-binding.vpn-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-11

termination-point

Notes:

See Figure 4 above.

Update existing class of objects.


aai_schema_v13.xsd

  • "p-interface"
  • "vpn-bindings"

add properties to existing "p-interface" object:

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="PInterface">
 <xml-root-element name="p-interface"/>
 <java-attributes>
  <xml-element name="network-ref" type="java.lang.String"/>
  <xml-element name="transparent" type="java.lang.String"/>
  <xml-element name="operational-status" type="java.lang.String"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /pnfs/pnf/{pnfName}
 /p-interfaces/p-interface/{tp-id}
Method: PUT
Request Body:
{
    "interface-name": "{tp-id}",
    "network-ref": "some network",
    "transparent": "some value",
    "operational-status": "some oper",
    "speed-value": "eth bandwidth",
    "relationship-list": {
        "relationship" : [
            {
                "related-to": "vpn-binding",
                "related-link": "url of vpn-binding",
                "relationship-data": [
                    "relationship-key": "vpn-binding.vpn-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-12

cross-domain link

Notes:

See Figures 5, 6, 7, 8 and 9 above.

Record information in AAI that crosses between ONAP Domain 1 and ONAP Domain 2


new proposed elements "external-aai-list" and "external-aai":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="ExtAaiNetworks">
  <xml-root-element name="ext-aai-networks" />
    <java-attributes>
      <xml-element name="ext-aai-network"
       type="inventory.aai.onap.org.v14.ExtAaiNetwork" />
    </java-attributes>
</java-type>

<java-type name="ExtAaiNetwork">
  <xml-root-element name="ext-aai-network" />
  <java-attributes>
    <xml-element name="aai-id" type="java.lang.String"
      required="true" xml-key="true">
    <xml-element name="schema-version" type="java.lang.String">
    <xml-element name="esr-system-info"
      type="inventory.aai.onap.org.v14.EsrSystemInfo" />
    <xml-element name="logical-links"
      type="inventory.aai.onap.org.v14.LogicalLinks" />
    <xml-element name="vpn-bindings"
      type="inventory.aai.onap.org.v14.VpnBindings" />
    <xml-element name="pnfs"
      type="inventory.aai.onap.org.v14.Pnfs" />

    <xml-element name="connectivities"
      type="inventory.aai.onap.org.v14.Connectivities" />
    <xml-element name="lan-port-configs"
      type="inventory.aai.onap.org.v14.LanPortConfigs" />
    <xml-element name="network-resources"
      type="inventory.aai.onap.org.v14.NetworkResources" />
    <xml-element name="site-resources"
      type="inventory.aai.onap.org.v14.SiteResources" />
    <xml-element name="sdwan-vpns"
     type="inventory.aai.onap.org.v14.SdwanVpns"/>
    <xml-element name="devices"
     type="inventory.aai.onap.org.v14.Devices"/>
    <xml-element name="wan-port-configs"
      type="inventory.aai.onap.org.v14.WanPortConfigs" />
  </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /ext-aai-networks/ext-aai-network/{aaiId}
 /p-interfaces/p-interface/{tp-id}
Method: PUT
Request Body:
{
    "aai-id-name": "{aaiId}",
    "schema-version": "some version",
    "esr-system-info": {
        "esr-system-info-id": "some id",
        "system-name": "some name"
    }
}


AAI-1353-13

SDWAN VPN

Notes:

See Figure 10 above.

Proposal for specific new class of "sdwan-vpn" objects.

aai_schema_v13.xsd

  • "service-instance"

new element "sdwan-vpn" and new element "sdwan-vpns":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="SdwanVpn">
 <xml-root-element name="sdwan-vpn"/>
 <java-attributes>
  <xml-element name="sdwan-vpn-id" type="java.lang.String"/>
  <xml-element name="sdwan-vpn-name" type="java.lang.String"/>
  <xml-element name="vxlan-id" type="java.lang.String"/>
  <xml-element name="topology" type="java.lang.String"/>
  <xml-element name="tenant-id" type="java.lang.String"/>
  <xml-element name="vpn-id" type="java.lang.String"/>
  <xml-element name="selflink" type="java.lang.String"/>
  <xml-element name="operational-status" type="java.lang.String"/>
  <xml-element name="model-customization-id" type="java.lang.String"/>
  <xml-element name="model-version-id" type="java.lang.String"/>
  <xml-element name="model-invariant-id" type="java.lang.String"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="SdwanVpns">
 <xml-root-element name="sdwan-vpns"/>
 <java-attributes>
  <xml-element name="sdwan-vpn" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.SdwanVpn"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /sdwan-vpns/sdwan-vpn/{id}
Method: PUT
Request Body:
{
    "sdwan-vpn-id": "{id}",
    "sdwan-vpn-name": "a name",
    "vxlan-id": "an id",
    "topology": "topology value",
    "tenant-id": "tenant value",
    "vpn-id": "vpn value",
    "selflink": "some URL",
    "operational-status": "some status",
    "model-customization-id": "some customization",
    "model-version-id": "some version",
    "model-invariant-id": "some invariant",
    "relationship-list": {
        "relationship" : [
            {
                "related-to": "service-instance",
                "related-link": "url of service-instance",
                "relationship-data": [
                    "relationship-key": "service-instance.service-instance-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-14

SDWAN Device

Notes:

Proposal for specific new class of "device" objects.



new element "device" and new element "devices":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="Device">
 <xml-root-element name="device"/>
 <java-attributes>
  <xml-element name="device-id" type="java.lang.String"/>
  <xml-element name="esn" type="java.lang.String"/>
  <xml-element name="device-name" type="java.lang.String"/>
  <xml-element name="description" type="java.lang.String"/>
  <xml-element name="vendor" type="java.lang.String"/>
  <xml-element name="class" type="java.lang.String"/>
  <xml-element name="type" type="java.lang.String"/>
  <xml-element name="version" type="java.lang.String"/>
  <xml-element name="system-ip" type="java.lang.String"/>
  <xml-element name="selflink" type="java.lang.String"/>
  <xml-element name="operational-status" type="java.lang.String"/>
  <xml-element name="model-customization-id" type="java.lang.String"/>
  <xml-element name="model-version-id" type="java.lang.String"/>
  <xml-element name="model-invariant-id" type="java.lang.String"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="Devices">
 <xml-root-element name="devices"/>
 <java-attributes>
  <xml-element name="device" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.Device"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /devices/device/{id}
Method: PUT
Request Body:
{
    "device-id": "{id}",
    "esn": "an esn",
    "device-name": "a name",
    "description": "a description",
    "vendor": "vendor value",
    "class": "a class",
    "type": "a type",
    "version": "version value",
    "system-ip": "ip value",
    "selflink": "some URL",
    "operational-status": "some status",
    "model-customization-id": "some customization",
    "model-version-id": "some version",
    "model-invariant-id": "some invariant",
    "relationship-list": {
        "relationship" : [
            {
                "related-to": "service-instance",
                "related-link": "url of service-instance",
                "relationship-data": [
                    "relationship-key": "service-instance.service-instance-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-15

SDWAN Port

Notes:

Proposal for specific new class of "wan-port-config" objects.


new element "wan-port-config" and new element "wan-port-configs":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="WanPortConfig">
 <xml-root-element name="wan-port-config"/>
 <java-attributes>
  <xml-element name="wan-port-config-id" type="java.lang.String"/>
  <xml-element name="wan-port-config-name" type="java.lang.String"/>
  <xml-element name="device-id" type="java.lang.String"/>
  <xml-element name="vlan-id" type="java.lang.String"/>
  <xml-element name="ip-address

aai_schema_v13.xsd

  • "pnfs"
  • "p-interfaces"
  • "vpn-bindings"

new element "nce-network" and new element "nce-networks":

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
<java-type name="ClassName">
 <xml-root-element name="class-name"/>
 <java-attributes>
  <xml-element name="t-b-c" type="java.lang.String"/>
  <xml-element name="tprovider-bip-caddress" container-type="java.lang.ArrayListString"/>
    <xml-element name="input-bandwidth" type="inventoryjava.aai.onap.org.v14.OtherClassNamelang.String"/>
 </java-attributes>
</java-type>

Code Block
languagexml
titleMockup Schema (XSD)
collapsetrue
<xs: <xml-element name="nce-network"output-bandwidth" type="java.lang.String"/>
 <xs:complexType>
   <xs:sequence>
    <xs: <xml-element name="network-iddescription" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="providerport-idtype" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="clientport-idnumber" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="tetransport-toponetwork-idname" type="xs:string"java.lang.String"/>
    <xs:<xml-element refname="tns:pnfs"
     minOccurs="1" maxOccurs="unbounded"device-port-id" type="java.lang.String"/>
    <xs:<xml-element refname="tns:p-interfaces"
     minOccurs="1" maxOccurs="unboundedwan-port-id" type="java.lang.String"/>
    <xs:<xml-element refname="tns:vpn-bindingsselflink"
     minOccurs="1" maxOccurs="unboundedtype="java.lang.String"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>

<xs:<xml-element name="nceoperational-networksstatus">
 <xs:complexType>
   <xs:sequence>
    <xs:element ref="tns:nce-network"
     minOccurs="0" maxOccurs="unbounded type="java.lang.String"/>
  <xml-element name="model-customization-id" type="java.lang.String"/>
   </xs:sequence>
 </xs:complexType>
</xs:element><xml-element name="model-version-id" type="java.lang.String"/>
  <xml-element name="model-invariant-id" type="java.lang.String"/>
  <xml-element name="relationship-list" 
   type="inventory.aai.onap.org.v14.RelationshipList"/>
 </java-attributes>
</java-type>

<java-type name="WanPortConfigs">
 <xml-root-element name="wan-port-configs"/>
 <java-attributes>
  <xml-element name="wan-port-config" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.WanPortConfig"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /wan-port-configs/wan-port-config/{id}
Method: PUT
Request Body:
{
    "wan-port-config-id": "{id}",
    "wan-port-config-name": "a name",
    "device-id": "id value",
    "vlan-id": "vlan value",
    "ip-address": "ip value",
    "provider-ip-address": "provider ip value",
    "input-bandwidth": "bandwidth value",
    "output-bandwidth": "bandwidth value",
    "description": "a description",
    "port-type": "type value",
    "port-number": "number value",
    "transport-network
Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /nce-networks/nce-network/{networkId}
Method: PUT
Request Body:
{
    "network-id": "{networkId}",
    "provider-id": "some provider",
    "client-id": "some client",
    "te-topo-id": "some topo",
    "pnfs": {
        "pnf" : [
            {
                "pnf-name": "name 1"
            },
            {
                "pnf-name": "name 2"
            }
        ]
    },
    "p-interfaces": {
        "p-interface" : [
            {
                "interface-name": "name 1value",
    "device-port-id": "id value",
    "wan-port-id": "id }value",
    "selflink": "some URL",
    "operational-status": "some {
    status",
            "interface-name"model-customization-id": "namesome 2customization",
    "model-version-id":        }"some version",
    "model-invariant-id":    ]
    }"some invariant",
    "vpnrelationship-bindingslist": {
        "vpn-bindingrelationship" : [
            {
                "vpnrelated-idto": "vpn id 1"service-instance",
            },
    "related-link": "url of service-instance",
       {
         "relationship-data": [
      "vpn-id": "vpn id 2"
            }"relationship-key": "service-instance.service-instance-id",
        ]
      }
}

AAI-1353-9
      "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-16pnf

aai_schema_v13.xsd

  • "pnf"

add properties to existing "pnf" object:

aai_schema_v13.xsd

  • "p-interface"
  • "vpn-bindings"

add properties to existing object:

Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
Code Block
languagexml
titleMockup Schema (XSDOXM)
collapsetrue
<xs:element<java-type name="p-interfacePnf">
 <xs:complexType>
   <xs:sequence>
    <xs:<xml-root-element name="pnf"/>
 <java-attributes>
  <xml-element name="networkadmin-refstatus" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="transparentoperational-status" type="xs:string"java.lang.String"/>
    <xs:<xml-element refname="tns:vpn-bindings"model-customization-id" type="java.lang.String"/>
     minOccurs="0" maxOccurs="unbounded<xml-element name="model-version-id" type="java.lang.String"/>
   </xs:sequence><xml-element name="model-invariant-id" type="java.lang.String"/>
 </xs:complexType>java-attributes>
</xs:element>java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/network
 /pnfs/pnf/{pnfName}
 /p-interfaces/p-interface/{tp-id}
Method: PUT
Request Body:
{
    "interface-name": "{tp-id}",
    "network-ref": "some network",
    "transparent": "some value",
    "speed-value": "eth bandwidth",:
{
    "vpninterface-bindingsname": "{tp-id}",
        "vpnadmin-bindingstatus" : [
            {
           "some admin",
     "vpnoperational-idstatus": "vpnsome id 1"
            },
            {
            status",
    "vpnmodel-customization-id": "vpnsome id 2customization",
    "model-version-id":        }"some version",
    "model-invariant-id":    ]
    }
}
AAI-1353-10

cross-domain link

Notes:

See Figure 5 and Figure 6 above.

Record information in AAI that crosses between ONAP Domain 1 and ONAP Domain 2

tbc

AAI-1353-999SDWAN-servicetbc
"some invariant",
}