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

VPN

Notes:

See Figure 1 above.

Update existing class of objects.

add properties to existing object:

<java-type name="ClassName"> <xml-root-element name="class-name"/> <java-attributes> <xml-element name="t-b-ctb-ccontainer-ArrayList" type="inventory.aai.onap.org.v14.OtherClassName</java-attributes> </java-type> <xs:element name="vpn-binding"> <xs:complexType> <xs:sequence> <xs:accessproviderxs:string" <xs:accessclientxs:string" <xs:accesstopologyxs:string" <xs:src-access-node-idxs:string"> <xs:element name="src-access-ltp-id" type="xs:string"> <xs:dst-access-node-id" type="xs:string" <xs:dst-access-ltp-idxs:string"></xs:sequence>xs:complexType>xs:element>vpnbindings-bindingvpnIdvpnIdvpnaccess-providerprovideraccess-client-idclientidaccess-topologytopologyidsrc-access-nodesrcnode idsrc-access-ltp-idsrcltp iddst-access-node-iddstnode iddstaccess-ltpdstltp id }

SP Partner

Notes:

See Figure 1 above.

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

SOTN Attachment

Notes:

See Figure 3 above.

Update existing class of objects.

add properties to existing object:

<java-type name="ClassName"> <xml-root-element name="class-name"/> <java-attributes>t-b-ctb-ccontainer-ArrayListinventoryaai.onap.org.v14.OtherClassName</java-attributes> </java-type> <xs:allotted-resource"> <xs:complexType> <xs:sequence> <xs:accessproviderxs:string" <xs:accessclientxs:string" <xs:accesstopologyxs:string"<xs:elementname="access-node-id" type="xs:string"> <xs:access-ltp-id" type="xs:string" <xs:reftns:cvlan-tag-entry minOccurs="0" maxOccurs="1 xs:sequence> </xs:complexType>xs:element>businesscustomerscustomerglobal-customer- /service-subscriptions/service-subscription/{service-type} /service-instances/service-instance/{service-instance-id} /allotted-resources/allotted-resource/{id} Method: PUT Request Body: {access-provider-idprovideridaccess-client-idclientidaccess-topology-idtopologyidaccessnode-idnodeidaccess-ltp-idltpidcvlantag-entry{ cvlantag cvlanTag} }

LAN port config

WAN port config

Notes:

See Figure 3 above.

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

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

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
language

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">
   </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"
}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"/>
  <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" objectUpdate 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="connectivities"
   type="inventory.aai.onap.org.v14.Connectivities"/>
  <xml-element name="port-configs"
   input-parameters" type="inventoryjava.aai.onap.org.v14.PortConfigs"/>
  <xml-element name="nce-networks"
   type="inventory.aai.onap.org.v14.NceNetworkslang.String"/>
 </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>


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 1 2 above.

Proposal for specific new class of "connectivity" objects.Key value is "Ethernet Service Name" property.

aai_schema_v13.xsd

  • "service-instancesinstance"
  • "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="ClassNameConnectivity">
 <xml-root-element name="class-nameconnectivity"/>
 <java-attributes>
  <xml-element name="tconnectivity-b-cid" type="java.lang.String"/>
  <xml-element name="tbandwidth-bprofile-cname" container-type="java.lang.ArrayListString"/>
  <xml-element name="vpn-type" type="inventoryjava.aai.onap.org.v14.OtherClassNamelang.String"/>
  </java-attributes>
</java-type>

Code Block
languagexml
titleMockup Schema
collapsetrue
<xs:<xml-element name="connectivity""cir" type="java.lang.String"/>
 <xs:complexType>
   <xs:sequence>
    <xs: <xml-element name="etht-svc-nameeir" type="xs:string" minOccurs="1"java.lang.String"/>
    <xs:<xml-element name="bandwidth-profile-namecbs" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="bandwidth-profile-typeebs" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="CIRcolor-aware" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="EIRcoupling-flag" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="CBSetht-svc-name" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="EBSaccess-provider-id" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="coloraccess-client-awareid" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="couplingaccess-topology-flagid" type="xs:string"java.lang.String"/>
    <xs:<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="accessconnectivity-topology-idselflink" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="access-node-idcvlan" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="accessoperational-ltp-idstatus" type="xs:string"java.lang.String"/>
    <xs:<xml-element refname="tns:cvlanmodel-tagcustomization-entryid"
     minOccurstype="0" maxOccurs="1"java.lang.String"/>
    <xs:<xml-element refname="tns:service-instance"model-version-id" type="java.lang.String"/>
     minOccurs="0" maxOccurs="1<xml-element name="model-invariant-id" type="java.lang.String"/>
    <xs:<xml-element refname="tns:vpnrelationship-bindingslist" 
     minOccurstype="1" maxOccurs="unbounded"inventory.aai.onap.org.v14.RelationshipList"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>

