Versions Compared

Key

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

...

https://wiki.onap.org/download/attachments/44467093/AAI_Schema_Service_ONAP.pptx

Glossary

DescriptionOXM terminologyXSD terminologyJava terminology

"schema element"

"java-type"

"class"

"java-type" XML tag"xs:element" XML tag as outer containerJava class

"attribute"

"java-attribute"

"xml-element" XML tag inside "java-attributes" XML tag

  • having a "type" relating to basic Java values, such as String, Integer, Boolean, etc.

"xs:element" XML tag as inner container

  • having "type" relating to basic values such as "xs:string", "xs:unsignedInt", "xs:boolean", etc.
Java field/member variable
"relationship"

"xml-element" XML tag inside "java-attributes" XML tag

  • having a "type" relating to another "java-type"

"xs:element" XML tag as inner container

  • having "ref" relating to another "xs:element" as outer container
  • having the value prefixed by "tns:"
Java field/member variable

"metadata"

"xml-property"

"xml-property" XML tag inside "xml-properties" XML tag"xs:annotation" XML tag containing "annox:annotate" metadataN/A. There are various hard-coded behaviours for each individual item of metadata.
"namespace"

special "java-type" that

that
  • is at the root of the object graph and root of the REST URL path
  • does not have any "attributes", only top-level "relationships"

"xs:element" XML tag as outer container

  • that never appears anywhere else as a "relationship" of another "xs:element"
N/A. There is special hard-coded behaviour for a specific set of "namespaces".
"top-level"

a "relationship" of a "namespace"


N/A. There is special hard-coded behaviour that prevents "top-level" classes from also being used as "sub-components".
"sub-component"

a "relationship" of a "java-type" that is not a "namespace"


N/A. There is special hard-coded behaviour that prevents "top-level" classes from also being used as "sub-components".
"EdgeRule"

a separate JSON configuration file that regulates the behaviour of the "relationship"


N/A. There is special hard-coded behaviours for each individual item of metadata.
"cousin edge"
  • a "relationship" via the "relationship-list" java-type
  • an "EdgeRule" with a specific configuration (the "java-type" does not "contain" the other "java-type")

N/A. There is special hard-coded behaviour that handles the "relationship-list" for "cousin edges".


Analysis from CCVPN Schema Changes in Casablanca Release

...


Schema Change DescriptionCCVPN ExampleOther Examples
1

Add new top-level "java-type

in existing namespace

"

  • Add "relationship" into "namespace
element
  • "
  • Define new
schema element
  • "java-type"

AAI-1353-1 ("Network" and "Business" namespaces)

AAI-1353-3 ("connectivity"

element

)

AAI-1353-5 ("sp-partner"

element

)

AAI-1353-7 ("lan-port-config"

element

)

AAI-1353-8 ("site-resource"

element

)

AAI-1353-10 ("network-resource"

element

)

AAI-1353-12 ("ext-aai-networks"

element

)

AAI-1353-13 ("sdwan-vpn"

element

)

AAI-1353-14 ("device"

element

)

AAI-1353-15 ("wan-port-config"

element

)


2Add new
properties
"attribute" to existing
schema element
"java-type"

AAI-1353-2 ("service-instance"

element

)

AAI-1353-4 ("vpn-binding"

element

)

AAI-1353-6 ("allotted-resource"

element

)

AAI-1353-9 ("complex"

element

)

AAI-1353-11 ("p-interface"

element

)

AAI-1353-16 ("pnf"

element)

)

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyAAI-1552


3

Add new sub-component

schema element in existing namespace

"java-type"

  • Add "relationship" into existing "java-type"
  • Define new "java-type"
  • Add new "EdgeRule"
  • Add or Update "dependentOn" metadata

AAI-1353-7b ("dhcp-service"

element)4Add new relationships to between existing schema elementstbc5Add new relationships between new schema element and existing schema elementtbc6Add new EdgeRules between existing schema elementstbc7Add new EdgeRules between new schema element and existing schema elementtbc8

)

"lan-port-config" to "dhcp-service"


4

Add new "cousin edge"

  • Add "relationship-list" into existing "java-type", unless already present
  • Add new "EdgeRule"

"vpn-binding" to "p-interface"

"sp-partner" to "service-instance"

"connectivity" to "service-instance"

"connectivity" to "vpn-binding"

"lan-port-config" to "service-instance"

"network-resource" to "vpn-binding"

"pnf" to "network-resource"

"site-resource" to "service-instance"

"site-resource" to "allotted-resource"

"site-resource" to "complex"

"sdwan-vpn" to "service-instance"

"sdwan-vpn" to "tenant"

"sdwan-vpn" to "vpn-binding"

"device" to "service-instance"

"device" to "generic-vnf"

"wan-port-config" to "service-instance"

"logical-link" to "ext-aai-network"

"vpn-binding" to "ext-aai-network"

"pnf" to "ext-aai-network"

"connectivity" to "ext-aai-network"

"lan-port-config" to "ext-aai-network"

"network-resource" to "ext-aai-network"

"site-resource" to "ext-aai-network"

"sdwan-vpn" to "ext-aai-network"

"device" to "ext-aai-network"

"wan-port-config" to "ext-aai-network"


5Change existing "EdgeRule", e.g. cardinality

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyAAI-1671


6Add new "namespace"
Add new namespace
AAI-1353-12 ("ext-aai"
element
), see workaround "ext-aai-networks"
9

7Add new sub-component relationship using existing top-level
schema elementtbc
"java-type"

AAI-1353-12 ("ext-aai"), see workaround "ext-aai-networks"

"logical-link" to "ext-aai-network"

"vpn-binding" to "ext-aai-network"

"pnf" to "ext-aai-network"

"connectivity" to "ext-aai-network"

"lan-port-config" to "ext-aai-network"

"network-resource" to "ext-aai-network"

"site-resource" to "ext-aai-network"

"sdwan-vpn" to "ext-aai-network"

"device" to "ext-aai-network"

"wan-port-config" to "ext-aai-network"


8
10
Add new top-level relationship using existing
sub-component schema element
sub-component "java-type"AAI-1353-12 ("ext-aai"), see workaround "ext-aai-networks"
9Expose previously hidden "java-type" as sub-component relationship

AAI-1353-12 ("esr-system-info")

"ext-aai-network" to "esr-system-info"

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyAAI-1555


10Add new metadata to existing "java-type"

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keyAAI-1635


"uriTemplate"

"privateEdge"

"defaultValue"

11Update existing metadata in "java-type"

"indexedProps"

"uniqueProps"

"dependentOn"

"defaultValue"

tbc