<xs:java-attributes>
</java-type>

<java-type name="Connectivities">
 <xml-root-element name="connectivities"/>
 <xs:complexType><java-attributes>
   <xs:sequence>
    <xs:<xml-element refname="tns:connectivity"
     minOccurs="0" maxOccurs="unbounded container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.Connectivity"/>
   </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/{ethSvcNameconnectivityId}
Method: PUT
Request Body:
{
    "bandwidthconnectivity-profile-nameid": "{connectivityId}",
    "bandwidth-profile-name": "a name",
    "bandwidth-profilevpn-type": "a type",
    "CIRcir": "cir value",
    "EIReir": "eir value",
    "CBScbs": "cbs value",
    "EBSebs": "ebs value",
    "color-aware": "color value",
    "coupling-flag": "flag value",
    "etht-svc-name": "{ethSvcName}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",
    "cvlanconnectivity-tag-entryselflink": {
    "some link",
    "cvlan-tag" : "cvlanTag"
    }some tag",
    "serviceoperational-instancestatus": {
  "some status",
      "servicemodel-instancecustomization-id" : "instancesome id"
    }customization",
    "vpnmodel-version-bindingsid": "some version",
    "model-invariant-id": "some invariant",
    "relationship-list": {
        "vpn-bindingrelationship" : [
            {
                "vpnrelated-idto": "vpn id 1"service-instance",
            },
    "related-link": "url       {of service-instance",
                "vpnrelationship-iddata": "vpn id 2"
 [
           }
        ]
    }
}
AAI-1353-4

aai_schema_v13.xsd

  • "vpn-binding"
  • "vpn-bindings"
Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue
 "relationship-key": "service-instance.service-instance-id",
                    "relationship-value": "some id"
                ]
            },
            {
                "related-to": "vpn-binding",
                "related-link": "url of vpn-binding",
                "relationship-data": [
                    "relationship-key": "vpn-binding.vpn-id",
                    "relationship-value": "some id"
                ]
            }
        ]
    }
}


AAI-1353-4

VPN

Notes:

See Figure 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"/>
  <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"/>
 </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": "src node id",
    "src-access-ltp-id": "src ltp id",
    "dst-access-node-id": "dst node id",
    "dst-access-ltp-id": "dst ltp id",
    "operational-status": "some status",
    "model-customization-id": "some customization",
    "model-version-id": "some version",
    "model-invariant-id": "some invariant"
}


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>
  <xml-element name="sp-partner"
   type="inventory.aai.onap.org.v14.SpPartner"/>
 </java-attributes>
</java-type>


Code Block
languagejs
titleMockup API
collapsetrue
URL: https://<AAI host>:<AAI port>/aai/v14/business
 /sp-partners/sp-partner/partnerId
Method: PUT
Request Body:
{
    "sp-partner-id": "partnerId",
    "url": "partner url",
    "callsource": "some source",
    "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-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="AllottedResource">
 <xml-root-element name="allotted-resource"/>
 <java-attributes>
  <xml-element name="allotted-resource-name" type="java.lang.String"/>
  <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="cvlan" type="java.lang.String"/>
  <xml-element name="vpn-name" type="java.lang.String"/>
 </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": "some tag",
    "vpn-name": "some name"
}


AAI-1353-7

LAN 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="LanPortConfig">
 <xml-root-element name="lan-port-config"/>
 <java-attributes>
  <xml-element name="lan-port-config-id" type="java.lang.String"/>
  <xml-element name="lan-port-config-name" type="java.lang.String"/>
  <xml-element name="description" type="java.lang.String"/>
  <xml-element name="device-id" type="java.lang.String"/>
  <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="input-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"/>
 
Code Block
languagexml
titleMockup Schema (XSD)
collapsetrue
 <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"/>
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="t-b-c" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.OtherClassName"/>
 </java-attributes>
</java-type>

Code Block
languagexml
titleMockup Schema (XSD)
collapsetrue
<xs:element name="sp-partner">
 <xs:complexType>
   <xs:sequence>
    <xs:element name="id" type="xs:string">
    <xs:element name="url" type="xs:string">
    <xs:element ref="tns:service-instance"
     minOccurs="0" maxOccurs="1"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>

<xs:element name="sp-partners">
 <xs:complexType>
   <xs:sequence>
    <xs:element ref="tns:sp-partner"
     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",
    "service-instance": {
        "service-instance-id" : "instance id"
    }
}

AAI-1353-6

aai_schema_v13.xsd

  • "allotted-resource"
  • "allotted-resources"
Code Block
languagexml
titleMockup Schema (OXM)
collapsetrue

  <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"/>
  
Code Block
languagexml
titleMockup Schema (XSD)
collapsetrue
<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" type="java.lang.String"/>
  <xml-element name="provider-ip-address" type="java.lang.String"/>
  <xml-element name="input-bandwidth" type="java.lang.String"/>
  <xml-element name="output-bandwidth" type="java.lang.String"/>
  <xml-element name="description" type="java.lang.String"/>
  <xml-element name="port-type" type="java.lang.String"/>
  <xml-element name="port-number
AAI-1353-7

aai_schema_v13.xsd

  • "service-instances"
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="t-b-c" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.OtherClassName"/>
 </java-attributes>
</java-type>

Code Block
languagexml
titleMockup Schema (XSD)
collapsetrue
<xs:element name="port-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

topo-network

Notes:

See Figure 4 above.

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

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="ttransport-bnetwork-cname" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.OtherClassNameString"/>
 </java-attributes>
</java-type>

Code Block
languagexml
titleMockup Schema (XSD)
collapsetrue
<xs:  <xml-element name="nce-network">
 <xs:complexType>
   <xs:sequence>
    <xs:element name="networkdevice-port-id" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="providerwan-port-id" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="client-idselflink" type="xs:string"java.lang.String"/>
    <xs:<xml-element name="teoperational-topo-idstatus" type="xs:string"java.lang.String"/>
    <xs:<xml-element refname="tns:pnfs"
     minOccurs="1" maxOccurs="unboundedmodel-customization-id" type="java.lang.String"/>
    <xs:<xml-element refname="tns:p-interfaces"model-version-id" type="java.lang.String"/>
     minOccurs="1" maxOccurs="unbounded<xml-element name="model-invariant-id" type="java.lang.String"/>
    <xs:<xml-element refname="tns:vpnrelationship-bindingslist" 
     minOccurstype="1" maxOccurs="unbounded"inventory.aai.onap.org.v14.RelationshipList"/>
   </xs:sequence>
 </xs:complexType>
</xs:element>

<xs:java-attributes>
</java-type>

<java-type name="WanPortConfigs">
 <xml-root-element name="ncewan-port-networksconfigs"/>
 <xs:complexType><java-attributes>
   <xs:sequence>
    <xs:<xml-element refname="tns:nce-network"
     minOccurs="0" maxOccurs="unboundedwan-port-config" container-type="java.lang.ArrayList"
   type="inventory.aai.onap.org.v14.WanPortConfig"/>
   </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
 /ncewan-port-networksconfigs/ncewan-port-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"
            },
            {
                "pnfconfig/{id}
Method: PUT
Request Body:
{
    "wan-port-config-id": "{id}",
    "wan-port-config-name": "a name 2",
    "device-id": "id value",
    "vlan-id": "vlan }value",
    "ip-address":    ]
    }"ip value",
    "pprovider-ip-interfacesaddress": {
"provider ip value",
      "pinput-interfacebandwidth": : ["bandwidth value",
    "output-bandwidth": "bandwidth value",
    "description": "a {description",
    "port-type": "type value",
    "port-number": "number value",
    "interfacetransport-network-name": "name 1value",
    "device-port-id": "id value",
    "wan-port-id": "id }value",
    "selflink": "some URL",
    "operational-status": "some {status",
    "model-customization-id":        "some customization",
    "interfacemodel-version-nameid": "namesome 2version",
    "model-invariant-id": "some invariant",
      }"relationship-list": {
        ]
"relationship" : [
  },
    "vpn-bindings": {
     {
   "vpn-binding" : [
            {"related-to": "service-instance",
                "vpnrelated-idlink": "vpnurl idof 1service-instance",
            },
      "relationship-data": [
     {
                "vpnrelationship-idkey": "vpn id 2"service-instance.service-instance-id",
            }
        ]
    }
}

AAI-1353-9

termination-point

Notes:

See Figure 4 above.

Update existing class of objects.

"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
<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>

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",
             "vpn-id"operational-status": "vpnsome id 1"
            }status",
            {
                "vpn"model-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",
}